如何指定特定的键盘快捷键来粘贴特定项目?

如何指定特定的键盘快捷键来粘贴特定项目?

我经常需要粘贴特定的文本或文件(可能是图像),但由于我还必须复制和粘贴其他内容,所以不断返回并将其放入剪贴板会变得相当冗长和烦人。

因此,对我来说非常有用的是有一个特定的键盘快捷键,它只粘贴特定的文本或文件,但与主剪贴板分开。键盘快捷键应该在按下时将项目放入我的主剪贴板,或者它应该直接粘贴,无论哪个更容易做到(如果两者一样容易,那么两者都很好,因为有时我需要一个,有时我需要另一个)。

有没有办法做这样的事情?我正在运行带有 GNOME 3.20 的 Ubuntu GNOME 16.04。

答案1

将固定字符串放入剪贴板的命令非常简单,只需

xsel -ib <<< 'Your string goes here'

或者如果你想从文件中读取字符串

xsel -ib < your-file.txt

或者从命令输出

your-command | xsel -ib

通过模拟按键直接写入固定字符串并不复杂

xvkbd -file - <<< 'Your string goes here'

或者如果你想从文件中读取字符串

xvkbd -file your-file.txt

或者从命令输出

your-command | xvkbd -file -

您只需在System SettingsKeyboardShortcuts配置并为您希望的组合键分配一个命令。

但请注意,快捷方式解释器不是 Bash 或类似的 shell,因此我们的<<<(“此处字符串”语法)或|管道将不起作用。无论如何,为了解决这个问题,我们只需将 shell 命令括在 中bash -c "INSERT COMMAND HERE"。只需注意不要在命令中使用双引号。

以下是必须输入到快捷方式设置的命令:

  • 将“我的字符串”复制到剪贴板:

    bash -c "xsel -ib <<< 'my string'"
    
  • 将内容复制my-file.txt到剪贴板:

    bash -c "xsel -ib < my-file.txt"
    
  • 将输出复制my-command到剪贴板:

    bash -c "my-command | xsel -ib"
    
  • 直接粘贴/写入“我的字符串”:

    bash -c "xvkbd -file - <<< 'my string'"
    
  • 直接粘贴/写入内容my-file.txt

    bash -c "xvkbd -file my-file.txt"
    
  • 直接粘贴/写入输出my-command

    bash -c "my-command | xvkbd -file -"
    

请注意,默认情况下不会xsel安装xvkbd它们,因此您可能需要先使用此命令安装它们:

sudo apt-get install xsel xvkbd

相关内容