1. 程式人生 > >vim的簡單使用及配置

vim的簡單使用及配置

Linux vim 命令

vim、gedit是Linux的常用編輯器,今天我們就來講一講vim。

註:vim 是vi的升級版本,它不僅兼容vi的所有指令,而且還有一些新的特性在裏面。故有些時候vim、vi會被混用,有時為了簡便也一般用vi。

基本上vim可以分為三種狀態,分別是命令模式、插入模式和底行模式。

1) 命令行模式控制屏幕光標的移動,字符、字或行的刪除,移動復制某區段及進入插入模式下,或者到底行模式等。

2) 插入模式只有在插入模式下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。

3) 底行模式將文件保存或退出vim,也可以設置編輯環境,如尋找字符串、列出行號……等。不過一般我們在使用時把vim簡化成兩個模式,就是將底行模式也算入命令行模式。

vim 文件名 用於編輯一個文件或新建一個文件並編輯。如:vim abytec 新建abytec文件並編輯-
技術分享圖片

剛進入vim時默認為命令模式,可以看左下角顯示了文件名-
技術分享圖片

按"i"進入插入模式,可以看到左下角有顯示"--插入--"-
技術分享圖片

現在就可以開始編輯了,編輯完成後,按【esc】退出插入模式,進入命令模式,在命令下可以使用各種命令對文本進行操作,詳情請回復"vim命令"。
技術分享圖片

可以看到左下角的"--插入--"已經沒了,輸入英文字符冒號":"進入底行模式-
技術分享圖片

x 為保存並退出;q 為退出;q! 為強制退出;w 為寫入;wq 為寫入並退出;等

ls 查看當前目錄-
技術分享圖片

可以看到多了abytec文件。接下來再來講一講vim的配置,一般vim的系統配置文件為/etc/vim下的vimrc,不過一般不需改系統文件,而在/home/abytec(即你的用戶名)下新建一個.vimrc文件。註:前面有一個點-
技術分享圖片
技術分享圖片

我們添加一個顯示行號的配置:set number 註:引號為單行註釋符。再查看可以看到前面已經顯示了行號-
技術分享圖片

其他更多的配置:

"set nocompatible 關閉 vi 兼容模式
"syntax on 自動語法高亮
"colorscheme molokai 設定配色方案
"set number 顯示行號

"set cursorline 突出顯示當前行
"set ruler 打開狀態欄標尺
"set shiftwidth=4 設定 << 和 >> 命令移動時的寬度為 4
"set softtabstop=4 使得按退格鍵時可以一次刪掉 4 個空格
"set tabstop=4 設定 tab 長度為 4
"set nobackup 覆蓋文件時不備份
"set autochdir 自動切換當前目錄為當前文件所在的目錄
"filetype plugin indent on 開啟插件
"set backupcopy=yes 設置備份時的行為為覆蓋
"set ignorecase smartcase 搜索時忽略大小寫,但在有一個或以上大寫字母時仍保持對大小寫敏感
"set nowrapscan 禁止在搜索到文件兩端時重新搜索
"set incsearch 輸入搜索內容時就顯示搜索結果
"set hlsearch 搜索時高亮顯示被找到的文本
"set noerrorbells 關閉錯誤信息響鈴
"set novisualbell 關閉使用可視響鈴代替呼叫
"set t_vb= 置空錯誤鈴聲的終端代碼
"set showmatch 插入括號時,短暫地跳轉到匹配的對應括號
"set matchtime=2 短暫跳轉到匹配括號的時間
"set magic 設置魔術
"set hidden 允許在有未保存的修改時切換緩沖區,此時的修改由 vim 負責保存
"set guioptions-=T 隱藏工具欄
"set guioptions-=m 隱藏菜單欄
"set smartindent 開啟新行時使用智能自動縮進
"set backspace=indent,eol,start 不設定在插入狀態無法用退格鍵和 Delete 鍵刪除回車符
"set cmdheight=1 設定命令行的行數為 1
"set laststatus=2 顯示狀態欄 (默認值為 1, 無法顯示狀態欄)
"set statusline=\ %<%F[%1%M%%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 設置在狀態行顯示的信息
"set foldenable 開始折疊
"set foldmethod=syntax 設置語法折疊
"set foldcolumn=0 設置折疊區域的寬度
"setlocal foldlevel=1 設置折疊層數為
"set foldclose=all 設置為自動關閉折疊
"nnoremap <space> @=((foldclosed(line(‘.‘)) < 0) ? ‘zc‘ : ‘zo‘)<CR>
" 用空格鍵來開關折疊

關註公眾號abytec,回復"vim命令"獲取vim命令詳解和配置詳解

--作者水平有限,如有錯誤敬請指出,感激不盡。

vim的簡單使用及配置