以下是本人学习vim记到的一点点知识点,好记性不如烂笔头嘛~
打开文件
进入之后在普通模式下
输入 x
:删除首行第一个字符
输入 dd
:删除一行,实际上是剪切一行
输入 ddp
:就这么简单,即实现了快速交换光标所在行与它下面的行
输入 .
:重复执行上一步操作
输入 10x
:删除10个连续字符
输入 3dd
:删除三行文本
在普通模式下,你还可以使用 dw
或者 daw
(delete a word)删除一个单词,所以你可以很容易的联想到 dnw
(n替换为相应数字) 表示删除n个单词。
你在完成依次跳转后,可以使用 Ctrl+o
快速回到上一次(跳转前)光标所在位置
行间跳转
游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入 :set nu
以显示行号) nG(n Shift+g)
游标移动到到第一行 gg
游标移动到最后一行 G(Shift+g)
复制及粘贴文本
yy
复制游标所在的整行(3yy表示复制3行)y^
复制至行首,或y0。不含光标所在处字符。y$
复制至行尾。含光标所在处字符。yw
复制一个单词。y2w
复制两个单词。yG
复制至文本末。y1G
复制至文本开头。p
粘贴p
(小写)代表粘贴至光标后(下)P
(大写)代表粘贴至光标前(上)替换和撤销(Undo)命令
替换和Undo命令都是针对普通模式下的操作
普通模式
普通模式下输入 15G
,跳转到15行
普通模式下输入 >>
整行将向右缩进(使用,用于格式化代码超爽)
普通模式下输入 <<
整行向左回退
普通模式下输入 :
进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数,:set shiftwidth=10
命令行模式
命令行模式下输入 :ce
(center)命令使本行内容居中 :ce
命令行模式下输入 :ri
(right)命令使本行文本靠右 :ri
命令行模式下输入 :le
(left)命令使本行内容靠左 :le
快速查找
普通模式下输入 /
然后键入需要查找的字符串 按回车后就会进行查找。 ?
与 /
功能相同,只不过 ?
是向上而 /
是向下查找。 进入查找之后,输入 n
和 N
可以继续查找。 n
是查找下一个内容, N
查找上一个内容。
打开两个文件 $ vim 1.txt 2.txt
默认进入 1.txt
文件的编辑界面
命令行模式下输入 :n
编辑 2.txt
文件,可以加 !
即 :n!
强制切换,之前一个文件的输入没有保存,仅仅切换到另一个文件
命令行模式下输入 :N
编辑 1.txt
文件,可以加 !
即 :N!
强制切换,之前文件内的输入没有保存,仅仅是切换到另一个文件
命令行模式下输入 :sp 1.txt
打开新的水平分屏视窗来编辑 1.txt
命令行模式下输入 :vsp 2.txt
打开新的垂直分屏视窗来编辑 2.txt
普通模式下 Ctrl+w s
将当前窗口分割成两个水平的窗口
普通模式下 Ctrl+w v
将当前窗口分割成两个垂直的窗口
普通模式下 Ctrl+w q
即 :q 结束分割出来的视窗。如果在新视窗中有输入需要使用强制符!即:q!
普通模式下 Ctrl+w o
打开一个视窗并且隐藏之前的所有视窗
普通模式下 Ctrl+w j
移至下面视窗
普通模式下 Ctrl+w k
移至上面视窗
普通模式下 Ctrl+w h
移至左边视窗
普通模式下 Ctrl+w l
移至右边视窗
普通模式下 Ctrl+w J
将当前视窗移至下面
普通模式下 Ctrl+w K
将当前视窗移至上面
普通模式下 Ctrl+w H
将当前视窗移至左边
普通模式下 Ctrl+w L
将当前视窗移至右边
普通模式下 Ctrl+w -
减小视窗的高度
普通模式下 Ctrl+w +
增加视窗的高度
创建加密的文档 $ vim -x file1
在命令行模式中输入 !
可以执行外部的 shell
命令
:!ls
用于显示当前目录的内容:!rm FILENAME
用于删除名为 FILENAME
的文件:w FILENAME
可将当前 VIM
中正在编辑的文件另存为 FILENAME
文件Vim的功能设定:
获取目前的设定
:set
或者 :se
显示所有修改过的配置:set all
显示所有的设定值:set option?
显示 option
的设定值:set nooption
取消当前设定值:set autoindent(ai)
设置自动缩进:set autowrite(aw)
设置自动存档,默认未打开:set background=dark
或 light
,设置背景风格:set backup(bk)
设置自动备份,默认未打开: set cindent(cin)
设置C语言风格缩进