我试图重新映射VIM中的*运算符。我试过nnoremap <*>
和nnoremap <S-8>
无济于事。我一直无法找到关于如何正确执行此操作的任何说明。我如何重新映射我的*,或任何数字键/数字键特殊字符?如何重新映射VIM中的数字键和数字键特殊字符
因为你们中的许多人无疑会想知道为什么有人想要这样做,所以我可以让我的*操作符像正常一样行为,除非不自动前进到光标下的单词的下一个出现处(请参见部分Highlight Matches Without Moving )。
编辑:
完整的命令我工作是这样的:
nnoremap <*> :let @/='\<<C-R>=expand("<cword>")<CR>\>'<CR>:set hls<CR>
凡*
重新映射的*
或<shift + 8>
就是这样!谢谢 – 2013-04-24 18:28:46
@Freedom_Ben查看':h key-notation'。在那里没有列出的所有东西都需要在不包围'<…>'的情况下使用。还要注意,vim使用字节队列来表示键入的键,并且永远不会收到像'Shift' +'8'这样的东西:从来没有使用过修饰符的东西。 ''键是ASCII表中的一个字节控制字符,位于0x01和0x1F之间,''是' ...',而''是内部转义序列,以0x80字节开始(在终端中,它们首先被接收为类似' [11〜',但后来改变了)。 ''另外是'A'。你可以直接使用它。 –
ZyX
2013-04-25 04:25:09
@ZyX,感谢您的真棒解释!这大大澄清了事情。如果您想将其作为附加答案发布,我会将其投票。我认为这对将来访问这个问题的人来说也是非常有帮助的。 – 2013-04-25 16:04:11