Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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:按enter键执行不需要的功能_Vim - Fatal编程技术网

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

Vim:按enter键执行不需要的功能,vim,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 Py

我最近在我的
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
set scrolloff=1000
文件类型插件缩进
设置tabstop=4
设置shiftwidth=4
设置扩展选项卡
autocmd BufNewFile,BufRead*.json set ft=javascript
功能!Pyf()
“Python中新函数的模板
r~/vim/templates/py_function.py
端功能
nmap:调用Pyf()
函数!Pye()
“Python中新异常的模板
r~/vim/templates/py_exception.py
端功能
nmap:callpye()
设置colorcolumn=80
自从添加了用于插入模板的函数之后,每当我尝试使用
Vim
编辑文件并按enter键时,最后一个函数(Pye())就会执行并填充文本。如果没有vimrc更改,按enter键只会将光标移动到下面的一行。我希望坚持这种行为,同时仅在进行指定的击键时保持模板文本插入。我该怎么做


谢谢

您在vimrc中的某个地方有一个映射到
<代码>是
(回车键)。这是vim处理输入的一个限制。

nmap
更改为
noremap
什么是
:verbose map
@FDinoff的输出,它说::::::call Pye()上次设置自~/。vimrc@SandeepY您可能需要使用合适的模板插件。还需要注意的是,还有其他控制键组合可能会进行奇怪的交互。例如,
是tab,而
是escape。我尝试搜索了许多,但无法满足于今天得到积极支持的搜索。例如,我理想的模板插件可以使用函数名、参数名作为输入并生成函数的模板。有什么建议吗?