我想点击F1并让带有回车键的字符串自动输入到我所在的终端中。我不想这样做,.bash_profile
因为我希望它在一个地方本地配置,而不是在我ssh
进入的每个服务器上都配置。
我怎么做?
答案1
好的,我给出的答案几乎完全符合要求,但实际上却非常复杂。您将使用它xmacro
来记录和回放按键。
安装 xmacro
sudo apt-get install xmacro
录制宏
xmacrorec2 > test.macro
现在按下ESC(记录“中止”键以进行录制),输入您想要分配的任何文本,然后ESC 再次按下以停止录制。录制的宏现在位于文件中
test.macro
;您可以使用文本编辑器对其进行编辑。测试宏是否有效
cat test.macro | xmacroplay -d 0 $DISPLAY
(可选,推荐)使用上述命令创建一个脚本。将其保存为 macro.sh:
#!/bin/bash cat test.macro | xmacroplay -d 0 $DISPLAY > /dev/null 2>/dev/null
使其可执行:
chmod a+x macro.sh
还剩下一点问题。xmacro 会播放精确的击键,但如果你定义了一个快捷方式,并从快捷方式运行脚本,则会播放这些键前您释放快捷键,就像您没有释放键就开始打字一样。您需要将以下行添加到 test.macro 文件中:
KeyStrRelease F1
这将模拟释放 F1 键。
使用键盘偏好设置(您可以通过设置或输入“gnome-control-center 键盘”来访问它们),在“自定义快捷方式”下创建一个新的快捷方式并为其分配 F1。
好的,但还有一个警告:F1 快捷键现在可以在每一个应用程序,而不仅仅是终端。我不知道如何解决这个问题;可能,首先macro.sh
必须测试哪个窗口具有焦点,然后检查该窗口的标识符是否是终端。