[英]How to map normal mode to modifier key on keyboard in vim (say Alt)?
[英]How can I map these five keyboard actions to a single key in Vim?
我想映射一个键,以便它将在Vim中执行以下操作。 假设我正在编辑文件; 我希望进行设置,以便如果按F2键,我将完成与执行以下操作相同的操作:
:
) w
型 i
返回到插入模式 这可能吗?
是的,这是可能的,但是如果光标在行尾,它就不会执行您想要的操作。
要以插入方式将文件保存在F2上,请使用以下映射:
:imap <F2> <C-O>:w<CR>
字面回答:是的。 您可以使用此:
:inoremap <F2> <Esc>:w<CR>I
但是它并不能完全满足您的要求(光标将放置在错误的位置)。
安东击败了我,我的回答不那么真实(但正确)。
最好的答案是: 不要误用Vim。 您永远不要在插入模式下花费太多时间,而需要一个捷径来退出它,保存文件然后重新进入。对于所有其他编辑器,您始终一直处于“插入模式”,并且仅临时弹出菜单或对话框等; 在Vim中,您应该学会扭转这种情况。 仅进入插入模式才能编辑或添加内容; 在插入模式下,切勿使用箭头键移动光标; 在命令(正常)模式下花费大部分时间后,对新范例进行了一些调整之后,您会发现编辑速度有所提高。
编写映射几乎比您的描述容易。
首先,您需要确定将从哪种模式使用映射,因为这确定了您将使用哪种:map
变体。 您可能需要在插入模式下使用它,因此将使用:inoremap
。
映射的格式为:
:..noremap {keys} {rhs}
您需要<F2>
(请参阅:help key-notation
)作为keys
。 对于{rhs}
,只需串联描述中列出的密钥。
要保留映射,请将其添加到~/.vimrc
。 (请参见:help vimrc
。)
PS 安东·科瓦连科(Anton Kovalenko ) 给出的替代方法可能会更适合您要尝试执行的操作,但是在这里,我为您提供了将来按键映射的一般方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.