国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

你可能不知道的Vim使用小技巧

2019-11-02 16:31:52
字體:
來源:轉載
供稿:網友

一、用拷貝的內容替換

當發生拼寫錯誤或者想要重命名標識符時,就需要用拷貝的內容來替換當前的名字。比如調用函數時寫錯了:

void letus_fuckit_with_vim(){ cout<<"great!";}let_fuckat_with_vom();

只需要先復制上面的函數名,再把光標切換到拼錯的詞首。然后按下viwp,就替換過來了:

void letus_fuckit_with_vim(){ cout<<"great!";}letus_fuckit_with_vim();

v進入可視模式,然后iw來選擇光標所在單詞,最后按下p來粘貼。iw表示inner word,有用的搭配還有yiw, ciw等。

二、拷貝整個文件

當我們剛開始使用Vim時,大神會告訴我們如何拷貝整個文件:ggvGy, NB一點的大神會告訴我們:ggyG。現在告訴大家:

:%y

三、暫時離開插入模式

當我們處在insert模式時,有時會希望在normal模式下執行某個命令再馬上回到insert模式。 可能需要先按下<Esc>,執行命令,再按下i。

Vim為此提供了方便:

當我們需要暫時離開insert模式并執行一個命令時,可以按下<c-o>執行完后續命令后Vim自動回到insert模式。

例如:

:map <F5> :! g++ % && ./a.out <CR>:imap <F5> <c-o><F5>

四、字符查找

Vim光標跳轉雖然有數十種快捷鍵,但你有沒有發現當我們碰到長單詞時會很無力,比如我想把下面的description替換為keywords:

tmystr_meta_description

是不是要不斷地敲l(或者敲幾次{num}l),其實可以用單詞查找功能。只需要輸入fd便可以查找當前行的下一個字母d。大寫的F可以反向查找。

五、搜索當前詞

按下*即可搜索當前光標所在的詞(word),再次按下搜索下一個。 按下#搜索上一個。

*只匹配出現的單詞,對于中文沒有斷字。如果查找當前詞的所有字串,可以使用g*。

六、命令模式粘貼

如果希望全局查找替換當前光標所在的單詞,我們可能需要手動地在命令模式下敲出來: %s/foo/bar/g 。 但如果當前光標就在那個單詞上的話,可以在敲完%s/之后將它粘貼到命令里:

<Ctrl+R><Ctrl+W>

這是命令模式的<Ctrl+R>工具,用法還包括粘貼當前文件路徑: <Ctrl+R>% 。 更多用法請查看幫助: :help c_CTRL-R

七、段落跳轉

這個對中文用戶幾乎無用,但我們在編輯代碼文件時會很有用。()可以調到句首句尾,{}可以調到段首段尾。

八、選區頭尾跳轉

Emmet插件可以進行HTML的標簽匹配,你按下<c-y>d當前標簽首尾之間被選中。你想調到選中區域的尾部怎么辦? 按下o即可切換收尾,再次按下v就能回到Normal模式。

有木有特別想在匹配的括號間跳轉!按下%!

九、原生自動補全

如果你沒有使用任何Vim插件,Vim的自動補全是默認關閉的。在不引入插件的情況下Vim也可以啟用強大的自動補全,只需要設置:

filetype plugin onset omnifunc=syntaxcomplete#Complete

在任何時候,按下<c-x><c-o>將會觸發自動補全。

參考: http://vim.wikia.com/wiki/Omni_completion

十、用搜索來選區

當你需要選擇一大段文字時,不妨先進入visual模式,再進行正則搜索。例如在markdown中,選擇某個##的內容可以這樣操作: 移動光標到要選中的##上,按下v進入visual模式,輸入/^## 匹配下一個二級標題,按下k回到上一行。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海阳市| 汉寿县| 汝阳县| 龙胜| 工布江达县| 桂阳县| 盐城市| 将乐县| 宁蒗| 安康市| 田林县| 福贡县| 巍山| 北碚区| 乌拉特后旗| 仲巴县| 定安县| 仪征市| 镇坪县| 东乡县| 正宁县| 任丘市| 商河县| 紫金县| 岫岩| 文安县| 股票| 盘山县| 苏尼特右旗| 高阳县| 台南县| 正定县| 横山县| 长兴县| 渑池县| 任丘市| 麻阳| 轮台县| 姚安县| 长白| 揭阳市|