vim快速鍵,及vimrc的簡單設定

來源:互聯網
上載者:User

標籤:vim   快速鍵   vi   

1) 游標的移動
H 游標移動到螢幕的頂行行首
M 游標移動到螢幕的中間行行首
L 游標移動到螢幕的末行行尾

0   游標移動到當前行行首
$ 游標移動到當前行行尾
G 游標移動到當前行行首
gg  游標移動到首行行首
nG 游標下移N行(包括當前行)至行尾
n+ 游標下移N行(包括當前行)至行首
n- 游標上移N行(包括當前行)至行首
%    先吧游標停留在 ”{” 或者 “}” 能直接移動到與當前括號對稱的另一個大括弧


| 列
n| 游標移動到當前行的第n列


注意:vim是區分大小寫,H等價於Shift + h,也就是H和h是不同的命令!


小提示:
游標的移動可以和刪除命令和複製複製命令一起使用!!
       如:
d + 2 G 等價於刪除從游標開始到第2行的所有內容
y + 2 G等價於複製從游標開始到第2行的所有內容
d + % 刪除塊中的所有內容
同理:d + gg 和 d+ G是什麼作用?


2) 翻滾螢幕


Ctrl + u 向檔案首方向翻滾半螢幕
Ctrl + d 向檔案尾方向翻滾半螢幕
Ctrl + b 向檔案首方向翻滾一個螢幕
Ctrl + f 向檔案尾方向翻滾一個螢幕


Ctrl + g 列出游標所在行的行號, 檔案名稱, %n
Ctrl + p 調用外掛程式補全單詞快速鍵pattern
Ctrl + r 恢複


3)插入文本


i 從游標前面插入
I 從游標所在行的行首插入
a 從游標後面面插入
A 從游標所在行的末尾插入
o 從游標所在行的下一行插入(新增一行)
O 從游標所在行的上一行插入(新增一行)
r 替換游標所在處的字元
nr 替換游標所在處以及後面的n個字元
R 進入替換狀態,直到按下ESC結束


提示:很多初學者一般只會用 i ,但I A o也挺重要的,可以大大減少我們移動游標的次數!!


4) 刪除文本


x 刪除從當前位置開始的個字元,含游標所指字元
X 從當前位置開始向前刪除字元,不包含所指字元
NX
NX
D$ 刪除到行尾
D0 刪除到行首
dw
dn


dd
ndd


5)複製 粘帖 移動


yy
nyy
yw
p


:n1, n2 co n3  複製
:n1, n2 m  n3  粘帖


n1表示哪一行,n2表示從n1往下修改多少行(包含n1) 一個>表示一個\t
:n1 > n2 
:n1 < n2
:n1 >> n2
:n1 << n2


6) 尋找和替換


/ 從當前的位置開始向檔案末尾方向搜尋
? 從當前的位置開始向檔案開始方向搜尋
n 沿著相同的方向繼續尋找
N 沿著相反的方向繼續尋找


不加g表示之替換行的地一個
:s/old/new
:s/old/new/g
n1,p2/old/new/g 將地n1行到n2行所有的old替換為new
:0,$ s/old/new/g 0和$表示從首行到末行
:%s/old/new/g %表示全部行,加g表示全部替換,不加g只替換全部行的第一個


7) 撤銷和重複


u 撤銷先前的命令,一直往前撤銷
U 修正先前的一條撤銷命令
:undo 撤銷先前的命令
. 重複編輯狀態中最後一次輸入
Ctrl + r 撤銷剛才所做的撤銷操作(還原撤銷狀態)


8) 基本底行命令


:q
:q!
:w
:w! 儲存唯讀檔案, 強制儲存
:wq
:x
ZZ


:e file_name 在當前vi檔案中歐給你開啟一個新的檔案,原來的檔案會被關閉
:e! load 重新載入當前檔案,之前的修改會被全部放棄
:new 開啟一個新的檔案, 原來的檔案不會被關閉,分頁顯示


:! 不離開vi環境執行shell命令
:n 跳轉到第n行


9) 設定選項
:set all 顯示所有的選項當前
:set autoindent/noautoindent 自動縮排/不自動縮排
:set ai / noai
syntax on / off 文法加亮
set st = 4
set ts = 4


設定檔(伸手黨直接看這)


vi ~/.vimrc(首先開啟目前使用者的vimrc設定檔)


C++風格的縮減格式,用下面的命令開啟設定檔後,把下面的英文複製進去,儲存退出即可


set cindent
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
set number              " Show line number
set tabstop=4
set softtabstop=4
set autoindent
set shiftwidth=4
if &term=="xterm"
set t_Co=8
             set t_Sb=^[[4%dm
    set t_Sf=^[[3%dm
    endif


10) 較常用的命令
S 修改游標所在行的內容,原來的內容會被刪除
C 刪除游標所在行後面的內容並切換到輸入狀態,如1234567,游標停留在4,S後只有123
K     和!作用一樣
J 把游標所在行的和游標下一行串連在一起
:split + 檔案名稱 開啟另一個檔案,2個檔案公用一個視窗,以水平分屏顯示

:vplit + 檔案名稱 同上,以垂直分屏顯示


最後送上一張比較基經典的圖片



vim快速鍵,及vimrc的簡單設定

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.