使用这款 Linux 键盘工具提高您的工作效率
AutoKey是一个开源的 Linux 桌面自动化工具,一旦它成为您工作流程的一部分,您会想知道如果没有它,您是如何管理的。它可以是提高工作效率的变革性工具,也可以是减轻与打字相关的身体压力的一种方式。
本文将介绍如何安装和开始使用 AutoKey,介绍一些您可以立即在工作流程中使用的简单方法,并探索 AutoKey 高级用户可能会觉得有吸引力的一些高级功能。
安装和设置 AutoKey
AutoKey 在许多 Linux 发行版上作为软件包提供。该项目的安装指南包含许多平台的说明,包括从源代码构建。本文使用 Fedora 作为操作平台。
AutoKey 有两种变体:autokey-gtk,专为基于GTK\ 的环境(例如 GNOME)和 autokey-qt,它基于QT\ 设计。
您可以从命令行安装任一变体:
sudo dnf install autokey-gtk
安装后,使用autokey-gtk(或autokey-qt)运行它。
探索界面
在将 AutoKey 设置为在后台运行并自动执行操作之前,您首先需要对其进行配置。调出配置用户界面 (UI):
autokey-gtk -c
AutoKey 预配置了一些示例。您可能希望在熟悉 UI 时留下它们,但如果您愿意,可以删除它们。

图片来源:
(马特·巴根夸斯特,CC BY-SA 4.0)
左窗格包含基于文件夹的短语和脚本层次结构。 Phrases 是您希望 AutoKey 代表您输入的文本。 Scripts 是动态的、程序化的等价物,可以使用 Python 编写并实现基本相同的结果,即让键盘将击键发送到活动窗口。
右窗格是构建和配置短语和脚本的位置。
一旦您对配置感到满意,您可能希望在登录时自动运行 AutoKey,这样您就不必每次都启动它。您可以在 Preferences 菜单(Edit -> Preferences)中配置此项,方法是选择 Automatically start AutoKey at login。

图片来源:
(马特·巴根夸斯特,CC BY-SA 4.0)
使用 AutoKey 更正常见的拼写错误
更多 Linux 资源
-
Linux 命令备忘单
-
高级 Linux 命令备忘单
-
免费在线课程:RHEL 技术概述
-
Linux 网络备忘单
-
SELinux 备忘单
-
Linux常用命令备忘单
-
什么是 Linux 容器?
-
我们最新的 Linux 文章
修复常见的拼写错误是 AutoKey 修复的一个简单问题。例如,我一直键入“gerp”而不是“grep”。以下是如何配置 AutoKey 来为您解决这些类型的问题。
创建一个新的子文件夹,您可以在其中对所有“错字更正”配置进行分组。在左侧窗格中选择 My Phrases,然后选择 File -> New -> Subfolder。将子文件夹命名为 Typos。
在 File -> New -> Phrase 中创建一个新短语,并将其命名为“grep”。
通过突出显示短语“grep”然后在输入短语内容部分中输入“grep”来配置 AutoKey 以插入正确的单词(替换默认的“输入短语内容”文本)。
接下来,通过定义缩写来设置 AutoKey 如何触发此短语。单击 UI 底部的 Abbreviations 旁边的 Set 按钮。
在弹出的对话框中,点击Add按钮,添加“gerp”作为新的缩写。保留删除键入的缩写选中;这就是指示 AutoKey 将任何键入的单词“gerp”替换为“grep”的原因。将 Trigger when typed as part of a word 保留为未选中状态,这样如果您键入包含“gerp”的单词(例如“fingerprint”),它_不会_尝试将其转换为“fingreprint”。它仅在“gerp”作为孤立词输入时才有效。

图片来源:
(马特·巴根夸斯特,CC BY-SA 4.0)
限制对特定应用的修正
您可能希望仅在某些应用程序(例如终端窗口)中输入错字时应用更正。您可以通过设置窗口过滤器来配置它。单击 Set 按钮定义一个。
设置窗口过滤器的最简单方法是让 AutoKey 为您检测窗口类型:
-
启动一个新的终端窗口。
-
返回 AutoKey,单击 Detect Window Properties 按钮。
-
单击终端窗口。
这将自动填充窗口过滤器,窗口类值可能为gnome-terminal-server.Gnome-terminal。这样就足够了,所以点击 OK。

图片来源:
<p classu003d"rtecenter"><sup>(Matt Bargenquast, <a hrefu003d"https://opensource.com/%3Ca%20href%3D"https://creativecommons.org/licenses/by-sa/4.0 /" relu003d"ugc">https://creativecommons.org/licenses/by-sa/4.0/" targetu003d"_blank">CC BY-SA 4.0</a>)</sup></p>
保存测试
对新配置感到满意后,请务必保存。单击 File 并选择 Save 以激活更改。
现在进行大测试!在您的终端窗口中,键入“gerp”后跟一个空格,它应该会自动更正为“grep”。要验证窗口过滤器是否正常工作,请尝试在浏览器 URL 栏或其他应用程序中输入单词“gerp”。它不应该改变。
您可能认为这个问题可以通过shell 别名轻松解决,我完全同意!与面向命令行的别名不同,无论您使用什么应用程序,AutoKey 都可以纠正错误。
例如,我在浏览器、集成开发环境和终端中输入的另一个常见错误是“openshfit”而不是“openshift”。别名不能完全解决这个问题,而 AutoKey 可以在任何情况下纠正它。
使用 AutoKey 键入常用短语
您可以通过多种其他方式调用 AutoKey 的短语来帮助您。例如,作为一名在 OpenShift 上工作的站点可靠性工程师 (SRE),我经常在命令行中键入 Kubernetes 命名空间名称:
oc get pods -n openshift-managed-upgrade-operator
这些命名空间是静态的,因此它们是 AutoKey 在键入临时命令时可以为我插入的理想短语。
为此,我创建了一个名为 Namespaces 的短语子文件夹,并为我经常键入的每个命名空间添加了一个短语条目。
分配热键
接下来,也是最关键的,我为子文件夹分配了一个热键。每当我按下该热键时,它都会打开一个菜单,我可以在其中选择(使用 箭头键+Enter 或使用数字)我要插入的短语。这减少了我输入这些命令所需的击键次数,只需几次击键。
My Phrases 文件夹中 AutoKey 的预配置示例使用 Ctrl+F7 热键进行配置。如果您将示例保留在 AutoKey 的默认配置中,请尝试一下。您应该会看到一个包含所有可用短语的菜单。使用数字键或箭头键选择您想要的项目。
高级自动键控
AutoKey 的脚本引擎允许用户运行可以通过相同的缩写和热键系统调用的 Python 脚本。这些脚本可以通过支持的 API 函数执行诸如切换窗口、发送击键或执行鼠标点击等操作。
AutoKey 用户通过发布自定义脚本供其他人采用来接受此功能。例如,NumpadIME 脚本将数字键盘转换为旧的手机式文本输入方法,而Emojis-AutoKey通过将:smile:等短语转换为相应的表情符号来轻松插入表情符号。
这是我设置的一个小脚本,它进入 Tmux 的复制模式,将前一行中的第一个单词复制到粘贴缓冲区中:
从时间导入睡眠
发送tmux命令前缀(由b改为s)
键盘.sendkeys("<ctrl>+s")
进入复制模式
键盘.send_key("[")
睡眠(0.01)
光标上移一行
键盘.send_keys("k")
睡眠(0.01)
将光标移动到行首
键盘.send_keys("0")
睡眠(0.01)
开始标记
键盘.sendkeys("")
睡眠(0.01)
将光标移动到词尾
键盘.send_keys("e")
睡眠(0.01)
添加到复制缓冲区
键盘.sendkeys("<ctrl>+m")
睡眠在那里是因为有时 Tmux 无法跟上 AutoKey 发送击键的速度,并且它们对整体执行时间的影响可以忽略不计。
使用 AutoKey 进行自动化
我希望您喜欢这次使用 AutoKey 进行键盘自动化的探索,它为您提供了一些关于它如何改进您的工作流程的好主意。如果您以有用或新颖的方式使用 AutoKey,请务必在下面的评论中分享。
更多推荐




所有评论(0)