【问题标题】:Copy from one register to another从一个寄存器复制到另一个
【发布时间】:2010-12-02 21:35:20
【问题描述】:

如何将一个寄存器的内容复制到另一个而不粘贴到剪贴板上?我拉了一个文本,它在默认的" 寄存器中被拉了。现在我想复制另一个文本而不删除/覆盖" 寄存器。所以我想将"寄存器的内容移动到一些ab寄存器,这样我就可以复制"中的新文本。如何做到这一点?

【问题讨论】:

    标签: vim vim-registers


    【解决方案1】:

    你可以这样做:

    let @a = getreg('"')
    

    这会将" 寄存器复制到a 寄存器。

    【讨论】:

      【解决方案2】:

      要在寄存器之间复制或交换值,您可以使用:let 命令,例如将b 寄存器的内容复制到a

      :let @a=@b
      

      或者将"寄存器的内容复制到a

      :let @a=@"
      

      查看这个 Vim 提示以获得一些好的键映射建议:

      【讨论】:

      • 不知何故我无法让它工作。我在这台机器上有一个非常小的 vim。这是我的一些设置。 VIM - Vi IMproved 7.0(2006 年 5 月 7 日,2011 年 3 月 5 日 21:36:07 编译)包含的补丁:1、3-4、7-9、11、13-17、19-26、29-31、34-44 , 47, 50-56, 58-64, 66-73, 75, 77-92, 94-107, 109, 202, 34-237 由 编译 无 GUI 的小版本。
      • @Paul,我记得 Vim 的 smalltiny 功能集不支持:let 命令。
      • 你能解释一下@ 的作用吗?
      • @ 是使用寄存器作为变量的方式。有关详细信息,请参阅:help let-register。您基本上可以将其视为@a 是存储寄存器a 的变量。
      猜你喜欢
      • 1970-01-01
      • 2021-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-28
      • 2020-12-14
      • 2019-01-09
      • 1970-01-01
      相关资源
      最近更新 更多