最簡單和精緻的VIM學習入門 帶助記方法

2021-09-25 17:38:33 字數 3562 閱讀 2152

一、移動游標

vim使用h、j、k和l鍵來移動游標,對應的方向依次為向左、向下、向上和向右。按照正式的說法,這樣可以保證雙手不離開鍵盤區域,從而提高輸入效率。可以這樣加快記憶:我們的右手食指在鍵盤上的初始位置是j鍵,一般而言,我們在閱讀或者編輯文件時最常用的方向鍵就是向下,所以將j鍵設為向下鍵是最為合適的,將右邊與其相鄰的k鍵設定為向上鍵,也實現了同樣的方便。當游標需要向左移動時,我們的右手食指也要向左移動,這兩個方向是一致的。向右鍵的使用頻率比向左鍵高一些,因此設定為無名指直接接觸的l鍵。

二、如何退出vim

1.不儲存而退出,即強制退出。:q! (助記:quit   !(非) 儲存 )

2.儲存並退出。:wq (助記:write quit) 或  按住,再按兩次z鍵

三、刪除類命令

1.刪除游標所在位置的字元:x (助記:像剪刀剪掉,同delete)。將游標置於要刪除的字元所在的位置,再按x鍵即可。

2.刪除從游標所在位置到乙個單字/單詞末尾的所有字元:dw( 助記:delete word)。注意:由於英文中每個單詞之間有空格但漢語中漢字之間沒有空格,而vim中的命令對單字/單詞的理解是以空格為界限的,所以對一行漢語執行此命令時,會將游標所在位置至游標所在行的所有字元刪除,效果與d$命令一樣。

3.刪除從游標所在位置至游標所在行末的所有字元:d$。

4.刪除游標所在行的所有字元:dd (助記:delete delete  兩個刪除,刪除全行)。處於游標左邊的本行字元也會被刪除。

四、插入類命令

1.在游標所在位置之前插入:i   ; 在當前行行首插入:i 。

2.在游標所在位置之後插入:a  ;在當前行行尾插入:a 。

助記(i或i -> insert  before  ;a 或 a -> inset after )

五、複製、剪下和貼上命令

1.複製和貼上

普通模式中使用y複製

yy   複製游標所在的整行(3yy表示複製3行)y^   複製至行首,或y0。不含游標所在處字元。y$   複製至行尾。含游標所在處字元。yw   複製乙個單詞。y2w  複製兩個單詞。yg   複製至文字末。y1g  複製至文字開頭。3yy表示複製3行)

y^   複製至行首,或y0。不含游標所在處字元。

y$   複製至行尾。含游標所在處字元。

yw   複製乙個單詞。

y2w  複製兩個單詞。

yg   複製至文字末。

y1g  複製至文字開頭。

普通模式中使用p貼上

p(小寫):代表貼上至游標後(下邊,右邊)p(大寫):代表貼上至游標前(上邊,左邊)

2.剪下和貼上

dd    其實就是剪下命令,剪下當前行ddp   剪下當前行並貼上,可實現當前行和下一行調換位置正常模式下按v(逐字)或v(逐行)進入可視模式然後用jklh命令移動即可選擇某些行或字元,再按d即可剪下ndd 剪下當前行之後的n行。利用p命令可以對剪下的內容進行貼上:1,10d 將1-10行剪下。利用p命令可將剪下後的內容進行貼上。:1, 10 m 20 將第1-10行移動到第20行之後。

正常模式下按v(逐字)或v(逐行)進入可視模式

然後用jklh命令移動即可選擇某些行或字元,再按d即可剪下

ndd 剪下當前行之後的n行。利用p命令可以對剪下的內容進行貼上

:1,10d 將1-10行剪下。利用p命令可將剪下後的內容進行貼上。

:1, 10 m 20 將第1-10行移動到第20行之後。

六、開啟類命令

1.在游標所在行的下方開啟新的一行並進入插入模式:o(助記:小寫字母,無需上檔鍵)。

2.在游標所在行的上方開啟新的一行並進入插入模式:o (助記:大寫字母在按shift,上檔鍵,上方插入空行)。

七、更換類命令

1.改變從游標所在位置到游標所在單詞/單字末尾的所有字元,並進入插入模式:cw。

2.改變從游標所在位置到游標所在行的所有字元,並進入插入模式:c$。

八、替換類命令

1.替換游標所在位置的字元:r。讓游標處於將要被替換的字元所在的位置,按下r,並鍵入新的字元。

2.連續替換游標所在位置後的字元:r。

(助記:r 或 r -> replace )

九、修正錯誤的命令之一

1.將游標所在行第乙個old字元替換為new字元。:s /old/new

2.將游標所在行內所有old字元替換為new字元。:s /old/new/g

3.將兩行之間的所有old字元替換為new字元,#指行號。:#,# s /old/new/g

4.將檔案內所有old字元替換為new字元。:% s/old/new/g

5.將檔案內所有old字元替換為new字元,並在替換時詢問是否確認替換。:% s/old/new/gc

十、置入類命令

將最後一次刪除的內容置入游標之後:p。

一、撤銷類命令

1.撤銷最後執行的命令:u  (助記:un do)。

2.撤銷對整行的所有操作:u。

3.恢復撤銷的命令:ctrl-r (助記:redo) 。

二、定位及獲取檔案狀態

1.顯示游標所在行的位置及檔案狀態資訊:ctrl-g  (助記:go)。

2.直接跳轉到指定的行:shift-g。先鍵入行數,再按下shift-g。

三、查詢配對括號

查詢游標所在括號的配對括號:%。按下%後游標會自動跳轉到配對的括號處,再按一次,跳回到原括號處。

四、搜尋類命令

五、儲存檔案

1.將對檔案的改動儲存到檔案中。:w filename

2.儲存檔案的部分內容,#指行號。:#,# w filename

六、提取和合併檔案

在當前檔案游標所在處插入另外的檔案內容。:r filename

七、在vim內執行外部命令

:! command

八、設定類命令

:set command

九、命令與物件

vim中的命令遵從一定的格式,下面以刪除命令(d)為例進行說明。

[number] d object 或者 d [number] object

number指執行命令的次數,可選,預設設定為1。d代表刪除,是命令名。object指命令所要操作的物件。對d而言包括:w(從當前游標到單詞/單字末尾,包括空格)、e(從當前游標到單詞/單字末尾,不包括空格)和$(從當前游標到當前行末)。

參考:vim 移動操作詳細說明

學會這21條,你離vim大神就不遠了

vim 學習

vim最簡單的補全方式

早就知道vim的ypm,但是覺得配置簡直太磨人了,本著夠用好用就行的原則,找到了vim auto popmenu,想要配置簡單的同學,可以直接c c,c v即可,對配置檔案有潔癖的同學請看官方 0 原生自動補全 其實vim本身自帶自動補全,但是不知道什麼原因,自動補全不是自動彈出的那種,能從當前檔案...

最簡單的linux命令入門

最簡單的linux命令 1 基本 uname 2 目錄命令 ls 列出目錄內容 ls l pwd 列印當前目錄 cd 切換目錄 cd.上級目錄 cd 根目錄 mkdir 建立目錄 rm r 刪除目錄 cp r 複製目錄 3 u盤操作 lsblk 列出裝置 比如從u盤拷貝東西 dd 4 超級使用者 s...

史上最簡單的帶流控功能的http server

yes,that s it 總共三十幾行 bytes per second用於指定每秒傳輸的最大位元組數。127.0.0.1 是伺服器監聽的ip。8000為http server監聽的port。這就是為什麼寫python程式是一種享受的原因。號稱battery include的python,人用人愛...