Chinaunix首页 | 论坛 | 博客
  • 博客访问: 662513
  • 博文数量: 137
  • 博客积分: 7000
  • 博客等级: 少将
  • 技术积分: 1335
  • 用 户 组: 普通用户
  • 注册时间: 2005-11-23 15:18
文章分类

全部博文(137)

文章存档

2010年(2)

2009年(2)

2008年(2)

2007年(30)

2006年(99)

2005年(2)

我的朋友

分类: LINUX

2006-04-11 16:41:48

    这回说说vim中的寄存器的使用,例如说:如果我想把打开文本中一个命令复制到vim的commandline mode下运行该怎么做?
    首先在normal mode下用"a + yy(这里假设是复制当前行,当然也可以是yw,y%……总之接复制命令),然后按下“:”进入commandline mode,+a即可将刚才拷贝到寄存器a中的命令粘贴上去,看起来应该是这样的:
:"a(那个“"”号是按下后自动出现的,“a”为手动按下a)
    简言之,用"[a-z]来指定要用的寄存器名;在commandline mode模式下,可以使用 <寄存器名> 来访问vim的寄存器,“无名”寄存器的名字是“"”,例如我们可以这样用:yy某段文字,然后:""即可将刚才yy的内容粘贴到命令行上,原理和上面说的是一样的。同理,可以在文本中用""P将内容贴出,效果同P一样。
   在使用 X Window 系统时,有两个特殊的寄存器是需要注意一下的:“"*”访问的寄存器是 X 的主选择区域(primary selection),“"+”访问的寄存器是 X 的剪贴板(clipboard)。如果你要在 Vim 和其它的 X 应用程序之间复制文本内容,你可以试一下这两个寄存器。还有一个很特殊的“寄存器”:“=”。在插入模式或命令模式中,键入“Ctrl-R=”,Vim 会提示你输入一个表达式,普通的整数运算在此完全有效。

参考了一下文章:


  另外还有一个tip,我们常用“''”或“``”回到上次光标停留的地方,但如何回到上次编辑过的地方呢,对了,是“'.”或“`.”,记住了哦
阅读(1560) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~