【发布时间】:2012-03-21 09:37:06
【问题描述】:
据我了解,w 通过将文本分成 3 组来识别单词边界:
1) 在iskeyword 设置中指定的字符(字母、数字和下划线)
2) 其他不可打印的字符(符号)
3) 空白字符
每次按 w 时,它都会转到下一个组 1 或组 2。我想对其进行自定义,使其仅转到下一个组 1,跳过“符号词”。
几乎可行的是:
nnoremap w /\k\+<CR>
它使用iskeyword 字符类\k。但它很丑,因为它模拟了我执行搜索,这改变了我的突出显示,弄乱了我的搜索历史,谁知道还有什么。有没有办法像w 命令一样“干净”地完成这项工作?
【问题讨论】:
-
我不太符合您的要求。
W有帮助吗?它有两组字符:空白和非空白,所以它总是在下一个空白之后的第一个字符。 -
不,它不太有效:
W将符号字符与字母字符混为一谈。我想要的是有效地将符号与空格合并,以便在创建单词边界的同时跳过符号。
标签: search vim word motion boundary