Vim 技巧和建議

2018-08-12 21:16 更新

技巧和建議

顯示行號(hào)

使用:set number來(lái)顯示行號(hào)。默認(rèn)顯示絕對(duì)行號(hào),可用:set relativenumber開(kāi)啟相對(duì)行號(hào)。

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

拼寫檢查

Vim有拼寫檢查的功能,用下面的命令開(kāi)啟:

set spell

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

# pacman -Ss vim-spell

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

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

小貼士:

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

  • 使用用于進(jìn)行文件類型檢測(cè)的FileType插件和自建規(guī)則,可以對(duì)任意文件類型開(kāi)啟拼寫檢查。例如,要開(kāi)啟對(duì)擴(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即可。

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

記錄光標(biāo)位置

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

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

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

用 vim 替代 vi

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

alias vi=vim

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

DOS/Windows回車問(wèn)題

打開(kāi)MS-DOS或Windows下創(chuàng)建的文本文件時(shí),經(jīng)常會(huì)在每行行末出現(xiàn)一個(gè)^M。這是因?yàn)長(zhǎng)inux使用Unix風(fēng)格的換行,用一個(gè)換行符(LF)來(lái)表示一行的結(jié)束,但在Windows、MS-DOS中使用一個(gè)回車符(CR)接一個(gè)換行符(LF)來(lái)表示,因而回車符就顯示為^M。

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

:%s/^M//g

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

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

gVim窗口底部的空格

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

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

set guiheadroom=0

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

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)