導航:首頁 > 文檔加密 > vim實用技巧pdf

vim實用技巧pdf

發布時間:2023-02-05 18:07:06

A. Vi/Vim 使用小竅門,如何消除搜索後的關鍵字高亮

輸入:」:noh「。

使用技巧

1、使用 h、j、k、l

命令模式時,可以用 h、j、k、l 來分別實現左、下、上、右箭頭的功能。

2、快捷指令

(1)[Ctrl] + [b] 屏幕『向上』移動一頁,相當於 [Page Up] 按鍵。

(2)[Ctrl] + [d] 屏幕『向下』移動半頁。

(3)[Ctrl] + [u] 屏幕『向上』移動半頁。

(4)/word 向游標之下尋找一個名稱為 word 的字元串。例如要在檔案內搜尋 vbird 這個字元串,就輸入 /vbird 即可。

(1)vim實用技巧pdf擴展閱讀

簡介

vim的設計理念是命令的組合。用戶學習了各種各樣的文本間移動/跳轉的命令和其他的普通模式的編輯命令,並且能夠靈活組合使用的話,能夠比那些沒有模式的編輯器更加高效的進行文本編輯。

同時VIM與很多快捷鍵設置和正則表達式類似,可以輔助記憶。並且vim針對程序員做了優化。

發展歷程

Bram Moolenaar 在 80 年代末購入他的Amiga計算機時,Amiga 上沒有他最常用的編輯器vi。Bram 從一個開源的 vi 復制 Stevie 開始,開發了 Vim 的 1.0 版本。最初的目標只是完全復制 vi 的功能,那個時候的 Vim 是Vi IMitation(模擬)的簡稱。

1991 年 Vim 1.14 版被 "Fred Fish Disk #591" ——Amiga 用的免費軟體集收錄了。1992 年 1.22 版本的 Vim 被移植到了 UNIX 和MS-DOS上。從那個時候開始,Vim 的全名就變成 Vi IMproved了。

B. vim編輯器的使用以及常用快捷鍵

一般模式英文鍵盤模式下輸入i進入編輯模式;
編輯模式下按下esc回到一般模式;
一般模式下輸入:或者/進入命令模式
命令模式下按下esc或者按下enter鍵命令執行完成後也會回到一般模式

進入vim編輯器: vim 文件名.後綴
退出vim編輯器:
1. :q 退出,如有修改會被提示已修改文件內容
2. :q! 強制退出,不保留修改內容
3. :wq 保存修改內容並推出

C. vim模式與模式切換vim命令模式

vim有三種模式,本文介紹VIM模式與vim模式切換的方法。

vim命令 模式, 編輯模式 , 尾行模式 和文本編輯命令。

Vim編輯模式插入字元,行尾、行首插入,刪除一個字元和刪除整行命令,Vim復制和粘貼命令,vim替換輸入以及撤銷和反撤銷命令,Vim保存和另存為文件,顯示vim當前編輯文件名。

我們使用vim編輯器的常用文件操作主要是:插入、刪除、復制、粘貼、替換、撤銷、保存、另存為。

在介紹Vim中的上述基本文件操作命令前,需要先介紹下vim的操作模式。因為vim的各種對文件操作命令需要在不同操作模式下使用。

一、Vim三種操作模式

Vim編輯器一共有3種模式,分別為 命令模式 (默認)、編輯模式、尾行模式。這3種模式的轉換關系如下圖所示。

vim三種模式

1 命令模式(command mode)

命令模式是Vim的默認操作模式,當使用vim命令打開一個文件時,默認進入的就是命令模式。不管用戶處於何種模式,只要按下Esc鍵就可使進入命令行模式

2 編輯模式(input mode)

只有在vim編輯模式下,才能將鍵盤鍵入的內容輸入到當前打開的文件中

在命令模式下輸入插入命令i(insert)、附加命令a (append)、打開命令o(open)、修改命令c(change)、取代命令r或替換命令s都可以進入文本編輯模式

3 尾行模式(last line mode)

尾行模式主要用於保存文件或退出Vim,同時也可以設置編輯環境和一些編譯工作,如列出行號(set nu)、尋找字元串(/target)等

在命令模式下,用戶按冒號鍵(:)即可進入末行模式下,此時Vi會在顯示窗口的最後一行顯示一個」:「作為末行模式的提示符,等待用戶輸入命令

二、Vim文本編輯命令

約定:在沒有特殊說明的情況下,以下Vim編輯命令部分提到的命令均是在命令模式下使用。

1 vim插入命令

在命令模式下按以下按鍵可進入編輯模式,執行插入操作,具體包括:

從游標當前所在行的【行首】處開始插入:I

從游標當前所在行的【行尾】處開始插入:A

從游標當前所在行的【下一行】處開始插入:o

從游標當前所在行的【上一行】處開始插入:O

從游標當前所在位置的【前】一個字元處開始插入:i

從游標當前所在位置的【後】一個字元處開始插入:a

tips:i (insert)是在當前位置插入,a (append)表示是在後面追加

2 vim刪除命令

在命令模式下按以下按鍵可執行刪除操作,具體包括:

刪除從游標所在位置到當前【單詞結束】部分的內容並進入插入模式:cw、cW

刪除從游標所在位置到當前【單詞開始】部分的內容並進入插入模式:cb、cB

刪除從游標所在位置到當前【單詞結束】部分的內容但不進入插入模式:dw、dW

刪除從游標所在位置到當前【單詞開始】部分的內容但不進入插入模式:db、dB

刪除游標位置的【一個】字元:x

刪除當前游標所在【行】:dd

刪除從游標所在位置到當前【行首】的內容:d0

刪除從游標所在位置到當前【行尾】的內容:d$

tips:

(1) Vim的命令中,0 表示行首,$ 表示行尾,更多內容可參考卡拉圖Vim操作范圍、文件范圍介紹

(2) w(word)、b(back)命令用於游標移動,具體可參考卡拉圖:vim游標移動命令匯總

(3) cW、cB、dW、dB 命令操作的單詞是以空白字元(空格、Tab)分隔的字元串

刪除當前【段落】從游標位置開始到【段末】的內容:d}

刪除當前【段落】從游標位置開始到【段首】的內容:d{

刪除當前【句子】從游標位置開始到【句末】的內容:d)

刪除當前【句子】從游標位置開始到【句首】的內容:d(

tips:Vim命令中用 ( 和 ) 表示句子,{ 和 } 表示段落

3 vim復制命令、vim粘貼命令

在命令模式下按以下按鍵可執行復制、粘貼操作,具體包括:

將最後一次刪除或復制操作的文本內容粘貼到游標所在字元之【後】:p

將最後一個刪除或復制操作的文本內容粘貼到游標當前字元之【前】:P

復制從游標所在位置到當前【單詞結束】部分的內容:yw

復制游標所在【行】的所有字元 (包含換行符):yy

tips:yyp 操作可以實現復制一整行內容到當前所在行的下一行

4 vim替換命令

在命令模式下按以下按鍵後,再輸入字元可替換原始文件中的內容

一直替換游標所在字元,直到按下[ESC]鍵為止:R

刪除、復制操作的操作單位可以加操作次數,操作對象的范圍為:操作次數 * 操作單位

替換游標當前所在字元一次:r

例如:d3w命令表示刪除三個單詞,10dd命令表示從游標所在行開始刪除後面的十行,更多內容可以參考Vim中的操作符和動作命令。

5 vim撤銷命令、vim回退反撤銷命令

在命令模式下可執行撤銷操作

撤銷最近的一次操作:u

恢復最近的一次操作(取消撤銷):<Ctrl> + r

tips:多次執行u 命令可以連續撤銷最近的操作

6 vim保存命令

在尾行模式下執行以下命令可保存當前編輯的文件內容

保存當前編輯的文件::w

保存當前編輯的文件並退出vim::wq

強制將當前編輯的文件保存::w!

tips:上述操作是在尾行模式下執行的,所以命令都是以:開頭

7 vim另存為命令

在尾行模式下執行命令 :w a.txt 可將vim當前打開的文件另存為新文件a.txt.

tips:w(write) 表示將文件存檔,: 表示尾行模式命令。

8 vim顯示當前文件名的方法

命令 <Ctrl> + g 可顯示當前編輯文件名及行數,可以在不退出 Vim 的情況下了解當前編輯文件的信息,更多內容,可參考30個vim常用命令和使用 vim技巧 。

Vim入門級文件編輯命令匯總就先介紹到這里了,更多Vim文件編輯命令和Vim相關操作可閱讀本站其它文章內容。

D. vim操作技巧

不知不覺使用vim已經有一些時間了,也算得上真正掌握使用技巧了吧。想不起來當初為什麼去學習這個編輯器,也不記得怎麼學會使用編輯文件,只記得當初按完所有的鍵盤按鍵都沒有退出vim。一顆種子要經過多少風雨才能長成參天大樹,一條小溪要經過多少高山河流才能匯入大海。我們平常學習一樣東西,要經過多少困難,多少挫折,只有自己最清楚。

普通編輯器都可以直接打開文件進行編輯、保存、使用快捷鍵等等,vim也具備這些功能,但是有些功能要在特定模式下才能使用。也是因為這些模式,讓vim學習路線變得特別比較陡峭。vim具有多種模式,每種模式都有特定功能,有時你需要某些功能時,特意切換到指定模式下操作。使用鍵盤就可以隨意切換模式,讓vim不依賴滑鼠操作,使用最小化組合鍵的操作,編輯效率大大提高。

這個模式主要功能,可以使用移動命令,擴大高亮的文本區域。輸入命令將直接作用於選中文本區域。這就相當於你用滑鼠選中一段文本區域,可以使用可以使用命令進行,復制、剪切、修改操作,但是vim並不需要滑鼠。

這個模式要在可視模式下才能進入,可以直接使用退格鍵或者空格鍵刪除選中文本區域,或者直接輸入新的文本,替換選中高亮區域進入插入模式。

平常在使用vim主要是在普通模式、插入模式、可視模式、命令模式進行操作,掌握這里基本就可以熟悉使用vim了。

掌握這些快捷鍵,移動游標得時候,手機基本不會離開核心鍵盤區,有沒有像 w , a , s , d 移動角色的感覺🙂。

要想編寫文本內容,還必須在插入模式下進行操作,以下命令由普通模式進入到插入模式

d 刪除字元(delete), d 本身沒有任何涵義,但是它可以跟其他命令組合,完成一些快速操作。

<font size=5>操作符 + 動作命令 = 操作</font>

d<span style="color:red;">{motion}</span> 命令可以對一個字元 dl 、一個完整單詞 daw 或
一整個段落 dap 進行操作,它作用的范圍由動作命令決
定。c<span style="color:red;">{motion}</span>、y<span style="color:red;">{motion}</span> 以及其他一些命令也類似,它們被統稱為操作符(operator)。

<center>Vim的操作符命令</center>

看著上面刪除操作,是不是很容易理解操作符 + 動作命令 的模式,比如我們已經知道 daw 刪除整個單詞, gU 反轉大寫,我們就可以使用 gUaw 反轉整個單詞, gUap 反轉整個段落大寫

由於vim中快捷鍵已經被change修改佔用了,只能使用 y 代表復制(yank),粘貼(put)使用 p , d 其實是將內容剪切到寄存器中,剪切實現刪除操作。 ddp 看起來是將兩行位置互換,其實先剪切當前行到寄存器中, p 粘貼到游標下的位置。主要記住使用命令 y + 動作指令 或者 d + 動作指令,都是將文本暫存到寄存器中,使用 p 或者 P 進行粘貼。進行一個小demo練習,將變數field替換下面的函數參數foo。

思路: 先使用 yw 復制field欄位,下移動foo中, dw 刪除foo, P 粘貼。但是你會發現粘貼結構居然還是foo。這是因為 dw 將刪除文本放入寄存器中,覆蓋了上面的變數。我們平常復制,剪切的文本都會暫存再無名寄存器中。

在vim中的刪除、復制、粘貼都是使用寄存器,可以使用 "{registerName} 方式命名寄存器。平時我們使用 dd , yy 命令,不指名寄存器名稱默認使用無名寄存器。倘若沒有指定要使用的寄存器,Vim將預設使用無名寄存器,它可以用雙引號表示(參見 :h quote_quote )。無名寄存器可以使用 "" 表示,比如 ""yy 相當於 yy , ""p 相當於 p

"[0-9]表示數字寄存器,數字越小表示最早在寄存器內容。例如 "0 表示第一個進入寄存器文本, "1 表示第二個進入寄存器內容,類似值棧結構,先進後出排列。可以使用 :reg 查看寄存器中內容。

在win系統中,可以在任意地方Ctrl c復制文本,vim是否可以粘貼非vim中復制內容?當然是可以的。 "+ 表示系統寄存器,可以讀取系統vim之外的系統粘貼板中的內容,可以粘貼內容,復制到系統粘貼板中去。ubuntu上需要安裝vim-gnome,才可以正常使用系統寄存器。

使用粘貼命令前面+寄存器名稱,就可以直接使用專用寄存器中的內容了,例如 "+p 直接粘貼系統剪貼板中的內容。

在插入模式使用 <Ctrl r> + 寄存器名稱粘貼字元文本。例如可以使用 <Ctrl r>" 粘貼無名寄存器中內容。

本文章有部分內容參考 《vim實用技巧第2版》 ,有興趣的同學可以買一個本來看看,真的很不錯哦!

E. Vim實踐技巧二:為指定的行末尾批量修改

有一個PHP文件,由於某些原因,每行的最後分號結束符丟失,我們期望將其批量補全。
原數據:

期望數據:

這里涉及兩個問題:
1、只要2-4行需要在末尾添加分號
2、每個行的字元串長度均不一致
解決思路:
1、方式一:通過視圖模式將需要修改的塊進行選中然後批量修改
2、方式二:通過命令行模式追回

步驟:
1、游標在第二起始,按下 ctrl+v 進入視圖模式的塊選擇
2、按下 jj$ ,把需要的塊進行選擇
3、按下 A ,進入修改狀態,輸入 ;
4、按下Esc退出,完成

釋義:
1、 ctrl+v 是進入塊選擇模式
2、 jj 向下選擇兩行, $ 執行到末尾
3、A進行修改模式,輸入自己的需要的內容
4、一定需要按 Esc 退出,完成整個塊的修改

在命令模式下,輸入:

釋義:
1、:normal 可在命令行命令下切換到普通模式
2、在普通模式下,執行 A; 指令,可以在行尾添加一個 ;

F. Vim實踐技巧一:為每行數據前面添加行號

最近在寫Thrift文件時,從其他地方拷貝過來的數據,沒能帶上行號,這樣子得手工一行行添加行號,比較費時費力。
原數據:

期望數據:

這里涉及兩個問題:
1、只要2-4行需要自動添加行號
2、需要在Vim編輯器上執行
解決思路:
1、在Vim命令模式下指定行數
2、通過外部命令Awk可以自動生成行數

在vim的命令行模式輸入:

就可以實現上述目的

釋義:
1、指定行數:2,4
只要2-4行
2、執行外部命令:!awk '{print " "NR":" 2}'
!awk:執行外部命令awk
NR:行數。這里是NR行數與Vim行數不一樣,而是我們輸入的指定內容行行數,即2-4行內容

G. 怎麼用VIM閱讀PDF文件

VIM是文本編輯器,不支持閱讀PDF文件。
要閱讀PDF文件請用Adobe Acrobat XI Pro或Adobe Reader XI 軟體。

閱讀全文

與vim實用技巧pdf相關的資料

熱點內容
背景虛化人物清晰哪個app 瀏覽:655
android開發職位 瀏覽:764
勒索病毒加密文件特徵識別 瀏覽:815
小車控制源碼 瀏覽:9
程序員右手筋脈疼痛沒力 瀏覽:841
手機視頻太大如何壓縮 瀏覽:555
出租伺服器怎麼用 瀏覽:229
鬼六所有的電影 瀏覽:968
java集成spring 瀏覽:352
壯熊警察李鐵峰小說 瀏覽:731
幕川北玩的什麼伺服器 瀏覽:475
男主有病需要喝奶的小說 瀏覽:214
ftp傳文件命令 瀏覽:625
small壓縮 瀏覽:878
小白楊小說完整版免費 瀏覽:912
一本女主叫顧念的小說 瀏覽:155
成人亂小說短篇小說 瀏覽:424
可編程式控制制器輸出開關量介面類型 瀏覽:66
《喪屍高校》 瀏覽:864
7000部藍光電影免費看 瀏覽:985