Vi是Linux下的标准编辑器,在几乎所有的Linux的发行版本下都会预装。
而Linux系统中许多配置文件都是用ASCII码的纯文本格式保存的。所以,学会Vi是在Linux下进行工作的一项必备技能。
而Vim 是Vi Improved的意思。Vim向前完美兼容Vi。
Vim是一个模式编辑器。切换到不同的模式下,可以进行不同的操作。
Vim有三种模式:一般模式,Insert模式(即编辑模式),和命令行模式(打开、保存、查找、替换等)
在打开Vi的时候,首先进入的是一般模式,可以执行如移动光标,删除,插入,复制,粘贴的工作。
移动光标可以用键盘箭头,但最好不这么做,因为有些古老的Vi版本不支持方向箭头。
进入一般模式后,用h(左)j(下)k(上)l(右)4个键来进行移动光标的操作。
快速移动的方法:使用“数字+”
如果要删除光标所在处字符就按x。如果要删除光标所在处开始的n个字符,就输入nx,如3x, 9x。
如果要删除整行,就按dd。如果要删除光标所在行往下的n行,就用ndd。
另外,也可以用J(即shift+j)命令来删除换行符号。
可以用命令u来取消上一次的操作,如果要一直取消,就不断按u。如果删除过头,就用ctrl+r命令来重新执行命令。
要进入命令模式,就输入:
在命令模式下保存文件,按w,再按enter; 在命令模式下退出程序,输入q; 输入wq就可以保存+退出。
如果在进入Vi的时候没有指定文件名,那么就在w 后面加入要保存为的文件名,如 : wq sample.java
如果要退出并放弃所有修改,就用 : ! q
设置VIM的环境变量
对于不同的操作系统,vim的配置文件的位置不一样。在debian9下,它是在 /etc/vim/下面的vimrc文件
同样使用vi打开这个配置文件,将一般模式下,光标定位到文件末尾,输入:
set nu //设置显示行号
set tabstop=4 //设置tab键的缩进值为4
set autoindent //设置自动缩排
保存文件并退出,以后使用vi的时候就可以更方便的开发程序了。
临时设置Vim的环境变量
如要临时设置或者改变一下环境变量,就输入:进入命令模式,然后再输入set 环境变量,就可以了。
如要取消某一设定,输入set no环境变量
复制VIM里的内容到系统剪贴板
当用yy命令复制内容时,默认是复制到系统的寄存器里去,而不是剪贴板。为了能复制到剪贴板,需要使用命令
”+y //将当前行复制到剪贴板
“+ny //将当前光标往下n行复制到剪贴板
“+p //把寄存器 ”+ 中的内容paste到当前的VIM中
但是,并不是所有的VIM都支持复制内容到剪贴板的功能,需要先检查一下:
如上所示,如果vim的版本,是 - clipboard,代表默认不支持; 如果vim的版本是 + clipboard,代表支持。
如果不支持,就要按照vim的gtk版本,如下所示:
再次打开vim的时候,就可以剪贴复制内容到vim程序之外了。