Vim秘籍

刪除命令 d D x

dd / D 刪除行

dw 刪除單詞

nd? /? nx 刪除n個字符

ndd 刪除n行

D 刪除到行尾

選取

v 進入字符可視化模式

V 進入行可視化模式

Ctrl+v 進入塊可視化模式


vi{選中{}中間的內(nèi)容,不包括{}

va{ 選中{}中間內(nèi)容,包括{}

選中()中間內(nèi)容

vi< 選中<>中間內(nèi)容

vi[ 選中[]中間內(nèi)容

vit 選中中間的內(nèi)容

vi” 選中”"中間內(nèi)容

vi’ 選中”中間的內(nèi)容、

vis 選中一個句子

vib 選中一個block

viw 選中一個單詞

vip 選中一個段落


r字符 所有字符替換為新字符

u U ~ 分別是所有字母變小寫、變大寫、反轉(zhuǎn)大小寫

“>”和“<" 將選中字符右移或左移 shiftwidth位置

J 命令可以將高亮顯示的文本內(nèi)容合并為一行,同時以空格來分隔各行。如果不希望在行間插入空格,那么可以使用 gJ 命令。


在可視化模式下,按下 : 鍵就可以對選定范圍進行操作。例如:我們先在可視化模式下選中文本,然后執(zhí)行 :write block.txt 命令,就可以將文本塊寫入另一文件中。選擇多行,然后執(zhí)行 :sort 命令,則可以對選中的文本進行排序。

目錄與配置

? ~/.vim/plugin

? ~/.vim/doc

? ~/.vim/syntax

~/.vimrc

vim有許多可選的插件管理器如Vundle, Pathogen, Vim-plug, VAM,

安裝Vim-plug

下載Vim-plug并把它放在autoload目錄里

Unix

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \

? ? https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Neovim

curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \

? ? https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Windows

md ~\vimfiles\autoload

$uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

(New-Object Net.WebClient).DownloadFile($uri, $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath("~\vimfiles\autoload\plug.vim"))

管理插件

編輯.vimrc(Neovim是~/.config/nvim/init.vim)

添加vim-plug配置,以call plug#begin()開頭,call plug#end()結(jié)尾,中間是插件列表,begin可以接受參數(shù)指定存放插件的位置:

" Specify a directory for plugins (for Neovim: ~/.local/share/nvim/plugged)

call plug#begin('~/.vim/plugged')

" Make sure you use single quotes

" Shorthand notation; fetches https://github.com/junegunn/vim-easy-align

Plug 'junegunn/vim-easy-align'

" Any valid git URL is allowed

Plug 'https://github.com/junegunn/vim-github-dashboard.git'

" Multiple Plug commands can be written in a single line using | separators

Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'

" On-demand loading

Plug 'scrooloose/nerdtree', { 'on':? 'NERDTreeToggle' }

Plug 'tpope/vim-fireplace', { 'for': 'clojure' }

" Using a non-master branch

Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }

" Using a tagged release; wildcard allowed (requires git 1.9.2 or above)

Plug 'fatih/vim-go', { 'tag': '*' }

" Plugin options

Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }

" Plugin outside ~/.vim/plugged with post-update hook

Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }

" Unmanaged plugin (manually installed and updated)

Plug '~/my-prototype-plugin'

" Initialize plugin system

call plug#end()

安裝插件

:PlugInstall

其他命令

PlugUpdate:升級插件;

PlugClean:刪除未被使用的插件目錄;

PlugUpgrade:升級Vim-plug自身;

PlugStatus:查看插件狀態(tài);

更多配置和命令請參考Vim-plug官方文檔

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容