Vim 雖然操作起來很暢快,對於一個中文開發人員來說,Vim 的預設配置常常出現亂碼。
其次是縮排問題,如何讓不同系統平台看到的程式碼排版格式都一樣式。
在參與開源專案時,有許多通用的程式碼規範,值得設為預設。
淡淡烟草味2017-05-16 16:45:13
我通常把tab設為4個空格,然後換行用unix標準形式的
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