幾年前使用vim,在此記錄下Vim的命令以及_Vimrc配置文件vim
:w
#保存(後面加!強制執行)編輯器
:q
#退出(後面加!強制執行,不保存)ui
:wq
#保存並退出命令行
:x
#保存並退出(僅在須要時保存)code
ZZ
#保存並退出orm
ZQ
#退出不保存it
:/
#向下搜索(若是搜索出多個匹配,可按n鍵到下一個)ast
:?
#向上搜索變量
:s/old/new
#替換第一個匹配的sed
:s/old/new/g
#替換整行中匹配的
:%s/old/new/g
#全文件替換全部匹配的
:%s/old/new/gc
#全文件替換匹配的,需確認
:n,ms/old/new/gc
#從n行到m行替換,需確認
:%s/\s\+$//
#去掉全部行尾的空格
:%s/\(\s*\n\)\+/\r/
#去掉全部空白行
r
#替換當前字符
R
#進入replace模式進行編輯,從光標處開始替換
yy
#複製當前行(至關於ddP)
xyy
#把當前行復制到寄存器x
xp
#粘貼寄存器x中的內容
p
#粘貼剪貼闆闆裏(小寫當前位置以後,大寫當前位置以前)
:<Ctrl-r>+
#命令行粘貼
:<Ctrl-r>"
#命令行粘貼
:<Ctrl-f>
或q:
#打開命令行窗口
*
和#
#匹配光標當前所在的單詞,(*
是下一個,#
是上一個)
C
#剪切從光標位置到行尾到剪貼板,並進入插入模式
cc
#剪切當前行並進入插入模式
D
#剪切從光標位置到行尾到剪貼板
dd
#刪除當前行,並把刪除的行存到剪貼
ndd
#刪除當前如下n行
dt"
#刪除全部內容,直到遇到"
dG
#從當前行到最後一行全刪
dnG
#刪除當前行到第n行
s
#剪切當前字符到剪貼板並進入插入模式
S
#刪除光標所在行並進入插入模式
x
#剪切當前字符到剪貼板
cw
#替換從光標所在位置後到一個單詞結尾的字符
a
#在當前光標前插入
A
#在當前行尾插入
i
#在當前光標後插入
I
#在當前行首插入
o
#在當前行的下一行插入一行
O
#在當前行的上一行插入一行
I
=>[ESC]
#按I後插入內容,再按ESC鍵爲每一行生效(Ctrl+q可視塊使用hjkl(或%)來移動光標選擇區域)
k
#向上
j
#向下
h
#向左
l
#向右
\
` #移動到上次編輯位置(去掉\
編輯器問題)
0
#移動到本行行頭
$
#移動到本行行尾
%
#移動到與當前括號匹配的括號處,包括 (, {, [
^
#移動到當前行的第一個非blank字符位置
b
#移動到上一個單詞起始處
B
#移動到上一個單詞起始處,長跳
e
#移動到下一個單詞結尾處
E
#移動到下一個單詞結尾處,長跳
w
#移動到下一個單詞起始處
W
#移動到下一個單詞起始處,長跳
G
#移動到當前文件最後一行
H
#移動光標到屏幕上面
L
#移動光標到屏幕下面
M
#移動光標到屏幕中間
fx
#移動到下一個爲x的字符處
nfx
#移動到當前行當前光標後第n個位置出現的x字符處
tx
#移動到x字符前一個字符處
gt
#移動到下一個標籤頁
gT
#移動到上一個標籤頁
gg
#移動到當前文件第一行
gd
#移動到當前光標所在的變量的聲明處
g_
#移動到本行最後一個不是blank字符的位置
<ctrl-f>
#向上翻一頁
<ctrl-b>
#向下翻一頁
:n
#移動光標到n行
<
或>
#左右縮進
==
#自動縮進當前行
\~\
#大小寫切換(去掉\\
編輯器問題)
.
#小數點重複上一次命令
u
#撤銷
<ctrl-r>
#重作
J
#當前行與下一行合併
V
#按行選擇(v進入可視模式使用hjkl(或%)來移動光標選擇區域)
ga
#顯示當前光標下的字符在使用的encoding下的內碼
qa
#把操做記錄在寄存器a,@a會replay被錄製的宏,@@是一個快捷鍵用來replay最新錄製的宏
:noh
#關閉搜索後高亮效果
:split(sp)
#建立水平分屏
:vsplit(vsp)
#建立垂直分屏
:e <path/to/file>
#打開一個文件
:saveas <path/to/file>
#另存爲 <path/to/file>
:bp
#跳轉到上一個緩衝區
:bn
#跳轉到下一個緩衝區
待續...