如何在vim中编辑现有映射?我使用标准映射命令之一在.vim文件中设置了映射:
map ^A o]]></code>^M<GRD minus="" summary="">^M^M<p></p>^M^M</GRD>^M^M<code><![CDATA[0kkkkkk5ehi
我想编辑此长命令以使用“ matlab”代替代码,例如:
map ^A o]]></matlab>^M<GRD minus="" summary="">^M^M<p></p>^M^M</GRD>^M^M<matlab><![CDATA[0kkkkkk5ehi
但是,我不想编辑.vim文件-我将再次使用原始映射。我只想更改当前会话的映射。我尝试了:map ^ A,但这仅显示当前映射,并且无法复制显示的文本。
PS请注意,使用Ctrl-Q Ctrl-M等插入^ M和^ A字符。
仅调整当前会话的映射是不寻常的;也许这就是为什么它的支持不佳的原因。我猜想您实际上并不关心会话,而是Matlab文件类型。为此,它提供了出色的支持。如果将'filetype'
侦测为matlab
,则可以在中放置一个局部缓冲区映射变体~/.vim/after/ftplugin/matlab.vim
:
map <buffer> ^A ...
如果您愿意坚持最初的计划,我会这样做:
:split ~/.vimrc
yy
:@"
:bdelete!
对于更通用的解决方案,您还可以通过捕获原始:map ^A
命令的输出:redir
,然后将:put
其捕获到:new
暂存缓冲区中,最后捕获:source
。这是更多的手动步骤和键入,但是可以通过自定义命令自动执行。值得一提的是,如果您经常需要这样做。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句