Vim常用配置

替换

语法为 :[addr]s/源字符串/目的字符串/[option]
全局替换命令为::%s/源字符串/目的字符串/g
[addr] 表示检索范围,省略时表示当前行。
如:“1,20” :表示从第1行到20行;
“%” :表示整个文件,同“1,$”;
“. ,$” :从当前行到文件尾;
s : 表示替换操作
[option] : 表示操作类型
如:g 表示全局替换;
c 表示进行确认
p 表示替代结果逐行显示(Ctrl + L恢复屏幕);
省略option时仅对每行第一个匹配串进行替换;

复制(y),删除(d)一对( )、[ ]、{}中的内容

a、先让光标放在在 ( 上
b、按下y%---->此时内容已被选中
c、按下p,即可在指定位置粘贴内容

3、实现全选:
a、按下gg V G --> 即可全部选中(并且会高亮显示)

常见的set命令

:set num --显示行数
:set fileenconding --显示文件编码格式
:set hlsearch --设置高亮搜索
:nohlsearch --不高亮搜索
:set list ---显示换行符,制表符等


. :可重复前面的操作
u :可以撤销前面的操作
ctr + r: 重做
D(d$) : 可以直接删除到结尾
5j:可以向下移动5行
5k: 向上


v:可以按字符可视化选择
V:可以按照行进行选择
:5  可以直接到第5行
:split 将当前文件水平分成2屏
:vsplit   将当前文件垂直分成2屏
ctrl + w + h/j/k/l   在不同的窗口之间切换
ctrl + ww  也可以在窗口间切换
:e  fileName ----> 在当前窗口,打开另外一个文件
ctl + 6 ---->  可以在不同的文件间进行切换

:E --->可以方便的切换目录查看文件
:ls ---->可以查看当前缓冲区中的文件
:buffer n ---->可以随意切换到一个缓冲文件
:bn ----> 下一个文件
:bp -----> 上一个文件


:He --->将当前窗口上下分屏(可以另外打开文件)
:Ve----->将当前窗口左右分屏(可以另外打开文件)
:Te------> 将当前窗口像浏览器一样分tab浏览

分屏之间的移动:
Ctrl + w, w 后一个
Ctrl + w, p 前一个
Ctrl + w, h 四个方向
Ctrl + w, i
Ctrl + w, k
Ctrl + w, l

关闭当前屏: Ctrl+w,c
关闭其他屏: Ctrl + w, o


guu ---> 把一行的文字变成全小写。或是【Vu】
gUU ---> 把一行的文件变成全大写。或是【VU】
v --->键进入选择模式,然后移动光标选择你要的文本,按【u】转小写,按【U】转大写
ga ---> 查看光标处字符的ascii码
g8 ---> 查看光标处字符的utf-8编码


在/etc/vimrc 或者 ~/.vimrc 中,设置对齐和tab建都为四个空格
set sw=4 # 设置对齐为4个字符
set ts=4 # 设置tab建为4个字符
set expandtab #可以将tab建设置为4个空格

对于已保存的文件,可以使用下面的方法进行空格和TAB的替换:
TAB替换为空格:
:set ts=4
:set expandtab
:%retab!

空格替换为TAB:
:set ts=4
:set noexpandtab
:%retab!
加!是用于处理非空白字符之后的TAB,即所有的TAB,若不加!,则只处理行首的TAB。


`. ----> 可以快速定位到最近一次修改的地方(并再进行编辑)
'. ----> 可以快速定位到最近一次修改的地方(不会再编辑)


set bomb? ----> 可以确定文件中是否带有bomb
set nobomb ----> 可以去掉文件中的BOM头

超强的命令

fa -----> 找到下一个是a的字符 (find)
3fa -----> 找到后面第3次出现a的字符

ta -----> 到a之前的字符(to)
dt< -----> 这样就可以删除标签之间的内容

y2/foo -----> 拷贝到2个foo之间的字符串


:set invlist ---->可以查看隐藏字符: $表示换行符; ^I表示制表符
:set nolist ---> 可以不显示隐藏字符

删除

指定删除多少行
:x,.d #从x行删除到当前行
:.,xd #从当前行删除到x行
:x,.+3d #从x行删除到当前行后第三行
:x,.-1d #从x行删除到当前行前一行

删除包含特定字符的行:
g/pattern/d

调换2个字符位置

xp: x剪切, p在光标后面粘贴,组合的效果就是调换位置
ddp: 交换上下两行的位置

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 9,953评论 0 5
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,942评论 9 468
  • 在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行。你可...
    三十儿阅读 3,110评论 0 1
  • 目录(?)[-] 关于Vim 1 Vim的几种模式 启动Vim 文档操作 光标的移动 1 基本移动 2 翻屏 3 ...
    SunnyLeong阅读 12,844评论 0 32
  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 12,592评论 1 19