vim study

Vim 第一步

移动光标

移动:hjkl ##删除

删除一个字符:x

删除一行:dd

删除换行符:J

撤销和重做

撤销:u(ndo)

重做:CTRL+R(edo)

撤销一行:U(ndo)

其他编辑命令

追加:在一行的末尾添加,a(dd)

在当前行下面新起一行:o

在当前行上面新起一行:O

使用命令计数:数字+命令,如3x

退出

退出:ZZ

放弃修改:’:q!’

帮助:’:help’,使用CTRL+]跳转,CTRL+T回到以前地方,CTRL+O(lder)也可回到以前地方

移动

单词为单位移动

移动到下一个单词首字母:w(ord)

移动到下一个单词尾字母:e(nd)

移动到前一个单词首字母:b(ack)

移动到前一个单词尾字母:ge

查看单词定义:isKeyword选项

移动行首和行尾

行首:^,0,

行尾:$,

移动到指定字符

前向查找:f(ind)或t(o),如查找字符x,使用fx

后向操作:F或T

都可以使用’;’或’,’重复

匹配括号跳转

匹配括号跳转:%

括号定义:matchparis

移动到指定行

移动到指定行:G,如45G

移动到末尾:G

移动到开头:gg

移动百分比:20%或50%

移动到屏幕顶部:H(ome),中间:M(iddle),末尾:L(ast)

显示当前行

显示当前位置:CTRL+G

显示行号:’:set number’

显示光标位置:’:set ruler’

滚屏

向下滚动半屏:CTRL+D(own)

向上滚动半屏:CTRL+U(p)

向上滚动一行:CTRL+E(xtra)

向下滚动一行:CTRL+Y

向前滚动整屏:CTRL+F(orward)

向后滚动整屏:CTRL+B(ack)

屏幕正中间:zz

屏幕最顶边:zt

屏幕最低边:zb

简单搜索

搜索:/搜索文本(查找a,/a),下一个位置:n,

反向搜索:?,前一个位置:N

忽略大小写:‘’:set (no)ignorecase’

搜索当前单词:,非全字匹配为g

反向搜索当前单词:#,非全字匹配为g#

全字匹配:/<搜索文本>

高亮搜索结果:’:set hlsearch’

临时关闭高亮:’nohlsearch’

输入时搜索:’:set incsearch’

使用标记

使用命令后跳转到出发地点:``

标记:m标记,如ma

跳转到标记:标记,如a

查看标记列表:’:marks’

小幅改动

操作符命令和位移

操作符+位移,如d4w为删除4个单词,d$为删除当前位置到末尾

改变文本

改变命令:c,如c4w为先删除2个单词,再进入插入模式

快捷命令

x 代表dl

X 代表dh

D 代表d$

C 代表c$

s 代表cl

S 代表cc

替换文本:r

重复改动

重复:’.’,除了u命令和CTRL+R和以冒号开头命令

Visual模式

单行选择多个字符:v

多行选择:V

矩形选择:CTRL+V,o和O改变选择范围

移动文本

被删除的文本都被存储,使用p放置在光标之后,使用P放置在光标之前。

复制文本

复制:y,如y2w复制2个单词

复制一行:yy

使用剪切板

复制:”*y

粘贴:”*p

文本对象

操作符命令+文本对象

文本对象:如aw(a word)表示一个单词,daw表示删除一个单词;

as(a sentence)表示一个句子;is(Inner Sentence)

替换模式

替换模式:R

结论

操作符命令+位移命令

操作命令:operator