如何在vim中编辑现有的密钥映射?
如何在vim中编辑现有映射?我使用标准映射命令之一在.vim文件中设置映射:如何在vim中编辑现有的密钥映射?,vim,keymapping,keymaps,Vim,Keymapping,Keymaps,如何在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 min
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
map^ao]>^M^M^M^M^M^M^M^M
但是,我不想编辑.vim文件——我将再次使用原始映射。我只想更改当前会话的映射。我尝试了:map^A,但这仅显示当前映射,无法复制显示的文本
注意,^M和^A字符是用Ctrl-Q Ctrl-M等键插入的。要仅为当前会话设置映射,请执行以下操作
:map ^A o]]></matlab>^M<GRD minus="" summary="">^M^M<p></p>^M^M</GRD>^M^M<matlab><![CDATA[0kkkkkk5ehi
:map^A o]>^M^M^M^M^M^M^M仅为当前会话调整映射是不寻常的;也许这就是为什么它的支持率很低。我猜您实际上并不关心会话,而是关心Matlab文件类型。在这方面,有很好的支持。如果检测到'filetype'
为matlab
,则可以在~/.vim/after/ftplugin/matlab.vim
中放置缓冲区本地映射变量:
map <buffer> ^A ...
映射^A。。。
直接编辑
如果你想坚持你原来的计划,我会这样做:
打开配置::split~/.vimrc
就地编辑映射
猛拉线:yy
执行以激活当前会话::@“
中止编辑而不保存::b删除!
可供替代的
对于更通用的解决方案,您还可以通过:redir
捕获原始:map^a
命令的输出,然后:将其放入:新的暂存缓冲区,最后是:source
。这更多是手动步骤和键入,但可以通过自定义命令实现自动化。如果需要,这是值得的通常。谢谢!我最后使用:redir@t
保存到寄存器(t)而不是文件。然后,在运行命令后,我执行了:redir END
,然后使用“tp
从寄存器粘贴。这获得了我要查找的文本,我成功地从中重新创建了编辑过的映射。这是:redir@t:map^A:redir END“tp以获取用于映射^A字符的文本。抱歉,这没有回答我的问题。我正在尝试获取现有映射的文本;我已经知道如何执行此命令。