Vim 学习笔记-复制和粘贴

最近随着在linux下工作的时间越来越多,Vim的使用次数也越来在越多。以前曾经掌握的基本操作本来就不多,后来又忘掉了很多,现在越来越感觉会的快捷键不够用了,导致编辑效率不高。所以现在每天花点时间重新学些Vim的东西吧。


复制和粘贴

剪切(复制)和粘贴

  1. 将光标移动到剪切的开头部分
  2. v开始选择字符(按住V选择整行)
  3. 将光标移动到希望剪切部分的尾部。
  4. d剪切(按y复制)
  5. 移动到希望粘贴的地方
  6. P粘贴到光标前,按p粘贴到光标之后

tips:
d = delete = cut
y = yank = copy


多段粘贴

当删除或者复制一段文字的时候,这段文字被保存在Vim的未命名寄存器中。Vim中还可以使用用单个字母标记的命名寄存器。用一个双引号加一个字母指定要使用的寄存器。

例如,选择==hello==后,按==”ay==将”hello”保存到==a==寄存器,然后选择==world==,按==”by==保存到==b==寄存器。当要粘贴的时候,分别使用==”ap==和==”bp==粘贴”hello”和”world”。当然也可以使用==”aP==和==”bP==来粘贴到光标之前。

在不同Vim窗口(或终端)中粘贴

在复制文本后,为了复制到另一个文件,先打开一个缓冲区:

1
:e ~/dummy

  • 将文本粘贴到缓冲区
  • 保存缓冲区的内容(:w)
  • 切换到前一个缓冲区以释放交换文件*.swp
  • 现在可以换到另外一个窗口或者终端
  • 将光标移动到希望粘贴的地方
  • 读取dummy文件(:r ~/dummy)

增加缓冲区大小

在Vim中有时候最多只能复制50行。可以通过增加缓存区大小来解除这个限制:

1
2
3
4
5
6
:help 'viminfo'
...
< Maximum number of lines saved for each register.
...
:set viminfo?
:set viminfo='100,<100,s10,h