我正在学习vim,并缓慢但肯定地适应我的vimrc。
我正在用 "jlim "移动,并用k.进入插入模式,我想做的是将动作与文本对象结合起来,但当我想改变内词(对我来说应该是c k w)时,我去一行而不是改变内词。
但是,当我想改变内部单词(应该是c k w)时,我去了一行而不是改变内部单词。我检查了:index和:c和:iw,但我不明白如何将我的动作映射到内部词?
vimrc:
`" set move keys in vim
map m <down>
map i <up>
map j <left>
map l <right>
`
问候
解决"{动作}{文本对象}"而k是插入。
" set move keys in vim
nnoremap m <down>
nnoremap i <up>
nnoremap j <left>
nnoremap l <right>
" n for normal mode and noremap to not make k map to up
nnoremap k i
如果我理解正确的话,你要找的是 :h onoremap
如果你想让CKW做CiW,你就需要
:onoremap kw viw
这将是所有类型的支架所必需的(对于i内和周围的运动()。ciw
和 caw
)). 我不建议这样做。只要坚持使用默认值即可。
如果你只想改变所有的东西,那就是...。i
对 k
(我建议不要这样做,它们是有原因的),你可以只用 map
它。
话说回来,屼。map
是矫枉过正。你会更好地与 noremap
其中 不会递归地改变你的映射。. 你也最好指定你想要这些映射使用的模式。如果你必须改变移动键(我也不建议这样做),我建议使用
nnoremap m <down>
nnoremap j <left>
nnoremap l <right>
nnoremap i <up>
然后你可以改变你想要的东西 k
苟且 nnoremap
:
"n for normal mode, noremap for not making your k map to <up>
nnoremap k i