在vim中,字符串与" - "分开。会被视为多个单词,所以如果我将一个变量命名为'这是一个非常长变量的名称',那么vim会将该变量名称视为两个单词,因此我可以轻松找到到"变量"的开始或结束和"名称"。
但是,在大多数编程语言中,我不允许这样命名变量,唯一支持和喜欢该名称样式的编程语言是Lisp。在大多数其他编程语言中,我必须使用" _"代替。
所以,如果我有一个名为" this_is_a_very_long_variable_name"的变量,有什么方法可以通过按" w / b / e"来移动该变量名。用词而不是按'" h / l"按字符移动?
答案 0 :(得分:4)
您可以使用iskeyword
:set iskeyword-=_
答案 1 :(得分:3)
如果仅用于导航,我的camelcasemotion plugin会提供替代的,w
/ ,b
/ ,e
动作(以及相应的文字对象),但只留下Vim的单词定义;即你仍然可以通过variable_name
更改整个iw
。或者,您也可以使用插件中的内置动作覆盖Vim的内置动作。
更改'iskeyword'
(由@Rob建议)可能会影响语法突出显示和其他插件,因此这将是一个不那么具有侵入性的解决方案。