问题: 使用键盘快捷键在屏幕的复制模式下从终端到 Firefox 搜索当前选择

您可以在复制模式下按 将句子复制到屏幕的剪贴板 enter. 。但是,我希望能够按 g 将屏幕的剪贴板作为第一个参数放入以下命令中:

#!/bin/sh
q=$1
open "http://www.google.com/search?q=$q"

我现在也这样做

  1. C-a Esc [选择区域] Enter
  2. C-z [将当前窗口移开]
  3. 谷歌 C-a ]

如何将屏幕的剪贴板放入命令中?

有帮助吗?

解决方案

以下描述了某人如何修改其 .screenrc 文件以将其与 X 剪贴板同步。 您可以尝试修改它以将选定的文本发送到 Firefox 而不是 xsel。

其他提示

open "http://www.google.com/search?q=`xclip -o`"

这适用于 X 的复制缓冲区,而不是屏幕的复制缓冲区,但 X 剪贴板通常是您想要的,因为它是通过简单地突出显示文本来设置的。

我仍在尝试找出确切的语法,但请看一下在 .screenrc 文件中使用“bind”和“writebuf”(可能还有“eval”)。

编辑

您可以绑定主目录中 .screenrc 文件中的密钥。例如。,

bind g eval 'writebuf' 'exec . /bin/sh/ -c "cp /tmp/screen-exchange ~/foo.txt"'

这将运行 评估 在屏幕中使用 g 键时的命令。Eval 接受任意数量的参数并将它们作为 Tcl 脚本运行。

写缓冲区 将屏幕复制/粘贴缓冲区转储到 /tmp/screen-exchange 处的文件中。

第二个字符串开头为 执行 它将运行 Tcl 解释器外部的程序。在本例中,我选择 /bin/sh (*nix shell)并传递任意系统命令。上面的示例复制了 /tmp/screen-exchange 文件,但您可以:

open < /tmp/screen-exchange

将行添加到 ~/.screenrc 后,重新启动 screen,复制一些文本并尝试

C-a g
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top