【问题标题】:copy a line/multiple-lines from vi editor to cmd line将一行/多行从 vi 编辑器复制到命令行
【发布时间】:2013-05-03 10:58:31
【问题描述】:

是否有快捷键可以从 vi 编辑器中复制一行,然后将其粘贴到终端中。 目前我用鼠标选择文本,然后按 crtl+shift+c(我使用 KDE 的默认设置),然后在 konsole 上执行 ctrl+shift+v。此选项的问题是当行长到可以换行时。在这种情况下,复制粘贴会插入额外的空格,我必须在粘贴到终端后修复这些空格。

这很烦人,特别是当复制的行很长并且包含文件名(通常是用于调用编译器的命令)时。

【问题讨论】:

标签: linux ubuntu vim vi konsole


【解决方案1】:

您可以通过将内容放入 * 寄存器中来拉到 X 剪贴板。

要执行此操作,请在要拉出的行上使用 "*yy。然后在 vim 之外你应该可以粘贴它。

【讨论】:

  • 所以我必须按“,然后按 *,然后按 yy?我试过但不适合我。
  • 当您执行vim --version | grep clipboard 时,您会看到+clipboard-clipboard
  • 您可能还需要+X11 和/或+xterm_clipboard。见:stackoverflow.com/a/10104125/955926
  • 是的,我认为; 6:-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +cmets 19:-X11 -xfontset -xim -xsmp -xterm_clipboard -xterm_save
  • 您可能需要编译不同版本的 vim。你需要有+clipboard 才能工作。可能还有 Gary Fixler 提到的另一位。
【解决方案2】:

如果您无法通过 X 或 screen 或 tmux 访问剪贴板,您可以将缓冲区的内容写入临时文件,然后转到终端并调用 $(cat temp-file) 或打开命令的编辑器行并读入文件。无论您使用什么 shell,都可能提供一种在命令行上打开编辑器的机制。在带有 vi 样式的 readline 键绑定的 bash 中,您可以键入 v 来获取 vi 会话。如果您的 shell 不提供该功能,请尝试使用其他 shell。

【讨论】:

    猜你喜欢
    • 2017-02-09
    • 2023-04-08
    • 2017-01-31
    • 2015-06-10
    • 2017-12-05
    • 2014-03-27
    • 2015-04-03
    • 2012-05-08
    • 2013-09-16
    相关资源
    最近更新 更多