Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
插入模式下的Vim键映射_Vim - Fatal编程技术网

插入模式下的Vim键映射

插入模式下的Vim键映射,vim,Vim,我已经编辑了.vimrc文件并映射了一些命令。它们仅在正常模式下工作。有没有办法在插入模式下映射命令?(例如,与特殊键(如Ctrl)相关的命令)例如,我可以使用Ctrl+c在插入模式下复制吗?请参见:help imap。可以将键(包括带有控件的键)映射到插入模式中的各种对象。例如,如果要在插入模式下使用Ctrl+c复制当前单词,可以使用 inoremap <C-c> <esc>yiwea inoremap yiwea 命令:map中的第一个字母确定它们应用于哪些模式(:

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

请参见
:help imap
。可以将键(包括带有控件的键)映射到插入模式中的各种对象。例如,如果要在插入模式下使用Ctrl+c复制当前单词,可以使用

inoremap <C-c> <esc>yiwea
inoremap yiwea

命令
:map
中的第一个字母确定它们应用于哪些模式(
:h map modes
)。因此
:nnoremap
用于
n
正常模式,而
:inoremap
用于插入模式

你通常不能只使用同一个右手边;你需要考虑你处于不同的模式。要从插入模式调用(正常模式)命令,请执行以下操作:

  • 如果要在映射后保持在正常模式,请预先结束
  • 如果要在映射后以插入模式继续,请预先结束
    ;此命令仅为一个命令切换到正常模式
例如,要将
:w
映射到
,您可以使用以下命令:
:nnoremap:w
。相应的插入模式映射(保持不变)为:


:inoremap:w您想在插入模式下使用Ctrl+c复制什么?例如,示例
inoremap jk
是:当您处于插入模式时,一旦按下
j
k
,vim就会为您执行
:inoremap <C-s> <C-o>:w<CR