
vim的好处(四大好处)
vim具有大量的操作技巧,编辑能力强大且速度比其他工具快的多!
(这里举个简单的小例子:将每行的前四个字母复制到每行的末尾; 将文本中的所有word替换为words; 等等很多看起来人力操作十分困难的编辑,vim几个字母就搞定!)vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计!
有太多 Linux 上面的指令都默认使用 vim 作为数据编辑的接口,所以必须要会 vim ,否则很多指令你根本就无法操作!
所有的 Unix Like 系统都会内建 vim 文书编辑器,其他的文书编辑器则不一定会存在!
vim配置文件
最好只配置当前用户下的配置文件:
1. cp /usr/share/vim/vimrc ~/.vimrc 先复制一份vim配置模板到个人目录下
2. vi 该文件 在末尾加上相应功能
set nocompatible "去掉有关vi一致性模式,避免以前版本的bug和局限
set nu! "显示行号
syntax on "语法高亮度显示
set autoindent "vim使用自动对齐,也就是把当前行的对齐格式应用到下一行(自动缩进)
set tabstop=4 "设置tab键为4个空格
set ai! " 设置自动缩进
set backspace=2 " 设置退格键可用
vim常用命令总结
俗话说:”好记性不如烂笔头,熟能生巧“
下面本人以实操为基础来进行vim的命令总结(按照常用频率排序)
-
设定是否显示行号
:set nu :set nonu
-
修改完之后,突然反悔了,要全部复原,有哪些方法?
一直按u回滚 或者 :q! 强制不保存退出
-
跳到制指定行(n行为例)
nG 或者 ngg gg为跳到首行,G为跳到尾行
-
查看第43行第59个字符是什么
43G 59->
-
搜寻文本中的第一个’gzip‘这个字符串
gg /gzip
-
将 29 到 41 列之间的『小写 man 字符串』改为『大写 MAN 字符串』,并且一个一个挑选是否需要修改
:29,41s/man/MAN/gc 如果后面是g则在取代前不显示提示字符给用户确认 (confirm) 是否需要取代!
其中1,$s为从第一行到最后一行 :1,$s/ /tab 将文件中的四个空格全部替换为tab
(python脚本时经常用到) -
将第9行至第15行的数据,复制到第16行
:9,15 copy 16 或者 9,15 co 16
nyy 复制当前光标下面n行
p 粘贴光标下一行 -
删除多行
:m,nd dd表示删除当前行,yy表示复制当前行
-
在多行行首添加删除字符(以全文添加注释为例)
先ctrl+v 进入块编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来
然后按大写的I,再插入注释符,比如"#" I表示在当前光标前插入,i表示在当前光标后插入
最后按Esc即可 -
移动到这一列的最前面字符处
0(移到整行最前面) ^(移到整行第一个字母,不算空格) $(移动到这一列的最后面字符处)
-
屏幕『向下』移动一页,相当于 [Page Down]按键
[Ctrl] + [f] [Ctrl] + [b]表示屏幕『向上』移动一页,相当于 [Page Up] 按键
-
在目前光标所在的下一列处插入新的一列
o O为在目前光标所在处的上一列插入新的一列
-
多窗口功能
:sp {filename} 若无{filename}出现的则是同一个文件在两个窗口间
ctrl + w + w 窗口间切换 -
自动补齐功能
ctrl + n