亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

vim配置c語(yǔ)言開發(fā)環(huán)境 vim簡(jiǎn)單配置教程( 五 )


Signify 和前面的 ALE 都會(huì)在側(cè)邊欄顯示一些標(biāo)記,默認(rèn)側(cè)邊欄會(huì)自動(dòng)隱藏,有內(nèi)容才會(huì)顯示,不喜歡側(cè)邊欄時(shí)有時(shí)無(wú)的行為可設(shè)置強(qiáng)制顯示側(cè)邊欄:“set signcolumn=yes”。
文本對(duì)象
相信大家用 Vim 進(jìn)行編輯時(shí)都很喜歡文本對(duì)象這個(gè)概念,diw 刪除光標(biāo)所在單詞,ciw 改寫單詞,vip 選中段落等,ci”/ci( 改寫引號(hào)/括號(hào)中的內(nèi)容 。而編寫 C/C++ 代碼時(shí)我推薦大家補(bǔ)充幾個(gè)十分有用的文本對(duì)象,可以使用 textobj-user 全家桶:
Plug 'kana/vim-textobj-user'Plug 'kana/vim-textobj-indent'Plug 'kana/vim-textobj-syntax'Plug 'kana/vim-textobj-function', { 'for':['c', 'cpp', 'vim', 'java'] }Plug 'sgur/vim-textobj-parameter'它新定義的文本對(duì)象主要有:
i, 和 a, :參數(shù)對(duì)象,寫代碼一半在修改,現(xiàn)在可以用 di, 或 ci, 一次性刪除/改寫當(dāng)前參數(shù)ii 和 ai :縮進(jìn)對(duì)象,同一個(gè)縮進(jìn)層次的代碼,可以用 vii 選中,dii / cii 刪除或改寫if 和 af :函數(shù)對(duì)象,可以用 vif / dif / cif 來(lái)選中/刪除/改寫函數(shù)的內(nèi)容最開始我不太想用額外的文本對(duì)象,一直在堅(jiān)持 Vim 固有的幾個(gè)默認(rèn)對(duì)象,生怕手練習(xí)慣了肌肉形成記憶到遠(yuǎn)端沒(méi)有環(huán)境的 vim 下形成依賴改不過(guò)來(lái),后來(lái)我慢慢發(fā)現(xiàn)挺有用的,比如改寫參數(shù),以前是比較麻煩的事情,這下流暢了很多,當(dāng)我發(fā)現(xiàn)自己編碼效率得到比較大的提升時(shí),才發(fā)現(xiàn)習(xí)慣依賴不重要,行云流水才是真重要 。以前看到過(guò)無(wú)數(shù)次都選擇性忽略的東西,有時(shí)候試試可能會(huì)有新的發(fā)現(xiàn) 。
編輯輔助
大家都知道 color 文件定義了眾多不同語(yǔ)法元素的色彩,還有一個(gè)關(guān)鍵因素就是語(yǔ)法文件本身能否識(shí)別并標(biāo)記得出眾多不同的內(nèi)容來(lái)?語(yǔ)法文件對(duì)某些東西沒(méi)標(biāo)注,你 color 文件確定了顏色也沒(méi)用 。因此 Vim 下面寫 C/C++ 代碼,語(yǔ)法高亮準(zhǔn)確豐富的話能讓你編碼的心情好很多,這里推薦vim-cpp-enhanced-highlight 插件,提供比 Vim 自帶語(yǔ)法文件更好的 C/C++ 語(yǔ)法標(biāo)注,支持 標(biāo)準(zhǔn) 11/14/17 。
前面編譯運(yùn)行時(shí)需要頻繁的操作 quickfix 窗口,ale查錯(cuò)時(shí)也需要快速再錯(cuò)誤間跳轉(zhuǎn)(location list),就連文件比較也會(huì)用到快速跳轉(zhuǎn)到上/下一個(gè)差異處,unimpaired 插件幫你定義了一系列方括號(hào)開頭的快捷鍵,被稱為官方 Vim 中丟失的快捷鍵 。
我們好些地方用到了 quickfix / location 窗口,你在 quickfix 中回車選中一條錯(cuò)誤的話,默認(rèn)會(huì)把你當(dāng)前窗口給切走,變成新文件,雖然按 CTRL+O 可以返回,但是如果不太喜歡這樣切走當(dāng)前文件的做法,可以設(shè)置 switchbuf,發(fā)現(xiàn)文件已在 Vim 中打開就跳過(guò)去,沒(méi)打開過(guò)就新建窗口/標(biāo)簽打開,具體見幫助 。
Vim最爽的地方是把所有 ALT 鍵映射全部留給用戶了,盡量使用 Vim 的 ALT鍵映射,可以讓冗長(zhǎng)的快捷鍵縮短很多,請(qǐng)參考:《Vim和終端軟件中支持ALT映射》 。
代碼補(bǔ)全
傳統(tǒng)的 Vim 代碼補(bǔ)全基本以 omni 系列補(bǔ)全和符號(hào)補(bǔ)全為主,omni 補(bǔ)全系統(tǒng)是 Vim 自帶的針對(duì)不同文件類型編寫不同的補(bǔ)全函數(shù)的基礎(chǔ)語(yǔ)義補(bǔ)全系統(tǒng),搭配 neocomplete 可以很方便的對(duì)所有補(bǔ)全結(jié)果(omni補(bǔ)全/符號(hào)補(bǔ)全/字典補(bǔ)全)進(jìn)行一個(gè)合成并且自動(dòng)彈出補(bǔ)全框,雖然趕不上 IDE 的補(bǔ)全,但是已經(jīng)比大部分編輯器補(bǔ)全好用很多了 。然而傳統(tǒng) Vim 補(bǔ)全還是有兩個(gè)邁不過(guò)去的坎:語(yǔ)義補(bǔ)全太弱,其次是補(bǔ)全分析無(wú)法再后臺(tái)運(yùn)行,對(duì)大項(xiàng)目而言,某些復(fù)雜符號(hào)的補(bǔ)全會(huì)拖慢你的打字速度 。
新一代的 Vim 補(bǔ)全系統(tǒng),YouCompleteMe 和 Deoplete,都支持異步補(bǔ)全和基于 clang 的語(yǔ)義補(bǔ)全,前者集成度高,后者擴(kuò)展方便 。對(duì)于 C/C++ 的話,我推薦 YCM,因?yàn)?deoplete 的 clang 補(bǔ)全插件不夠穩(wěn)定,太吃內(nèi)存,并且反應(yīng)比較慢,它的代碼量和代碼質(zhì)量和 YCM完全不是一個(gè)量級(jí)的 。所以 C/C++ 的補(bǔ)全的話,請(qǐng)直接使用 YCM,沒(méi)有之一,而使用 YCM的話,需要進(jìn)行一些簡(jiǎn)單的調(diào)教:


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助: