本文环境为Ubuntu 18.04,Vim更多配置参考《Vim配置》,以下内容均为实战笔记,参考书籍见文末尾。
$ sudo apt install vim
$ vim ~/.vimrc
注意:如果.vimrc
不存在,则直接创建即可($touch .vimrc
)
只配置了自动缩进与括号补全。这里默认缩进为8字节这里改成4字节。这里不配置行号显示了,如果需要查看行号,直接在Vim命令模式下输入“:set nu”(平时保存退出为:wq)
set tabstop=4
set softtabstop=4
set shiftwidth=4
"set autoindent
set smartindent
inoremap ' ''<ESC>i
inoremap " ""<ESC>i
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {<CR>}<ESC>O
重启终端生效。注意使用时用vim
,不要用vi
。
END
©qingdujun
2018-08-04 于 西安 碑林
附录1 —— 常用命令:
- x
删除光标下的字符 - .
重复上一个动作 - u
撤销上一步操作
- :split
水平分割,Ctrl+W切换窗口 - Ctrl+W+V
垂直分割 - :on 或者 :only亦或:close用于关闭多个窗口
- yy
复制单行 - y^
复制从光标处至行首内容 - y$
复制从光标处至行尾内容
- dd
剪切单行 - d^
剪切从光标处至行首内容 - d$
剪切从贯标处至行尾内容
- p
粘贴至光标后面 - P
粘贴至光标前面
- Ctrl+n
自动补全
/abcd
正向查找内容“abcd”?abcd
反向查找内容“abcd”n
下一个出现的位置(与之前的查找顺序一致)
1G
光标移至行首30G
光标移至第30行首$G
光标移至文尾行首1$
光标移至当前行尾
:tabe demo.c
以标签页形式,打开demo.c文件(tabe[dit]):tabn
切换至下一个标签页(tabn为tabn[ext]):tabp
切换至上一标签页(tabp[revious]):tabc
关闭当前标签页(tabc[lose]):tabo
仅保留当前标签页,关闭其他所有标签页(tabo[nly])
附录2 —— 批量复制、粘贴
批量复制、粘贴需进入可视模式。Vim有3种模式,分别为普通模式、输入模式以及可视模式。
普通模式就是狂按“ESC”后的那个模式。刚用Vim打开文件那刻时(普通模式),默认操作的是整个屏幕区域。此时,输入dd将会删除一整行。如果你只想操作屏幕上的某一小块区域(选中的区域)那么就要用到可视模式了。
可视模式又可以分为3种,
v 在普通模式下按“小写v”进入字节可视模式。
V 在普通模式下按“大写V”进入行可视模式。
Ctrl+v 在普通模式下按“Ctrl+小写v”进入块可视模式。
附录3 —— 快速注释多行
- 如果注释多行。
- Ctrl+v 选中需要注释的行首;
- 按“I”(大写i)进入插入模式;
- 输入“//”;
- 连续按两次“ESC”。
- 取消多行注释。
- 只需要Ctrl+v选中全部“//”;
- 再按d删除即可。
附录4 —— 自动对齐
在普通模式(狂按“ESC”的那个模式)下,
- 输入“gg”光标定位文件开头处;
- 按“=”符号;
- 接着按“G”(大写g)光标定位文件末尾。此时已经自动对齐完毕。
References:
[1] Drew, Neil. Vim实用技巧[M]. 北京:人民邮电出版社, 2014.