在编程/编写时,我大量使用逐字命令,例如“按一个单词向左/右移动”,“按Ctrl
删除下一个/最后一个单词” (+ left
,backspace
...)。
我遇到的问题是,当我正在编辑的文本包含不会被识别为单词的符号时,因此ctrl + right
会跳过一系列符号和一个常规字。这一点。
理想情况下,我希望能够将单词操作的分隔符设置为空格,制表符,换行符以及开始和结束括号 - 也可以是算术运算符(类似于Eclipse处理它的方式)。
我正在使用Linux。您是否知道如何更改我的系统范围或xterm和(g)vim单独设置以实现此目的?
答案 0 :(得分:3)
最有可能的是,系统范围内无效。 VIM很简单,您可以使用 iskeyword 设置来设置定义标识符的字符。在你的情况下,它有太多,你需要删除你需要的那些,或通过添加你想要的那些重新定义它。例如:
:set isk=9,32,50-51这会将关键字检测设置为空格,制表符和括号。
但是,在VIM中,您可以根据单词和WORD跳转,其中第一个是由上面的 iskeyword 设置定义的,而后者将跳过所有非空白字符。也许,这就是你想要的动作。您可以在帮助中阅读更多相关信息(:help w )。
答案 1 :(得分:3)
为什么不使用Vim的普通模式字动作命令,而不是按住控制键并按下左/右光标键?
w
/ W
- 转到下一个单词/ WORD的开头e
/ E
- 移到下一个单词/ WORD的结尾b
/ B
- 移至上一个单词/ WORD的开头ge
/ gE
- 移到上一个单词/ WORD的结尾您可以通过运行:help word
来了解字和 WORD 之间的区别。