91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vim實用技巧有哪些

發布時間:2022-01-04 18:44:39 來源:億速云 閱讀:145 作者:柒染 欄目:大數據

Vim實用技巧有哪些,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

一、Vim解決問題的方式

A.結識.命令

1..命令可以讓我們重復上次的修改,它是vim中最為強大的多面手

2..命令是一個很小的宏(macro)

B.不要自我重復

1.$移動到行尾

2.a命令在當前光標之后添加內容

3.A命令在當前行的結尾添加內容,相當于$a

C.以退為近

1.f{char}讓vim查找下一處指定字符出現的位置

2.;命令重復查找上次f命令所查找的字符

D.執行、重復、回退

1.vim會記住我們的操作,并使最常用的操作觸手可及,可以很方便地重復執行它們

2.u鍵撤銷上次的修改

3.,鍵反射查找上次f{char}所查找的字符

E.查找并手動替換

1.*進行查找,一是光標會跳到下一個匹配項上,二是所有出現這個詞的地方都會被高亮顯示出來。如果沒有高亮,運行:set hls

2.cw命令刪除從光標位置到音訊結尾間的字符,并進入插入模式

3.n會查找下一個單詞,*nn會遍歷所有匹配項,從而跳回到本次查找的起點

F.結識.范式

1.理想模式:用一鍵移動,另一鍵執行

二、普通模式

A.把撤銷單元切成塊

1.在vim中,我們可以自己控制撤銷命令的粒度。從進入插入模式開始,走到返回普通模式為止,在此期間輸入或刪除的任何內容都被當成一次修改。

2.在插入模式中使用up/down/left/right會重置修改狀態

B.構造可重復的修改

1.db命令刪除從光標起始位置到單詞開頭的內容,但會原封不動地留下最后一個字符

2.x刪除當前字符

3.b把光標移到單詞的開頭

4.dw命令刪掉整個單詞

5.daw刪除整個單詞及相關聯的空格

C.用次數做簡單的算術運算

1.yyp復制行,cw修改字符

2.c+x,找到第一數字做減法,c+a找到第一個數字做加法

3.vim會把0開頭的數字當成8進制,set nrformats=,把所有數字當成十進制

D.能夠重復,就別用次數

1.操作符+動作命令=操作

  • d{motion},可以dl、daw或dap,它作用的范圍由動作命令決定,c{motion}、y{motion}以及其他一些命令也類似,被統稱為操作符(operator)

  • 一個操作符被連續調用兩次時,會作用于當前行。如dd、>>,gu例外,使用guu,全部小寫

三、插入模式

A.在插入模式中可即時更正錯誤

1.c+h刪除前一個字符,c+w刪除前一個單詞,c+u刪除至行首

B.返回普通模式

1.esc、c+[切換到普通模式,c+o切換到插入-普通模式,可以執行一個普通命令

C.不離開插入模式,粘貼寄存器中的文本

1.yt,復制到逗號的文本

2.c+r{register},把復制的文本粘貼到光標處,{register}是想要插入的寄存器的名字

3.<c+r><c+p>{register}按原義插入寄存器內的文本,并修正任何不必要的縮進

D.隨時隨地做運算

1.<c+r>=

E.用字符編碼插入非常用字符

1.<c+v>{code},{code}是要插入字符的編碼

2.<c+k>{char1}{char2},插入以二合字母表示的字符

F.用替換模式替換已有文本

1.R命令可以由普通模式進入替換模式

2.gR虛擬替換模式(Virtual Replace mode)

3.單次版本的替換模式,r{char}和gr{char}

四、可視模式

A.選擇高亮選區

1.v激活面向字符的可視模式,V激活面向行的可視模式,<c+v>激活面向列塊的可視模式,gv重選上次的高亮選區

B.只要可能,最好用操作符命令,而不是可視命令

1.vit命令可被解讀 為高亮選中標簽內部的內容(visually select inside the tag)

2.當一條可視模式命令被重復執行時,它會影響相同數量的文本

C.用面向列塊的可視模式編輯表格數據

1.<c+v>進入列塊可視模式

2.i,a在光標處字符前后插入,I,A在行首和行尾插入

五、命令行模式

A.在一行或多個連續行上執行命令

1.:[range]p,顯示并定位到行,可以混合搭配行號、位置標記以及查找模式,也可以對它們加以偏移

B.使用’:t’和’:m’命令復制和移動行

1.:[range]copy{address},把[range]的行復制到{address},{address}為.復制到當前行下方,為空復制到[range]下方

2.簡寫:co或:t,yyp命令會使用寄存器,:t不會

3.:[range]move{address},簡寫:m,移動行

C.在指定范圍上執行普通模式命令

1.:’<,’>normal,為“對高亮選區中的每一行,對其執行普通模式下的命令”

2.%代表下個文件范圍

D.重復上次的Ex命令

1.使用@:重復上次一命令,運行運一次后就可以用@@

2.寄存器總是保存著最后執行的命令行命令

E.自動補全Ex命令

1.也可以使用<Tab>自動補全

2.<c+d>顯示可用的補全列表

F.回溯歷史命令

1.可以使用<c+p>、<c+n>代替上下鍵,可以使用q:顯示命令行窗口

2.在命令行模式下可以使用<c+f>切換到命令行窗口中

G.運行shell命令

1.:!{cmd}各用于執行一次命令,:shell啟動一個交互的shell會話

2.<c+z>掛起Vim,fg喚醒

六、管理多個文件

A.用緩沖區列表管理打開的文件

1.:ls顯示所有載入內存中的緩沖區列表,:bnext可以切換到下一個緩沖區

2.:bprev和:bnext在列表中反向或正向移動;:bfirst和:blast分別跳到列表的開頭和結尾;使用:buffer {bufname|N}直接跳轉;:bufdo允許在:ls列出的所有緩沖區上執行Ex命令;

3.:bdelete命令刪除緩沖區,只是簡單地把該文件在內存中的映像刪掉

B.用參數列表將緩沖區分組

1.:args輸出記錄在啟動時作為參數傳遞給Vim的文件列表

2.:qall!不對未保存的修改進行檢查;:wall把所有改變的緩沖區寫入硬盤

C.將工作區切分成窗口

1.<c+w>s,<c+w>v,水平和垂直切分

2.<c+w>w循環切換窗口

3.:close關閉當前活動窗口,:only關閉除當前活動窗口以外的窗口

D.用標簽頁將窗口分組

1.:lock{path}可以設置當前窗口的本地工作目錄;:tabedit {filename}可以撕開一個新的標簽頁;

2.{N}gt命令在標簽頁間切換,“跳到標簽頁{N}”;gT功能反向;

3.用:tabmove [N]可以重排列標簽頁

七、打開及保存文件

A.用:edit命令打開文件

1.:pwd查看當前工作目錄

2.:edit {filename}打開指定文件

3.%:h,%代表活動緩沖區的完整路徑,:h修飾符會去除文件名但保留路徑中的其他部分

B.使用:find撕開文件

1.**通配會會匹配目錄下所有子目錄

2.:et path=,指定目錄

C.使用netrw管理文件系統

1.vim .可以查看當前目錄,回車可以打開文件

2.:edit縮寫:e

3.:Explore(:E)打開文件管理器,并顯示活動緩沖區所在的目錄

3.:Sexplore及:Vexplore,在一個再來水平切分窗口及垂直切分窗口打開文件管理器

D.把文件保存到不存在的目錄中

1.<c+g>顯示當前文件的文件名及狀態

2.!make dir來進行補救

八、用動作命令在文檔中移動

A.讓手指保持在本位行上

1.h左移一列,l右移一列,j下移一行,k上移一行

2.只用h和l來解決“差一錯誤”(off-by-one errors)。也就是說,只有在距目標差一兩個字符時,才用這兩個鍵。

B.區分實際行與屏幕行

1.gj、gk向下、向上移動一個屏幕行

2.g0、g^、g$,移動到屏幕行的行首、第一個非空白字符、行尾

C.基于單詞移動

1.w正向移動到下一單詞的開頭,b反向移動到當前單詞/上一單詞的開頭,e下向移動到當前 單詞/下一單詞的結尾,ge反向移動到上一單詞的結尾

D.對字符進行查找

1.f{char}命令會在光標位置與當前行行尾之間查找指定的字符,如果找到了就會把光標移到此字符上;如果未能找到,則保持光標不動

2.;命令重復f{char}命令,,反向重復F{char}命令

3.t{char},T{char}正/反向移動到下一個{char}所在之處的前一個字符上

E.通過查找進行移動

1./{char}<CR>查找命令

2.n下移,N上移

F.用精確的文本對象選擇選區

1.Vim的文本對象由兩個字符組成,第一個字符永遠是i或是a。以i開頭的文本對象會選擇分隔符內部的文本,而以a開頭的文本對象則會選擇包括分隔符在內的整個文本。

  • a)或ab,一對圓括號

  • i)或ib,圓括號內部

  • a}或aB,一對花括號

  • i}或iB,花括號內部

  • a],一對方括號

  • i],方括號內部

  • a>,i>,a',i’,a”,i”,a`,I`,at(一對xml標簽),it(xml標簽內部)

2.每當在命令語法里看到{motion}時,你也可以在這個地方使用文本對象,常見的例子包括d{motion}、c{motion}和y{motion}

G.刪除周邊,修改內部

1.iw當前單詞,aw當前單詞及一個空格,iW當前字串,aW當前字串及一個空格,is當前句子,as當前句子及一個空格,ip當前段落,ap當前段落及一個空行

2.一般來說,d{motion}命令和aw、as和ap配合起來使用比較好,而c{motion}命令和iw及類似的文本對象一起用效果會更好

H.設置位置標記,以便快速跳回

1.m{a-zA-Z}命令會用先定的字母標記當前光標所在位置,小寫位置標記只在每個緩沖區里局部可見,而大寫位置標記則全局可見

2.`{mark}命令跳到位置標記所在行,并把光標置于該行第一個非空白字符上

3.自動標記位置:``當前文件中上次跳轉動作之前的位置,`.上次修改的地方,`^上次插入的地方,`[上次修改或復制的起始位置,`]上次修改或復制的結束位置,`<上次高這選區的起始位置,`>上次高亮選區的結束位置

I.在匹配括號間跳轉

1.%命令允許我們在一組開、閉括號間跳轉,可作用于()、{}以及[]

九、在文件間跳轉

A.遍歷跳轉列表

1.:jumps查看跳轉列表

2.<C-o>、<C-i>命令,前進或后退跳轉

B.遍歷改變列表

1.:changes可以查看改變列表

C.跳轉到光標下的文件

1.gf命令打開文件

2.:set suffixesadd+=..指定打開文件的擴展名

3.:set path設置目錄

十、復制與粘貼

A.深入理解Vim寄存器

1.可以使用”{register}來指定寄存器名

2.黑洞寄存大貴,用下劃線”_

B.用寄存器中的內容替換高亮選區的文本

1.在可視模式下使用p命令時,Vim將用我們指定的寄存器內容來替換高亮選區中的文本

十一、宏

A.宏的讀取與執行

1.q{register}錄制及結束

2.reg {register}可以查看宏

3.使用@{register}執行指定宏的內容,也可以使用@@來重復最近調用過的宏

B.規范光標位置、直達目標以及中止宏

1.在錄制一個宏時,要確保每條命令都可被重復執行

2.規范光標的位置、用可重復的動作命令直達目標、當動作命令失敗時,宏將中止執行

C.加次數回放宏

1.{number}@q

D.給宏追加命令

1.使用qA,大寫的{register}即可追加

十二、按模式匹配及按原義匹配

A.調整查找模式的大小寫敏感性

1.使用元字符\c和\C,可以覆蓋Vim缺省的大小寫敏感設置。

B.按正則表達式查找時,使用\v模式開頭

1.\v模式開關使得Vim的正則表達式引擎表現得更像是Perl、Python或者Ruby。

C.按原義查找文本時,使用\V原義開關

D.使用括號捕獲子匹配

十三、查找

A.結識查找命令

1./正向查找,?反向查找

2.n跳轉到下一處,N跳轉到上一處

B.高亮查找匹配

1.:set hlsearch高亮,:set nohlsearch不高亮

C.在執行查找前預覽第一處匹配

1.:set incsearch預覽第一處匹配

D.將光標偏移到查找匹配的結尾

1./{search}/e

十四、替換

A.結識substitutedtute命令

1.:[range]s[ubstitute]/{pattern}/{string}/[flags]

十五、global命令

A.結識global命令

1.:[range]global[!]/{pattern}/[cmd]

看完上述內容,你們掌握Vim實用技巧有哪些的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vim
AI

沛县| 神池县| 平阳县| 平利县| 乡城县| 黄龙县| 沁源县| 新巴尔虎左旗| 翁源县| 东辽县| 南岸区| 蒙阴县| 马边| 鲁山县| 浏阳市| 镇雄县| 恭城| 溧阳市| 呼玛县| 云梦县| 宝丰县| 芦山县| 临桂县| 嘉禾县| 兰考县| 句容市| 南靖县| 固始县| 翁源县| 朔州市| 拜城县| 时尚| 财经| 冷水江市| 礼泉县| 布尔津县| 南郑县| 盱眙县| 同心县| 醴陵市| 子长县|