16

我不知道如何在 Sublime Text 2 中使用大写字母作为单词分隔符。

我想要的是以下行为:在我喜欢的某些 C++ IDE 中,当光标位于 thisIsAComposedWord 之类的单词中时使用 ctrl+left/right 会将光标移动到单词中的下一个大写字母(或单词的开头/结尾) .

Sublime 文本中有一些称为“单词分隔符”的东西似乎可以做到这一点,它在默认首选项文件中以他的方式出现:

// Characters that are considered to separate words
"word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?",

那么我可以在该列表中插入大写字母吗?谢谢。

4

2 回答 2

30

您可以使用以下键绑定通过“子词”移动:

{ "keys": ["alt+left"], "command": "move", "args": {"by": "subwords", "forward": false} },
{ "keys": ["alt+right"], "command": "move", "args": {"by": "subword_ends", "forward": true} },

这可以识别 camelCase 和 under_score。

您还可以通过 Word 移动

{ "keys": ["ctrl+left"], "command": "move", "args": {"by": "words", "forward": false} },
{ "keys": ["ctrl+right"], "command": "move", "args": {"by": "word_ends", "forward": true} }

这可以识别设置文件中指定的“单词分隔符”。

于 2013-08-23T05:22:30.670 回答
1

我在 Linux(Ubuntu)中使用 Sublime Text,这对我有用:

默认情况下,在您的 Settings-User 中添加“单词分隔符”的相同内容(即您提出的问题)。然后,在字符串中添加大写字母 [AZ] 的正则表达式。结果是:

{
   "word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?[A-Z]"
}

为了移动到 Word 中的下一个大写字母,我使用 Alt + 左/右箭头。

编辑:

正则表达式不起作用。答案无效。

于 2013-04-09T15:42:53.067 回答