vim 使用总结

一、删除操作

1、删除一行dd
2、删除多行:CTRL+V或V进入选择模式,选中后按delete键即可;
3、删除所有内容:命令为:ggdG(比较遗憾的是,删除就无法恢复了)
其中,gg为跳转到文件首行;dG为删除光标所在行以及其下所有行的内容;
4、x向后删除一个字符,X向前删除一个字符

二、选择

1、全选ggvG

三、跳转,翻页

1、跳转至第n行:n或者命令模式下按nG,例如:4G
2、跳转至行尾,按美元符号$
3、跳转至行首,按0
4、跳转至行首的第一个非空白字符^
5、Ctrl+f 向文件尾部翻一屏
6、Ctrl+b 向文件首部翻一屏
7、Ctrl+d 向文件尾部翻半屏
8、Ctrl+u 向文件首部翻半屏
在这里插入图片描述

四、cat 和 sed

1、查看第j行到第k行cat filename | head -n k | tail -n k-j例如,查看第9行到第20行命令为:cat filename | head -n 20 | tail -n 11
2、单独:

    head -n 10 : 前10行
    tail -n 10 : 后10行
    tail -n +10 : 从第10行开始往后

2、sed的使用
查看全部:

sed '' filename

查看5–10行

sed -n '5,10p' filename
从另一文本复制到本文本
    :r! command   “command”的结果插入光标下一行
    :nr! command   “command”的结果插入光标的n行后

例子:

:r! cat filename |head -n 10  把“filename”文件的前10行复制到本文件
从本文本复制到另一文本

(1)把本文件的5~10行复制到“filename”文件的后面:

:5,10 w>> filename

(2)把本文件的5~10行复制到“filename”中,清除“filename”原文件的内容

:5,10 w! filename

五、多文本操作

1、vim中开启另一个文件而不用退出:edit filename,而当前文件还未保存,而你并不想保存使用:edit! filename
,如果你不想现在保存,使用:hide edit filename
2、多文件操作,打开vim filename1 filename2......进入下一个文件的编辑:next,回到前一个文件previous,保存再进入下一个:wnext,不保存进入下一个:next!,保存进入上一个:wprevious,进入第一个:first,进入最后一个:last(这两个没有wlast之类的命令),向后跳两个文件:2next,自动保存:set autowrite,取消自动保存:set noautowrite;此时如果想编辑另外一个文件列表而不退出:args filename1 filename2......取消保存另外开始编辑:args!

六、vim代码攻略

1、注释

python:
1、进入V模式选中要注释的代码
2、Shift+i
3、Shift+#
4、快速esc两下

注释代码的命令:
10-20行#注释

:10,20s/^/#/g

取消注释

:10,200s/#//g

c、c++找错:
1、在~/.vimrc尾加入以下内容:

:set mouse = a

保存退出

c++命令注释
注释10-20行

10,20s#^#//#g

取消注释

:10,20s#^//##g

2、现在假设你正在使用vim编辑一个名叫test.c的程序,那么进入命令模式,输入:cope
再输入make test即可。双击错误的地方即可自动跳转;

2、代码缩进缩出

按v(或V)进入visual状态,选择多行,用>或<缩进或缩出

七、分屏操作

1、上下分屏:sp,跳转CTRL+W+方向键,打开文件:e filename
或::split
2、左右分屏:vsp跳转CTRL+WW,打开文件:e filename
或::vsplit
3、只留当前窗口only,关闭全部窗口,没保存的不会被关闭:qall,全部保存:wall,全部(不)保存再退出(:qall!):wqall
4、为每个文件打开一个窗口
(上下)

vim -o one.txt two.txt three.txt

左右

vim -O one.txt two.txt three.txt

5、改变窗口的大小
CTRL W -:减小窗口,其实CTRL -更方便
CTRL W +:增大窗口,CTRL +更方便,当然这个加号需要按shift键。
CTRL W =:所有屏幕尺寸保持一致(平分窗口),按住CTRL和w后松开,再去按=。
在鼠标模式下可以拉动间隔线来改变窗口大小
6、移动窗口位置
ctrl_w + r: 窗口本身顺时针 (向下, 向右 移动), R : 则是逆时针反方向(向上, 向左)移动.
ctrl_w+x: 左右上下对应位置的窗口 对调.
要注意窗口必须是 对应的, 如果不对应将无法对换, 比如左边一个大窗口, 右边有两个小的 子窗口, 则左右不能互换.
7、取消分屏
CTRL w ,c
8、光标移动
ctrl+w

k 上
j 下
l 右
h 左
w 下一屏  

八、使用vim找出文件差异(vimdiff)

vimdiff filename1 filename2

注:将行列排列好更清晰,特别是对比两个文本的大小写、是否缺漏字符方面很方便;

九、 鼠标模式的开启与关闭

开启

:set mouse=a

关闭

:set mouse=

十、查找

1、命令模式下
在这里插入图片描述
2、匹配括号
将光标放在对应括号出,按下%匹配对应的括号,再按返回当前括号。

十一、正则表达式使用

1、\r换行,不是\n
:%s/,/\r/g表示将全文的逗号全部转换为换行

其他

1、vim下查看当前目录及当前目录下的文件

:!ls

2、读某个文件

:r filename
# :r name.py

在终端输入man vim即可查看帮助;
在终端输入vimtutor即可查看教程;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值