8000 GitHub - anguspan/learnvim
[go: up one dir, main page]

Skip to content

anguspan/learnvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

0 选择

v        按字符行选择
V        按行选择 
Ctrl + v 按列选择
ggVG     全选  gg 表示跳转到文档开始,V表示按行选择,G表示跳转到文档结尾
y 将选择的文本复制到粘贴板中
p 将粘贴板中的内容粘贴到文档光标后
P 将粘贴板中的内容粘贴到文档光标前
yy 表示复制当前行
d 删除 并且将删除的内容放到粘贴板中
3p 表示执行3次粘贴
yw 复制当前单词

1 删除

x  删除一个字符 
dd 删除一行
J  两行合并为一行
u  撤销
ctrl + R 重做(和u是反动作)
.  重复做你修改的
diw 删除当前光标所在的word(不包括空白字符) 
daw 删除当前光标所在的word(包括空白字符)
dgg 删除当前行到文档开始的内容
dG  删除当前行到文档结束的内容

2 插入

i  当前光标插入编辑文本
a  当前光标后插入编辑文本
o  当前光标行后新插入一行编辑文本
O  当前光标前新插入一行编辑文本

3 退出

ZZ  保存退出
:x  保存退出
:wq 保存退出
:q! 不保存退出
:q  退出
:e! 放弃所有修改重新加载原始内容

4 光标移动

w 按单词向下移动光
71D0

b 按单词向上移动光标
e 光标移动到单词的最后一个字符 
$ 光标移动到行未
^ 光标移动到非空白行首
0 光标移动到行首
gg 文档首行
G 文档结尾行
h 光标向左一个字符
l 光标向左一个字符
k 光标向上移动一行
j 光标向下移动一行
M 光标移动到屏幕中间行
fx 在当前行查找下一字符x
Fx 在当前行查找上一字符x
tx 在当前行查找下一字符x,当光标停留在x字符前一个字符
Tx 在当前行查找上一字符x,当光标停留在x字符下一个字符
% 括号匹配跳转( 小括号) [中括号] {大括号}
10% 光标移动文档10%处 
30% 光标移动文档30%处
50% 光标移动文档50%处
70% 光标移动文档70%处
90% 光标移动文档90%处
H 屏幕首行
M 屏幕中间行
L 屏幕尾行
ctrl + u 屏幕向上滚动半屏幕
ctrl + d 屏幕向下滚动半屏幕
ctrl + e 屏幕向下滚动一行
ctrl + y 屏幕向上滚动一行
ctrl + f 屏幕向下移动一个屏幕
ctrl + b 屏幕返回移动一个屏幕
zz  使当前行移动到屏幕中间
zt  使当前行移动到屏幕顶端 
zb  使当前行移动到屏幕底端
`` 跳到刚才出发的地方
ctrl + o 跳转至光标更早停了的地方
ctrl + i 跳转到光标更新的地方
ma 将光标所在位置子定义标记,m表示marks意思,a-z 26个字母表示位置,
'a 表示跳转到标记a的行首
·a 表示跳转到标记a的精确位置
:marks 查看标记列表

5 行号

ctrl + g  屏幕下面显示光标所在的行及所在文档百分比等信息
:set number 让文档显示行号
:set nu 让文档显示行号
:set nonumber 取消文档显示行号
:set nonu 取消文档显示行号
:set ruler  屏幕右下角显示光标位置
:set noruler 取消屏幕右下角显示光标位置

6 查找

/string 查找string字符串
n 表示查找下一个
N 表示查找上一个
?string 查找string字符串
n 表示查找上一个
N 表示查找下一个
/the\> 查找the 按单词结尾进行匹配  可以匹配 “the“,"anguthe"  但不能匹配”there“  
/\<the 查找the 按单词开始进行匹配  可以匹配 “the“,"there"  但不能匹配”anguthe“
/\<the\> 查找the 按单词开始进行匹配 只匹配”the“单词,不能匹配到”anguthe“,”there“
:set ignorecase  忽略大小写
:set noignorecase 不忽略大小写
:set hlsearch 高亮查找
:set nohlsearch 取消高亮查找

7 改变

c 改变文本
cw 改变一个单词,即先先删除该单词并在光标位置改为插入模式
cc 改变当前行
c$ 改变到行尾
x  ==> dl
X  ==> d$
C  ==> c$
s  ==> cl
S  ==> cc 
r 替换单个字符
4r 不四个字符替换为一个字符

8 编辑文档

:edit foo.txt 编辑另一个文档
:e foo.txt    编辑另一个文档 缩写
vim one.c two.c three.c 编辑使用
:next 或:n  表示编辑下一文档
:wnext 或:wn 表示编辑上一个文档
:args 显示正在编辑当前文档名称
:args five.c six.c seven.c 表示还需要编辑这三个文件 
:previous 或 :prev 表示回到上一个文件
:wprevious 或 :wprev 表示回到上一个文件 合并保存
:last 移动到最后一个文件 
:wlast 保存当前文档并移动到最后一个 
:first 移动到第一个文件
:wfirst 保存当前文档并移动到第一个 
:set autowrite 或 :set aw 表示自动把内容写回到文档中
ctrl + ^  切换文档
ctrl + w  切换文档
vim -R file 只读打开
vim -M file 只读打开
:sav(eas) move.c 将现有的文档存储为新的文件
:f(ile) move.c 改变当前正在编辑的文件名,但不保存该文件
:split 上下分割窗口,用 ctrl + w切换窗口 
:vsplit 左右分割窗口,用 ctrl + w切换窗口 
:new 在当前上新建一个窗口
:vnew 在当前窗口左新建一个窗口
:close 关闭窗口,但不能关闭最后一个窗口
:only 关闭除当前窗口外的所有窗口
ctrl + wh 移动到左边窗口
ctrl + wj 移动到下边窗口
ctrl + wk 移动到上边窗口
ctrl + wl 移动到右边窗口
ctrl + wt 移动到顶部窗口
ctrl + wb 移动到底部窗口
:qall    退出所有窗口
:wall    保存所有窗口
:wqall   退出并保存所有窗口
vim -o one.c two.c three.c  窗口分上下打开
vim -O one.c two.c three.c  窗口分左右打开
vimdiff  one.c two.c 左右对比文档不同

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0