Linux入門-1.vim格式設置
在終端下使用vim進行編輯時,默認情況下,編輯的界面上是沒有顯示行號、語法高亮度顯示、智能縮進等功能的。爲了更好的在vim下進行工作,需要手動設置一個配置文件:.vimrc。
在啓動vim時,當前用戶根目錄下的.vimrc文件會被自動讀取,該文件可以包含一些設置甚至腳本,所以,一般情況下把.vimrc文件創建在當前用戶的根目錄下比較方便,即創建的命令爲:
$vi ~/.vimrc
設置完後
$:x 或者 $wq
進行保存退出即可。
下面給出一個例子,其中列出了經常用到的設置,詳細的設置信息請參照參考資料:
set backspace=indent,eol,start
這條命令告訴Vim在Insert模式下退格鍵何時可以刪除光標之前的字
符.選項中以逗號分隔的三項內容分別指定了Vim
縮進,斷行,以及開始進入Insert模式之前的位置.
“雙引號開始的行爲註釋行,下同
“去掉討厭的有關vi一致性模式,避免以前版本的一些bug和侷限
set nocompatible
“顯示行號
set nummber
“檢測文件的類型
filetype on
“記錄歷史的行數
set history=1000
“背景使用黑色
set background=dark
“語法高亮度顯示
syntax on
“下面兩行在進行編寫代碼時,在格式對起上很有用;
“第一行,vim使用自動對起,也就是把當前行的對起格式應用到下一行;
“第二行,依據上面的對起格式,智能的選擇對起方式,對於類似C語言編
“寫上很有用
set autoindent
set smartindent
“第一行設置tab鍵爲4個空格,第二行設置當行之間交錯時使用4個空格
set tabstop=4
set shiftwidth=4
“設置匹配模式,類似當輸入一個左括號時會匹配相應的那個右括號
set showmatch
“去除vim的GUI版本中的toolbar
set guioptions-=T
“當vim進行編輯時,如果命令錯誤,會發出一個響聲,該設置去掉響聲
set vb t_vb=
“在編輯過程中,在右下角顯示光標位置的狀態行
set ruler
“默認情況下,尋找匹配是高亮度顯示的,該設置關閉高亮顯示
set nohls
“查詢時非常方便,如要查找book單詞,當輸入到/b時,會自動找到第一
“個b開頭的單詞,當輸入到/bo時,會自動找到第一個bo開頭的單詞,依
“次類推,進行查找時,使用此設置會快速找到答案,當你找要匹配的單詞
“時,別忘記回車
set incsearch
“修改一個文件後,自動進行備份,備份的文件名爲原文件名加“~“後綴
if has(“vms”)
set nobackup
else
set backup
endif
如果去除註釋後,一個完整的.vimrc配置信息如下所示:
set nocompatible
set backspace=indent,eol,start
set nummber
filetype on
set history=1000
set background=dark
syntax on
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
if has(“vms”)
set nobackup
else
set backup
endif
補充:
"映射F8爲顯示列表,需要taglist插件
nnoremap <silent> <F8> :Tlist<CR>
"配色文件
colorscheme inkpot
"對python文件進行特殊設置
if has("autocmd")
filetyp plugin indent on
autocmd FileType python setlocal et | setlocal sta | setlocal sw=4
autocmd FileType python compiler pyunit
autocmd FileType python setlocal makeprg=python\ %
endif
"設定文件編碼類型,徹底解決中文編碼問題
let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936
在 Vim 中實現括號自動補全
相信經常寫程序的人,時常會有漏寫一半括號的情況發生。下面的設置可以自動補全括號。
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {<CR>}<ESC>O
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "/<Right>"
else
return a:char
endif
endfunction
在啓動vim時,當前用戶根目錄下的.vimrc文件會被自動讀取,該文件可以包含一些設置甚至腳本,所以,一般情況下把.vimrc文件創建在當前用戶的根目錄下比較方便,即創建的命令爲:
$vi ~/.vimrc
設置完後
$:x 或者 $wq
進行保存退出即可。
下面給出一個例子,其中列出了經常用到的設置,詳細的設置信息請參照參考資料:
set backspace=indent,eol,start
這條命令告訴Vim在Insert模式下退格鍵何時可以刪除光標之前的字
符.選項中以逗號分隔的三項內容分別指定了Vim
縮進,斷行,以及開始進入Insert模式之前的位置.
“雙引號開始的行爲註釋行,下同
“去掉討厭的有關vi一致性模式,避免以前版本的一些bug和侷限
set nocompatible
“顯示行號
set nummber
“檢測文件的類型
filetype on
“記錄歷史的行數
set history=1000
“背景使用黑色
set background=dark
“語法高亮度顯示
syntax on
“下面兩行在進行編寫代碼時,在格式對起上很有用;
“第一行,vim使用自動對起,也就是把當前行的對起格式應用到下一行;
“第二行,依據上面的對起格式,智能的選擇對起方式,對於類似C語言編
“寫上很有用
set autoindent
set smartindent
“第一行設置tab鍵爲4個空格,第二行設置當行之間交錯時使用4個空格
set tabstop=4
set shiftwidth=4
“設置匹配模式,類似當輸入一個左括號時會匹配相應的那個右括號
set showmatch
“去除vim的GUI版本中的toolbar
set guioptions-=T
“當vim進行編輯時,如果命令錯誤,會發出一個響聲,該設置去掉響聲
set vb t_vb=
“在編輯過程中,在右下角顯示光標位置的狀態行
set ruler
“默認情況下,尋找匹配是高亮度顯示的,該設置關閉高亮顯示
set nohls
“查詢時非常方便,如要查找book單詞,當輸入到/b時,會自動找到第一
“個b開頭的單詞,當輸入到/bo時,會自動找到第一個bo開頭的單詞,依
“次類推,進行查找時,使用此設置會快速找到答案,當你找要匹配的單詞
“時,別忘記回車
set incsearch
“修改一個文件後,自動進行備份,備份的文件名爲原文件名加“~“後綴
if has(“vms”)
set nobackup
else
set backup
endif
如果去除註釋後,一個完整的.vimrc配置信息如下所示:
set nocompatible
set backspace=indent,eol,start
set nummber
filetype on
set history=1000
set background=dark
syntax on
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
if has(“vms”)
set nobackup
else
set backup
endif
補充:
"映射F8爲顯示列表,需要taglist插件
nnoremap <silent> <F8> :Tlist<CR>
"配色文件
colorscheme inkpot
"對python文件進行特殊設置
if has("autocmd")
filetyp plugin indent on
autocmd FileType python setlocal et | setlocal sta | setlocal sw=4
autocmd FileType python compiler pyunit
autocmd FileType python setlocal makeprg=python\ %
endif
"設定文件編碼類型,徹底解決中文編碼問題
let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936
在 Vim 中實現括號自動補全
相信經常寫程序的人,時常會有漏寫一半括號的情況發生。下面的設置可以自動補全括號。
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {<CR>}<ESC>O
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "/<Right>"
else
return a:char
endif
endfunction
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.