插入模式下的Vim键映射

时间:2014-01-24 04:50:40

标签: vim

我编辑了.vimrc文件并映射了一些命令。它们仅在正常模式下工作。有没有办法在插入模式下映射命令? (例如,与Ctrl等特殊键相关的命令)例如,我可以使用Ctrl + c复制插入模式吗?

2 个答案:

答案 0 :(得分:4)

:map命令中的第一个字母决定了它们适用的模式(:h map-modes)。因此,:nnoremap适用于n正式模式,:inoremap适用于插入模式。

你通常不能只使用相同的右侧;你需要考虑到你处于不同的模式。从插入模式调用(普通模式)命令:

  • 如果您希望在映射后保持正常模式,则前缀<Esc>
  • 如果要在映射后继续处于插入模式,则前置<C-o>;此命令切换到一个命令的正常模式

例如,要将:w映射到<C-s>,您可以使用::nnoremap <C-s> :w<CR>。相应的插入模式映射(停留在那里)是:

:inoremap <C-s> <C-o>:w<CR

答案 1 :(得分:2)

请参阅:help imap。您可以将键(包括带控件的键)映射到插入模式下的各种内容。例如,如果您想使用Ctrl + c在插入模式下复制当前单词,则可以使用

inoremap <C-c> <esc>yiwea