VIM基本操作

VIM操作


移动

h
j
k
l

正常模式

ESC 正常模式

如果按一次不行就多按几次

退出

:q 退出
:q! 丢弃所有的改动,强制退出

插入

i 在当前字符的左边插入
I 在当前行首插入
a 在当前字符的右边插入
A 在当前行尾插入
o 在当前行下面插入一个新行
O 在当前行上面插入一个新行
c{motion} 删除 motion 命令跨过的字符,并且进入插入模式
d{motion} 删除 motion 命令跨过的字符

常用命令(motion)

fx 移动光标到当前行的下一个 x 处
tx 移动光标到当前行的下一个 x 处,但是是移动到 x 的左边一个位置
FX 移动光标到当前行的上一个 x 处
TX 移动光标到当前行的上一个 x 处,但是是移动到 x 的左边一个位置
w 光标往后移动一个词
0 移动光标到当前行首。(是数字0)
^ 移动光标到当前行的第一个字母位置
$ 移动光标到行尾
) 移动光标到下一个句子
( 移动光标到上一个句子
ggVG 全选gg移动到顶部vG或者VG全部选中高亮
ggyG 全选复制gg移动到顶部yG全部复制
ggdG 全选删除gg移动到顶部dG全部删除

整个文件里面有效移动光标

Ctrl-f 向下移动一屏
Ctrl-d 向下移动半屏
Ctrl-b 向上移动一屏
Ctrl-u 向上移动半屏
G 到文件尾
numG 移动光标到指定的行(num)
gg 到文件首H:移动光标到屏幕上面
M 移动光标到屏幕中间
L 移动光标到屏幕下面
* 读取光标处的字符串,并且移动光标到它再次出现的地方
# 读取光标处的字符串,并且移动光标到它再次出现的地方(方向相反)
/text 从当前光标处开始搜索字符串 text,并且到达 text 出现的地方。必须使用回车来开始这个搜索命令。如果想重复上次的搜索的话,按 n移动到下个 text 处,N 移动到上一个 text 处
?text 从当前光标处开始搜索字符串 text,并且到达 text 出现的地方。必须使用回车来开始这个搜索命令。如果想重复上次的搜索的话,按 n移动到下个 text 处,N 移动到上一个 text 处
m{a-z} 在当前光标的位置标记一个书签,名字为 a-z 的单个字母。书签名只能是小写字母。你看不见书签的存在,但它确实已经在那里了
`a 到书签 a 处。注意这个不是单引号,它一般位于大部分键盘的 1 的左边
`. 到你上次编辑文件的地方。这个命令很有用,而且你不用自己去标记它
%. 在成对的括号等符号间移动,比如成对的 [ ] , { }, ( ) 之间。将光标放到任意符号上,然后通过 % 来移动到和这个符号匹配的符号上,% 还可以正确的识别括号的嵌套层数,总是移动到真正匹配的位置上。因此这个命令在编辑程序代码的时候非常有用,可以让你方便的在一段代码的头尾间移动

有效的移动大段的文本

v 按字符选择。经常使用的模式,所以亲自尝试一下它
V 按行选择。这在你想拷贝或者移动很多行的文本的时候特别有用
C-V 按块选择。非常强大,只在很少的编辑器中才有这样的功能。你可以选择一个矩形块,并且在这个矩形里面的文本会被高亮

剪切和拷贝

d 剪贴选择的内容到剪贴板
y 拷贝选择的内容到剪贴板
c 剪贴选择的内容到剪贴板并且进入插入模式
d{motion} 剪切 motion 命令跨过的字符到剪贴板。比如,dw 会剪切一个词而 dfS 会将从当前光标到下一个 S 之间的字符剪切至剪贴板
y{motion} 和上面类似,不过是拷贝
c{motion} 和 d{motion} 类似,不过最后进入插入模式
dd 剪切当前行
yy 拷贝当前行
cc 剪切当前行并且进入插入模式
D 剪切从光标位置到行尾到剪贴板
Y 拷贝当前行
C 和 D 类似,最后进入插入模式。
x 剪切当前字符到剪贴板
s 和x类似,不过最后进入插入模式
## 粘贴
p 粘贴

使用多重剪贴板

":reg" 比如:我们要拷贝当前行到寄存器 k。你应该按 “kyy

避免重复

. 命令 在 VI 里面,输入 . (小数点符号),将会重复你输入的上一个命令。比如,你上个命令为“dw”(删除一个词),VI 将会接着再删除一个词。

配置

. 设置缩进 :set smartindent
. 显示光标行列信息 :set ruler
. 查看制表符 :set list
. 查看行数信息 set number
. 关键字高亮 :syntax on
. 多文件编辑 : split two.c

常用操作

  • 选中一个单词
ve
  • 选中一个单词复制
vey
  • 选中一个单词粘贴
vep
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值