在 vim 中重新映射特殊字符

在 vim 中重新映射特殊字符

我对 vim 还很陌生,我不喜欢将基本移动按钮映射到hjkl,因为hj应该用同一根手指按下。我使用的是匈牙利键盘,它在l:的右侧还有 3 个字符éáű,所以我想利用这一点并重新映射这些键。但是,vim 似乎无法识别此命令: noremap é l。我该如何实现?

答案1

vim 页面nnoremap以两个“n”开头,而不是一个。

http://vim.wikia.com/wiki/Mapping_keys_in_Vim_-教程(第1部分)

我没有匈牙利语键盘,但使用俄语键盘映射,我设法

nnoremap э l

使 Э 向右移动 1 个字符。

编辑

Vim 是(著名的)模态编辑器 - 也就是说,它在不同模式下的行为不同,您可以在它们之间切换。

上述命令将键映射为“正常”模式,这似乎意味着“四处导航而不执行任何操作”

该表显示了各种模式可用的映射命令。

Commands                        Mode
--------                        ----
nmap, nnoremap, nunmap          Normal mode
imap, inoremap, iunmap          Insert and Replace mode
vmap, vnoremap, vunmap          Visual and Select mode
xmap, xnoremap, xunmap          Visual mode
smap, snoremap, sunmap          Select mode
cmap, cnoremap, cunmap          Command-line mode
omap, onoremap, ounmap          Operator pending mode

为了使类似的东西2dk工作,您需要进行“操作员待定模式”的映射:

onoremap э l

“命令行模式”并没有实现我想要的效果——这意味着当我尝试在下一个重新映射命令中输入 э 时,我得到的却是一个 l。

我认为您可能不想使用“插入和替换”模式进行重新映射。但您可能想尝试“可视”和“选择”模式之一或两者。

相关内容