VimNote - juedaiyuer/researchNote GitHub Wiki

Vim使用笔记

显示行号

#命令模式
set nu
set nonu 取消行号

插入命令

简约记忆-a,i,o
大小写有区分

定位命令

gg		回到第一行
G		到最后一行
nG/:n	到第n行
$		行尾 
0		行首

删除命令

x
nx			删除光标所在后n个字符
dd			删除一行
ndd			删除n行
dG			删除光标一直到文件末尾
D			删除光标到行尾
:n1,n2d 	删除指定范围的行 (eg:100,102d)

复制剪切命令

yy		复制当前行
nyy		复制当前n行
dd		剪切当前行
ndd		...
p		粘贴当前光标所在行下;P 行上

编码

:set fileencoding	显示文件编码格式

替换和取消命令

r	替换光标所在字符 
R	从光标所在处开始替换字符,按ESC结束 
u	恢复上一步,类似于Word的文档 

搜索和搜索替换

/string
n			查找下一个
N			上一个匹配
:set ic		不区分大小写
:set noic	...
%s			全文替换


:%s /old /new /g
:n1,n2 /old /new /g
/g命令参数也可以为/c;替换之前查询 

保存和退出

:w filepath/filename	另存为
ZZ						保存退出(快捷键)
:wq						保存退出

多行缩进

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

导入命令

:r filename		导入文件内容到当前vim编辑的文件中,位置取决于光标所在位置
:!which ls		ls命令所存的位置
:r !date		将命令结果导入到当前文件中

定义快捷键

:map [ctrl+v]+p

连续行替换

  1. 1,4s/^/#/g (1~4行首加上注释)
  2. 1,4s/#//g (取消注释)

:ab 将要替换字 替换内容

配置文件

vimrc

关闭高亮

syntax off

自动缩进

set autoindent
set cindent

自动加入文件头

.viminfo

source