標籤:
Vim 的常用操作
一. vim中的尋找替換
修改當前行
:s/str1/str2/
修改當前行的第一個str1為str2
:s/str1/str2/g
修改當前行的所有str1為str2
修改第n行到第m行
:n,ms/str1/str2/
修改第n行到第m行的第一個str1為str2
:n,.s/str1/str2/
修改第n行到當前行的第一個str1為str2
:.,ms/str1/str2/
修改當前行到第m行的第一個str1為str2
:n,$s/str1/str2/
修改第n行到最後一行的第一個str1為str2
ps: 如果是修改行的所有str1為str2,後面加g即可
替換每一行
:%s/str1/str2/
修改每一行的第一個str1為str2
:1,$s/str1/str2/
修改每一行的第一個str1為str2
ps: 如果是修改行的所有str1為str2,後面加g即可
ranges: 上面已經提到了
from: 可以用Regex
to: 要替換成的字元創
flags: 如下所示,這幾個可以組合使用
無 : 只對指定範圍內的第一個匹配項進行替換。g : 對指定範圍內的所有匹配項進行替換。c : 在替換前請求使用者確認。e : 忽略執行過程中的錯誤。
二. vim的常用快速鍵
1. 基本的上下左右
j: 上
k: 下
h: 左
l: 右
2. 翻一頁
ctrl + f:向前翻一頁(forward)
ctrl + b:向後翻一頁(backward)
3. 翻半頁
ctrl + u:向前翻半頁(up)
ctrl + d:向後翻半頁(down)
4. 翻一行
ctrl + e: 向下翻一行
ctrl + y: 向上翻一行
5. 跳轉到函數和變數的定義處
[ + ctrl + i: 跳到定義處
[ + ctrl + d: 跳到#define處
6. 游標的跳轉
ctrl + i: 往前跳
ctrl + o: 往後跳
7. 函數體內的跳轉
[{: 跳到函數體首部
]}: 跳到函數體尾部
[[, ]], {{, }}, 調轉函數體
8. 跳轉單詞
b: go to the [b]eginnig of this word
e: go to the [e]nd of this word
w: go to the start of the following word
1. ctrl + v的選中,通過上下左右命令的調整的選中
2.shift + v模式下的選中
vi( : 選中小括弧中的內容,不包括小括弧
va( : 選中小括弧中的內容,包括小括弧,下同
vi[
va[
vi{
va{
vi‘
va‘
vi"
va"
Vim 的常用操作