Vim 虽然操作起来很畅快,对于一个中文开发人员来说,Vim 的默认配置常常出现乱码。
其次是缩进问题,如何让不同系统平台看到的代码排版格式都一样式。
在参与开源项目时,有许多通用的代码规范,值得设为默认。
淡淡烟草味2017-05-16 16:45:13
我一般把tab设为4个空格,然后换行用unix标准形式的<LF>。至于乱码问题,我用这段代码解决
if has("multi_byte") set encoding=utf-8 " English messages only "language messages zh_CN.utf-8 if has('win32') language english let &termencoding=&encoding endif set fencs=utf-8,gbk,chinese,latin1 set formatoptions+=mM set nobomb " 不使用 Unicode 签名 if v:lang =~? '^\(zh\)\|\(ja\)\|\(ko\)' set ambiwidth=double endif else echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte" endif
漂亮男人2017-05-16 16:45:13
中文乱码问题设置下当前编码方式(enc)和文件编码(fenc)就好了
set encoding=utf-8 "如果是 gbk 的时候用 cp936 set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
缩进的问题在于各人对 tab 的显示设置吧...
最靠谱的方式大概是设置成空格而不要用制表符了
set expandtab set softtabstop=4 "建议在 python 的 template 里改为2
这样会略微增加一些文件体积, 然后删除缩进时要用 shift+backspace, 单按 bs 键只能删一个空格的唷亲~
大家讲道理2017-05-16 16:45:13
@yanyaoer 的编码设置已经很适用了,补充一点 tab 和空格
set tabstop=4 "ts 每个 tab 显示出 4个空格的宽度 set shiftwidth=4 "sw 每次缩进的空格数 set expandtab "et 每个 tab 自动扩展成空格 set softtabstop=4 "sts 每次按 backspace 退格 4个空格
ts/sw/... 是缩写
再贴一段配置,just make things better
set scrolloff=3 set showmode set showcmd set hidden set wildmenu set wildmode=list:longest set cursorline set ttyfast set ruler set backspace=indent,eol,start set laststatus=2 set nu "set relativenumber "vim7.3适用 set undofile