Vim:按Enter键执行不需要的功能

时间:2014-08-09 16:51:55

标签: vim

我最近在我的vimrc添加了功能,以便在按下某些按键时输入模板文本。我的vimrc看起来像是:

set scrolloff=1000

filetype plugin indent on
set tabstop=4
set shiftwidth=4
set expandtab

autocmd BufNewFile,BufRead *.json set ft=javascript

function! Pyf()
    " template for new function in Python
    r~/vim/templates/py_function.py
endfunction
nmap <C-b> :call Pyf()<CR>

function! Pye()
    " template for new exception in Python
    r~/vim/templates/py_exception.py
endfunction
nmap <C-n> :call Pye()<CR>

set colorcolumn=80

自添加模板插入功能以来,每次尝试使用Vim编辑文件时,按Enter键,最后一个函数(Pye())将被执行并填入文本。如果没有vimrc更改,按Enter键只会将光标移动到下面的一行。我想坚持这种行为,同时只在指定的击键时保持模板文本插入。我怎么能这样做?

由于

1 个答案:

答案 0 :(得分:1)

您的vimrc中某处有<C-M>的映射。 <C-M><CR>(输入密钥)。这是vim处理输入的限制。