vim配置
set ts=4 set shiftwidth=4 //set sw=4,缩进4个空格 set expandtab //变空格 set autoindent
vim在系统剪切板的复制与粘贴
1.首先,查看vim版本是否支持clipboard
vim --version | grep "clipboard"
clipboard
前面有一个小小的减号,说明不支持。
sudo apt-get install vim-gnome
2.使用+寄存器复制
Vim 中的复制、删除的内容都会被存放到默认(未命名)寄存器中,之后可以通过粘贴操作读取默认寄存器中的内容。寄存器是完成这一过程的中转站,Vim 支持的寄存器非常多,其中常用的有 a-zA-Z0-9+“。其中:
- 0-9:表示数字寄存器,是 Vim 用来保存最近复制、删除等操作的内容,其中 0 号寄存器保存的是最近一次的操作内容。
- a-zA-Z:表示用户寄存器,Vim 不会读写这部分寄存器
- "(单个双引号):未命名的寄存器,是 Vim 的默认寄存器,例如删除、复制等操作的内容都会被保存到这里。
- +:剪切板寄存器,关联系统剪切板,保存在这个寄存器中的内容可以被系统其他程序访问,也可以通过这个寄存器访问其他程序保存到剪切板中的内容。
如果想了解更多寄存器内容,可参http://vimdoc.sourceforge.net/htmldoc/change.html#registers
通过下面命令可以查看所有寄存器中的内容,也可以只查看指定寄存器的内容(将寄存器名称作为参数)
:reg [register_name]
有了上面的基础知识后,要实现题主"将 Vim 剪贴板里面的东西粘贴到 Vim 之外的地方?"就很明了,只需要将内容复制到剪切板寄存器(+)中即可,其他程序便可以访问到了。
"+yy // 复制当前行到剪切板
"+p // 将剪切板内容粘贴到光标后面
"ayy // 复制当前行到寄存器 a
"ap // 将寄存器 a 中的内容粘贴到光标后面
替换:
:s/cst/dst/gc
黏贴后格式不对齐:
gg=G
全选并黏贴
gg :"+yG
重新修改窗口大小
vertical res [宽度]
vim 查看文件路径
1,Esc模式下先按1 2,ctrl + G