vim
环境信息
- Centos 7
vim 配置
vim
启动时会读取 /etc/vimrc
(全局配置) 和 ~/.vimrc
(用户配置)
常用配置如下,使用 "
注释
" 自动缩进 |
vim 常见用法
读写加解密文件
创建新的加密文件
vim -x mysecfile |
使用 vim
的 -x
选项,将创建一个新的文件,并提示需要设置加密密码,输入 2 次密码后,将进入 vim
界面,编辑完内容,保存后,产生的文件为 vim
加密的文件,使用 file
命令查看,显示如下
file mysecfile |
之后要使用 vim
编辑此文件,都要按照提示输入密码,如果未输入密码或者输入的密码错误,打开的文件内容将显示为乱码,只有输入正确的密码,才能看到正确的文件内容,如果使用其他编辑器,可以直接打开文件,但是内容乱码
加密已有文件
对于已经存在的未加密文件,使用 vim
的 -x
选项时,会要求输入密码,此时不输入密码,或者随便输入,都会打开正确的文件内容(因为文件并未被 vim
加密保护)
对于已经存在的未加密文件,若要使用 vim
进行加密,可以在 vim
打开文件后,使用 vim
的 X
命令对文件进行加密。具体操作为: 在 vim
的一般模式下(按 Esc
进入),输入
:X |
确定后 vim
会提示输入 2 次密码,完成加密,最后保存文件
:wq |
对于
vim
已经加密的文件,如果使用vim
打开时输入错误的密码或者未输入密码,打开文件显示乱码,此时如果对文件进行了保存,会导致乱码被保存为文件内容,导致文件内容丢失
文件解密
对 vim
已加密的文件,需要解密的话,在正确打开文件后,可以通过 加密已有文件 中的步骤,将文件密码设置为空即可
或者正确打开加密文件后,进入一般模式下,执行以下命令
:set key= |
常见错误
vim INSERT 模式中无法使用鼠标复制粘贴
环境信息:
- Debian GNU/Linux 12
- VIM - Vi IMproved 9.0
在 Debian 的 Docker 镜像中安装 apt install vim
后, 在 vim
INSERT 模式下无法使用鼠标复制粘贴内容,这是由于 vim
默认的鼠标配置干扰了鼠标操作。禁用鼠标模式即可解决
:set mouse= |
复制粘贴到 vim
后格式可能会错乱,使用 paste
模式解决
:set paste |