VIM 对 'inner-word' 的定义会根据上下文改变吗?
Does VIM definition of 'inner-word' change based upon context?
我想弄清楚为什么使用相同的键模式 viw
似乎在不同的上下文中表现不同
我有两个缓冲区,其中光标是 [ ]
在一个 javascript 文件中:
import {[f]oo, bang} from './utilities'
视觉选择:foo
其他,:help
"inner word", select [count] words (see |word|).
White space between words is counted too.
When used in Visual linewise mode "iw" switches to
Visual characterwise [m]ode.
视觉选择:模式。
我很困惑为什么在第一个内词中排除了标点字符逗号 ,
第二个包括标点符号 .
造成这种不一致的原因是什么?
是(从技术上讲,定义不会改变,因为它是每个定义变量)。 Vim 是(如果配置为)文件类型敏感。参见 :h filetype
。
所以每个设置在不同的文件类型中都可以不同。
您要找的是iskeyword
。这控制哪些字符是单词边界。 :h iskeyword
状态:
For a help file it is set to all non-blank printable characters except '*', '"' and '|' (so that CTRL-] on a command finds the help for that command).
所以.
属于这个词,像a-z
我想弄清楚为什么使用相同的键模式 viw
似乎在不同的上下文中表现不同
我有两个缓冲区,其中光标是 [ ]
在一个 javascript 文件中:
import {[f]oo, bang} from './utilities'
视觉选择:foo
其他,:help
"inner word", select [count] words (see |word|).
White space between words is counted too.
When used in Visual linewise mode "iw" switches to
Visual characterwise [m]ode.
视觉选择:模式。
我很困惑为什么在第一个内词中排除了标点字符逗号 , 第二个包括标点符号 .
造成这种不一致的原因是什么?
是(从技术上讲,定义不会改变,因为它是每个定义变量)。 Vim 是(如果配置为)文件类型敏感。参见 :h filetype
。
所以每个设置在不同的文件类型中都可以不同。
您要找的是iskeyword
。这控制哪些字符是单词边界。 :h iskeyword
状态:
For a help file it is set to all non-blank printable characters except '*', '"' and '|' (so that CTRL-] on a command finds the help for that command).
所以.
属于这个词,像a-z