仅使用键盘在终端中选择/复制/粘贴

仅使用键盘在终端中选择/复制/粘贴

我正在寻找一种方法选择,完全不需要鼠标就可以在终端中复制粘贴文本。

我一直在使用到tmux现在,但我发现它的组合键对于日常的复制和粘贴来说有点复杂,现在我正在寻找替代方案。

你们有什么建议吗?

要明确的是,这不是关于管道传输到剪贴板而是关于选择文本,例如tmux

答案1

我总是使用Ctrl+ Shift+CCtrl+ Shift+V在我的(非 tmux)终端中复制和粘贴。
您可以在(非 tmux)终端的键盘偏好设置中更改这些键盘快捷键。

但是,如果您想继续使用 tmux,您也可以通过向中添加命令来更改 tmux 的键盘快捷键~/.tmux.conf。只需在该文件中添加以下内容:

bind-key -n [shortcut. for example Ctrl+v is C-v] [what you want to do. for example 'new-window' etc]

它看起来像这样

bind-key -n C-t new-window

您不需要命令前缀键来执行~/.tmux.conf文件中的命令。

有关可供~/.tmux.conf检查的物品的更多信息此链接

使用它,可以进行非常基本的复制和粘贴,但为了更实用,我建议使用 Vim 风格的复制/粘贴配置。
可以使用这个配置文件或者另一个配置文件。但是,这些确实需要使用前缀键。
有人甚至制作了一个tmux 扩展简化 tmux 中系统剪贴板的复制/粘贴操作。可能值得一看。

如果你想要 Tmux 的替代品,你可以尝试 dvtm ( sudo apt-get install dvtm dtach)。我自己没用过,但它看起来有类似的选项。

答案2

要复制,请使用Ctrl++ShiftC

要粘贴,请使用Ctrl+ Shift+VShift+insert

另一种方法是:

首先运行命令screen,然后可以执行以下步骤:

  • Ctrl+ a+Esc它将使屏幕处于复制模式。
  • 现在,将光标移动到要复制的部分的开头并按回车键。
  • 然后,将光标移动到要复制的部分的末尾并按回车键。
  • 现在,按Ctrl+ a+]粘贴。

答案3

您可以使用screen选择模式。

使用命令进入屏幕会话screen

然后,使用Ctrl+aEsc进入选择模式。

然后,您可以移动光标,使用 选择一些文本space,退出选择模式,然后在需要时使用Ctrl+a和粘贴它]

更多信息请点击这里:http://web.mit.edu/gnu/doc/html/screen_11.html

答案4

可以用 emacs 来完成。

  1. 打开 emacs
  2. Alt- X+ term:在新的 emacs 缓冲区中打开一个终端
  3. Ctrl- C+ Ctrl- J:进入行模式(有关模式的更多详细信息请参见下文)
  4. 选择所需文本
  5. Alt- W:复制文本
  6. Ctrl- C+ Ctrl- K:返回字符模式
  7. Ctrl- Y: 粘贴

关于行模式和字符模式的备注

在字符模式下,您输入的每个字符都会发送到终端(就像在任何终端中一样),并且大多数 emacs 快捷方式都被禁用(以启用终端快捷方式)。特别是,如果更改缓冲区的快捷方式不起作用,请不要感到惊讶。要更改缓冲区,您必须先进入行模式。在行模式下,emacs 的行为与在普通 emacs 缓冲区中的行为相同。更多详细信息这里

相关内容