我已经习惯在Vim中使用https://www.vim.org/scripts/script.php?script_id=2703来替换文本对象,现在我正在在IdeaVim中重新创建某些功能。
我正在vimrc
中使用这些映射:
nmap Ö <Plug>ReplaceWithRegisterOperator$
nmap öö <Plug>ReplaceWithRegisterLine
xmap ö <Plug>ReplaceWithRegisterVisual
nmap ö <Plug>ReplaceWithRegisterOperator
前三行很容易在我的.ideavimrc
中重新创建,像这样:
nnoremap Ö "_Dp
nnoremap öö "_ddP
vnoremap ö "_dP
但这真的是使ö
在正常模式下与每个文本对象一起工作的最佳方法吗?
nnoremap öiw "_diwP
nnoremap öaw "_dawP
nnoremap öIw "_dIwP
nnoremap öAw "_dAwP
nnoremap öis "_disP
nnoremap öas "_dasP
nnoremap öip "_dipP
nnoremap öap "_dapP
nnoremap öib "_dibP
nnoremap öab "_dabP
nnoremap öiB "_diBP
nnoremap öaB "_daBP
nnoremap öi( "_di(P
nnoremap öi) "_di)P
nnoremap öa( "_da(P
nnoremap öa) "_da)P
nnoremap öi[ "_di[P
nnoremap öi] "_di]P
nnoremap öa[ "_da[P
nnoremap öa] "_da]P
nnoremap öi{ "_di{P
nnoremap öi} "_di}P
nnoremap öa{ "_da{P
nnoremap öa} "_da}P
nnoremap öi< "_di<P
nnoremap öi> "_di>P
nnoremap öa< "_da<P
nnoremap öa> "_da>P
nnoremap öi" "_di"P
nnoremap öa" "_da"P
nnoremap öi' "_di'P
nnoremap öa' "_da'P
nnoremap öi` "_di`P
nnoremap öa` "_da`P
nnoremap öit "_ditP
nnoremap öat "_datP
这些映射确实有效,但是我想知道是否会有更干净,更简单的方法来实现这一目标?