VI經常使用命令

開發轉向LINUX平臺,用好vi對提升工做效率極有好處。本來在讀大學的時候學過一陣vi,略知皮毛,後來一直在windows平臺上作開發就荒廢了,如今拾起來。vim

把這些命令稍微整理了下,以做個備忘吧。windows


移動光標app

h: 左ide

j: 下開發

k: 上字符串

l: 右it


w: 向右移動一個wordclass

b: 向左移動一個word效率


0: 行首(第一列)vimrc

^: 第一個非空(空格或tab)字符

$: 行尾


H: 移動光標到屏幕頂行(high)

M: 移動光標到屏幕中間(middle)

L: 移動光標到屏幕底部(low)


nG: 移動光標到第n行

gg: 移動光標到文件第一行行首

G: 移動光標到文件最後一行行首


Ctrl+f: 屏幕向文件尾移動一屏

Ctrl+b: 屏幕向文件首移動一屏

Ctrl+u: 屏幕向文件首移動半屏

Ctrl+d: 屏幕向文件尾移動半屏


編輯

i: 在當前字符前面輸入字符: insert

I: 在當前行首插入字符

a: 在當前字符後面輸入字符: append

A: 在當前行尾插入字符

x: 刪除當前字符

r: 以隨後輸入的字符替代當前字符 replace

R: 替換當前字符及其後的字符,直到按ESC

o: 在當前行之下新開一行

O: 在當前行之上新開一行


dw: 刪除當前word

d$: 刪除從當前字符到行尾中間全部的字符

D: 同上

d0: 刪除從當前字符到行首中間全部的字符

d^: 刪除從當前字符到第一個非空字符中間的全部字符

dd: 刪除當前行


ndd:從當前行開始刪除n行. 好比5dd,從當前行開始刪除5行

s: 刪除當前字符並進入插入模式

S: 刪除當前行並進入插入模式


J: 合併行


u: 撤消

Ctrl+r: 撤消


選擇和複製

yy: 複製當前行

nyy: 比從當前行復制n行.好比5yy,從當前行開始複製5行

y$: 複製當前所在字符到行尾

y0: 複製當前所在字符到行首

y^: 複製當前所在字符到第一個非空字符


當前字符按下v,移動光標,選中的字符串會高亮顯示,選中後按y(複製)或d(剪切),而後移動光標到要複製或剪切的目標位置,按p



搜索

/keyword : 搜索keyword

?keyword : 向前搜索keyword

n: 下一個匹配的字符串 next

N: 上一個匹配的字符串


退出

:w 保存文件

:q 退出程序

:q! 強制退出程序,不保存

:wq 保存文件並退出


經常使用設置:

:set number  顯示行號

:set ignorecase 搜索時忽略大小寫

:syntax on

:set ts=4

:set expandtab


能夠在vimrc中作以上的設置,這樣即便退出vim,再次啓動,設置也會保留

相關文章
相關標籤/搜索