Vim 技巧和建議

2018-08-12 21:16 更新

技巧和建議

顯示行號

使用:set number來顯示行號。默認(rèn)顯示絕對行號,可用:set relativenumber開啟相對行號。

使用:_行號_ or _行號_gg跳轉(zhuǎn)到指定行號。跳轉(zhuǎn)都記錄在一個跳轉(zhuǎn)列表中,更多細(xì)節(jié)參考:h jump-motions

拼寫檢查

Vim有拼寫檢查的功能,用下面的命令開啟:

set spell

Vim默認(rèn)只安裝了英語字典。其他的字典可在[官方軟件倉庫][17]通過搜索vim-spell而尋得。檢查可用語言包:

# pacman -Ss vim-spell

額外的字典可以從[Vim's FTP archive][18]獲取。把下載的字典文件存入~/.vim/spell/,并用 :setlocal spell spelllang=_en_us_ (將_en_us_ 換成所需的字典的名稱)開啟。

行為 快捷鍵
下一個拼寫錯誤 ]s
上一個拼寫錯誤 [s
拼寫糾正建議 z=
將單詞添加到用戶正確字典 zg
將單詞添加到內(nèi)部正確字典 zG
將單詞添加到用戶錯誤字典 zw
將單詞添加到內(nèi)部正確字典 zW
重新進(jìn)行拼寫檢查 :spellr

小貼士:

  • 如果需要針對兩種語言進(jìn)行拼寫檢察(例如英語與德語),在~/.vimrc/etc/vimrc中添加set spelllang=_en,de_并重啟Vim即可。

  • 使用用于進(jìn)行文件類型檢測的FileType插件和自建規(guī)則,可以對任意文件類型開啟拼寫檢查。例如,要開啟對擴(kuò)展名為.txt的文件的拼寫檢查,創(chuàng)建文件/usr/share/vim/vimfiles/ftdetect/plaintext.vim,添加內(nèi)容autocmd BufRead,BufNewFile *.txt setfiletype plaintext,然后在~/.vimrc/etc/vimrc添加autocmd FileType plaintext setlocal spell spelllang=en_us,重啟vim即可。

  • 如果想只對LaTeX(或TeX)文檔起用拼寫檢查,在~/.vimrc/etc/vimrc添加autocmd FileType **tex** setlocal spell spelllang=_en_us_,重啟Vim即可。至于非英語語言,替換上述語句中的en_us為相應(yīng)語言代碼即可。

記錄光標(biāo)位置

Vim可以記錄上次打開某一文件時的光標(biāo)位置,并在下次打開同一文件時將光標(biāo)移動到該位置。要開啟該功能,在配置文件~/.vimrc中加入以下內(nèi)容:

augroup resCur
  autocmd!
  autocmd BufReadPost * call setpos(".", getpos("'\""))
augroup END

另見:[Vim Wiki上的相關(guān)內(nèi)容][19]。

用 vim 替代 vi

創(chuàng)建一個alias,如下:

alias vi=vim

或者,如果你想輸入sudo vi并得到vim, 安裝vi-vim-symlinkAUR,它將移除vi并用一個符號鏈接vim代替。

DOS/Windows回車問題

打開MS-DOS或Windows下創(chuàng)建的文本文件時,經(jīng)常會在每行行末出現(xiàn)一個^M。這是因為Linux使用Unix風(fēng)格的換行,用一個換行符(LF)來表示一行的結(jié)束,但在Windows、MS-DOS中使用一個回車符(CR)接一個換行符(LF)來表示,因而回車符就顯示為^M

可使用下面的命令刪除文件中的回車符:

:%s/^M//g

注意,^代表控制字符。輸入^M的方法是按下Ctrl+v,Ctrl+m

另一個解決方法是,安裝 dos2unix,然后執(zhí)行 dos2unix <文件名>。

gVim窗口底部的空格

如果窗口管理器設(shè)置為忽略窗口大小渲染窗口,gVim會將空白區(qū)域填充為GTK主題背景色,看起來會比較難看。

解決方案是調(diào)整gVim在窗口底部保留的空間大小。將下面的代碼加入 ~/.vimrc中:

set guiheadroom=0

注意:如果將其設(shè)為0,將無法看到底部的水平滾動條。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號