VIM在回车中添加一个字符到换行符
我环顾四周,但还没有找到答案。 我的CentOS 6.2服务器与我的CentOS 5.8服务器运行时具有相同的.vimrc,但是当我在6.2服务器上打入VIM时,它添加了上一行的第一个字符,如果它是某个字符(%或#是我见过的)。 这就是VIM中发生的情况(点击Enter键后秒数线是正确的,但不输入任何其他内容):
# <enter>
#
% <enter>
%
这是我的.vimrc:
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set number
imap jj <Esc> " Professor VIM says '87% of users prefer jj over esc', jj abrams disagrees
" Indenting *******************************************************************
set ai " Automatically set the indent of a new line (local to buffer)
set si " smartindent (local to buffer)
" Cursor highlights ***********************************************************
"set cursorline
"set cursorcolumn
" Set an orange cursor in insert mode, and a red cursor otherwise.
" Works at least for xterm and rxvt terminals.
" Does not work for gnome terminal, konsole, xfce4-terminal.
"if &term =~ "xterm|rxvt"
" :silent !echo -ne " 33]12;red 07"
" let &t_SI = " 33]12;orange 07"
" let &t_EI = " 33]12;red 07"
" autocmd VimLeave * :!echo -ne " 33]12;red 07"
"endif
" Searching *******************************************************************
set hlsearch " highlight search
set incsearch " Incremental search, search as you type
set ignorecase " Ignore case when searching
set smartcase " Ignore case when searching lowercase
" Colors **********************************************************************
"set t_Co=256 " 256 colors
set background=dark
syntax on " syntax highlighting
"colorscheme darkzen
对它和我的5.8服务器(我没有这个问题)之间的差异进行了比较,没有任何区别。 任何想法为什么这可能会发生?
它看起来像自动注释插入。
看看:help formatoptions和:set formatoptions。 这些可能是由文件类型设置的。
运行verbose set formatoptions
。 你应该得到一个包含'r'的字符串,它Automatically inserts the current comment leader after hitting <Enter> in Insert mode
。 verbose
位应该指向你的文件(可能是一个文件类型插件)是谁的罪魁祸首。
我防止vim通过我的vimrc中的autocommand au FileType * set formatoptions=lq
劫持我的formatoptions。 大部分选项让我非常疯狂,尽管r
和o
是最糟糕的。