Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >使用 Linux 自动化工具提高生产率

使用 Linux 自动化工具提高生产率

作者头像
用户1880875
修改于 2021-09-06 10:06:52
修改于 2021-09-06 10:06:52
2.1K00
代码可运行
举报
运行总次数:0
代码可运行

安装并设置 AutoKey

AutoKey 在许多 Linux 发行版中都是现成的软件包。该项目的 安装指南 包含许多平台的说明,也包括了从源代码进行构建的指导。本文使用 Fedora 作为操作平台。

AutoKey 有两个变体:为像 GNOME 等基于 GTK 环境而设计的 autokey-gtk 和基于 QT 的 autokey-qt。

你可以从命令行安装任一变体:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo dnf install autokey-gtk

安装完成后,使用 autokey-gtk(或 autokey-qt)运行它。

探究界面

在将 AutoKey 设置为在后台运行并自动执行操作之前,你首先需要对其进行配置。调出用户界面(UI)配置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
autokey-gtk -c

AutoKey 提供了一些预设配置的示例。你可能希望在熟悉 UI 时将他们留作备用,但是可以根据需要删除它们。

AutoKey 用户界面

左侧窗格包含一个文件夹式的短语和脚本的层次结构。“ 短语(Phrases)” 代表要让 AutoKey 输入的文本。“ 脚本(Scripts)” 是动态的、程序化的等效项,可以使用 Python 编写,并且获得与键盘击键发送到活动窗口基本相同的结果。

右侧窗格构建和配置短语和脚本。

对配置满意后,你可能希望在登录时自动运行 AutoKey,这样就不必每次都启动它。你可以通过在 “ 首选项(Preferences)”菜单(“ 编辑 -> 首选项(Edit -> Preferences”)”)中勾选 “ 登录时自动启动 AutoKey(Automatically start AutoKey at login)”进行配置。

登录时自动启动 AutoKey

使用 AutoKey 纠正常见的打字排版错误

修复常见的打字排版错误对于 AutoKey 来说是一个容易解决的问题。例如,我始终键入 “gerp” 来代替 “grep”。这里是如何配置 AutoKey 为你解决这些类型问题。

创建一个新的子文件夹,可以在其中将所有“打字排版错误校正”配置分组。在左侧窗格中选择 “My Phrases” ,然后选择 “ 文件 -> 新建 -> 子文件夹(File -> New -> Subfolder)”。将子文件夹命名为 “Typos”。

在 “ 文件 -> 新建 -> 短语(File -> New -> Phrase)” 中创建一个新短语。并将其称为 “grep”。

通过高亮选择短语 “grep”,然后在 输入短语内容(Enter phrase contents)部分(替换默认的 “Enter phrase contents” 文本)中输入 “grep” ,配置 AutoKey 插入正确的关键词。

接下来,通过定义缩写来设置 AutoKey 如何触发此短语。点击用户界面底部紧邻 “ 缩写(Abbreviations)” 的 “ 设置(Set)”按钮。

在弹出的对话框中,单击 “ 添加(Add)” 按钮,然后将 “gerp” 添加为新的缩写。勾选 “ 删除键入的缩写(Remove typed abbreviation)”;此选项让 AutoKey 将任何键入 “gerp” 一词的替换为 “grep”。请不要勾选“ 在键入单词的一部分时触发(Trigger when typed as part of a word)”,这样,如果你键入包含 “grep”的单词(例如 “fingerprint”),就不会尝试将其转换为 “fingreprint”。仅当将 “grep” 作为独立的单词键入时,此功能才有效。

在 AutoKey 中设置缩写

限制对特定应用程序的更正

你可能希望仅在某些应用程序(例如终端窗口)中打字排版错误时才应用校正。你可以通过设置 窗口过滤器(Window Filter)进行配置。单击 “ 设置(Set)” 按钮来定义。

设置 窗口过滤器(Window Filter)的最简单方法是让 AutoKey 为你检测窗口类型:

  1. 启动一个新的终端窗口。
  2. 返回 AutoKey,单击 “ 检测窗口属性(Detect Window Properties)”按钮。
  3. 单击终端窗口。

这将自动填充窗口过滤器,可能的窗口类值为 gnome-terminal-server.Gnome-terminal。这足够了,因此单击 “OK”。

AutoKey 窗口过滤器

保存并测试

对新配置满意后,请确保将其保存。 单击 “ 文件(File)” ,然后选择 “ 保存(Save)” 以使更改生效。

现在进行重要的测试!在你的终端窗口中,键入 “gerp” 紧跟一个空格,它将自动更正为 “grep”。要验证窗口过滤器是否正在运行,请尝试在浏览器 URL 栏或其他应用程序中键入单词 “gerp”。它并没有变化。

你可能会认为,使用 shell 别名 可以轻松解决此问题,我完全赞成!与别名不同,只要是面向命令行,无论你使用什么应用程序,AutoKey 都可以按规则纠正错误。

例如,我在浏览器,集成开发环境和终端中输入的另一个常见打字错误 “openshfit” 替代为 “openshift”。别名不能完全解决此问题,而 AutoKey 可以在任何情况下纠正它。

键入常用短语

你可以通过许多其他方法来调用 AutoKey 的短语来帮助你。例如,作为从事 OpenShift 的站点可靠性工程师(SRE),我经常在命令行上输入 Kubernetes 命名空间名称:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
oc get pods -n openshift-managed-upgrade-operator

这些名称空间是静态的,因此它们是键入特定命令时 AutoKey 可以为我插入的理想短语。

为此,我创建了一个名为 “Namespaces” 的短语子文件夹,并为我经常键入的每个命名空间添加了一个短语条目。

分配热键

接下来,也是最关键的一点,我为子文件夹分配了一个 “ 热键(hotkey)”。每当我按下该热键时,它都会打开一个菜单,我可以在其中选择(要么使用 “方向键”+回车键要么使用数字)要插入的短语。这减少了我仅需几次击键就可以输入这些命令的击键次数。

“My Phrases” 文件夹中 AutoKey 的预配置示例使用 Ctrl+F7 热键进行配置。如果你将示例保留在 AutoKey 的默认配置中,请尝试一下。你应该在此处看到所有可用短语的菜单。使用数字或箭头键选择所需的项目。

高级自动键入

AutoKey 的 脚本引擎 允许用户运行可以通过相同的缩写和热键系统调用的 Python 脚本。这些脚本可以通过支持的 API 的函数来完成诸如切换窗口、发送按键或执行鼠标单击之类的操作。

AutoKey 用户非常欢迎这项功能,发布了自定义脚本供其他用户采用。例如,NumpadIME 脚本 将数字键盘转换为旧的手机样式的文本输入方法,Emojis-AutoKey 可以通过将诸如: :smile: 之类的短语转换为它们等价的表情符号来轻松插入。

这是我设置的一个小脚本,该脚本进入 Tmux 的复制模式,以将前一行中的第一个单词复制到粘贴缓冲区中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from time import sleep

# 发送 Tmux 命令前缀(b 更改为 s)
keyboard.send_keys("<ctr>+s")
# Enter copy mode
keyboard.send_key("[")
sleep(0.01)
# Move cursor up one line
keyboard.send_keys("k")
sleep(0.01)
# Move cursor to start of line
keyboard.send_keys("0")
sleep(0.01)
# Start mark
keyboard.send_keys(" ")
sleep(0.01)
# Move cursor to end of word
keyboard.send_keys("e")
sleep(0.01)
# Add to copy buffer
keyboard.send_keys("<ctrl>+m")

之所以有 sleep 函数,是因为 Tmux 有时无法跟上 AutoKey 发送击键的速度,并且它们对整体执行时间的影响可忽略不计。

使用 AutoKey 自动化

我希望你喜欢这篇使用 AutoKey 进行键盘自动化的探索,它为你提供了有关如何改善工作流程的一些好主意。如果你在使用 AutoKey 时有什么有用的或新颖的方法,一定要在下面的评论中分享。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
AutoKey - 适用于Linux和X11的桌面自动化应用程序
在当今软件开发领域,质量保证是项目成功的关键因素之一。随着软件迭代速度不断加快,传统手动测试方法难以满足与日俱增的测试需求,因此,自动化测试工具的重要性愈发突出。
wangmcn
2024/11/14
1170
AutoKey - 适用于Linux和X11的桌面自动化应用程序
这9个Linux工具值得关注!
有很多干扰和非生产性活动会影响我们在工作场所的表现,还有很多方法可以提高注意力和工作效率。如果您正在寻找一种方法来提高工作效率并保持井井有条,请考虑使用特殊软件来创建高效的工作环境。
网络技术联盟站
2022/05/07
8200
这9个Linux工具值得关注!
Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标
了解用于编辑电子表格、下载文件和启动程序的各种 Python 模块是很有用的,但有时您需要使用的应用没有任何模块。在计算机上实现任务自动化的终极工具是你编写的直接控制键盘和鼠标的程序。这些程序可以通过发送虚拟击键和鼠标点击来控制其他应用,就像你坐在电脑前亲自与应用进行交互一样。
ApacheCN_飞龙
2023/04/04
8.7K0
Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标
【Linux】BASH基本攻略,分分钟PK掉黑客达人
你是否注意到,电影中超级讨厌的黑客仅仅只需键入几行指令,盯着黑底绿字的屏幕就能轻易渗透最安全的银行系统,将银行账户洗劫一空。这个人是如何只需敲击几下键盘便能畅通无阻访问所有密码并控制所有的隐藏摄像的呢?电影制作方如何达成这一效果并不好说,这有悖原理!但也许这就是他们的目的:通过镜头告诉观众 “commandline”是多么强大的工具!
昱良
2019/09/02
2.5K0
【Linux】BASH基本攻略,分分钟PK掉黑客达人
用户必会的 20 个 Linux 基础命令
在黝黑的终端窗口中输入命令,这样的方式对某些人群来说可能好像过时了,但对许多专业计算机人员来说,这几乎是计算机完成能够执行的所有任务的最有效、最简便和最清晰的方式。如今,一些项目将开源命令引入了 macOS 和 Windows 等非开放平台,因此终端命令不仅仅是针对 Linux 和 BSD 用户,更是与每个人都息息相关。你可能会惊讶地发现,在一台普通的 POSIX 计算机上安装了数千个命令,当然,其中很多命令并不是真的有用,至少不是直接或经常性被使用。而其中的一部分命令虽然不是有效终端必须使用的命令,但相比其他命令而言使用频率较高,值得大家学习一下。
用户1685462
2021/09/10
3890
海量的超赞 Linux 软件
来源:gitbooks 链接:见文末 Tux 这个仓库收集了对任何用户/开发者都超赞的 Linux 应用软件。 请随意 contribute / star / fork / pull request
小小科
2018/06/20
6.2K0
Missing Semester
为什么说版本控制系统非常有用?即使您只是一个人进行编程工作,它也可以帮您创建项目的快照,记录每个改动的目的、基于多分支并行开发等等。和别人协作开发时,它更是一个无价之宝,您可以看到别人对代码进行的修改,同时解决由于并行开发引起的冲突。
用户7267083
2022/12/08
3K0
awesome-linux-software-cn
Awesome-Linux-Software 是由 LewisVo 发起并维护的 Linux 软件资源列表。该列表收集了许多在 Linux 平台下非常棒的软件、实用工具以及其它相关资料,方便 Linux 爱好者查阅。 另外一个中文版本请参见 这里 应用程序 音频 Airtime - Airtime 是开源广播软件,它用于时间安排和远程站点管理。Open-Source Software Ardour -在 Linux 上录音、编辑和混音。 Audacious - 一款开源音频播放器,可以随心所欲地播放你的音乐
guanguans
2018/05/09
6.5K0
AutoHotkey(续集)
在学习使用 AutoHotkey(AHK) 之前, 你需要下载它. 下载后, 你可能会需要安装它. 但这取决于你下载的版本. 对于本指南, 我们将使用安装版, 因为对于新手来说, 它最容易设置.
云深无际
2021/04/14
3.3K0
AutoHotkey(续集)
你一定要知道!数据科学家提高工作效率的基本工具
当开始从事数据科学相关行业的时候,很多人都会被各种各样的可用工具所困扰。 有一些与这个问题相关的可用指南。例如“对于不擅长编程者的19日数据科学工具(链接地址为https://www.analyticsvidhya.com/blog/2016/05/19-data-science-tools-for-people-dont-understand-coding/)”或“Python学习数据科学的完整教程(链接地址为https://www.analyticsvidhya.com/blog/2016/01/com
AiTechYun
2018/03/05
7830
你一定要知道!数据科学家提高工作效率的基本工具
如何提高程序员的生产率(下)
目录 3. 开发过程... 12 4. 架构设计... 20 5. 管理激励... 23 三、 开发过程 沟通 软件通常都需要经过很多人和很多次的沟通才能生产出来,但是沟通本身又往往会影响软件的开发速度。这是一段很矛盾的关系。好的沟通方法能降低开发中因为信息不透明导致的开发资源浪费,而又尽量减少沟通所占用的精力。 需求沟通 在任何一个软件产品中,如何应对需求的变更,都是至关重要的。需求一直是软件工作得以成功或者失败的最重要因素。软件开发中很多技术和方法都是围绕着需求来设计的。 需求的沟通是需求工作的第一个环
韩伟
2018/03/05
8900
Linux命令行的艺术
熟练使用命令行是一种常常被忽视或被认为难以掌握的技能,但实际上,它可以提高你作为工程师的灵活性以及生产力。本文是一份我在 Linux 上工作时发现的一些关于命令行的使用的小技巧的摘要。有些小技巧是非常基础的,而另外一些则是相当复杂的甚至晦涩难懂的。这篇文章并不长,但当你能够熟练掌握这里列出的所有技巧时,你就学会了很多关于命令行的东西了。 必读 涵盖范围: * 这篇文章对刚接触命令行的新手以及具有命令行使用经验的人都有用处。本文致力于做到覆盖面广(尽量包括一切重要的内容),具体(给出最常见的具体的例子)以及简
小小科
2018/05/03
7K0
笨办法学 Java(一)
我已经教了超过 15 年的初学者如何编码。超过 2000 名学生参加了我的课程,离开时知道如何编写简单的程序。有些人只学会了一点,而其他人在短短几年内获得了令人难以置信的技能。
ApacheCN_飞龙
2024/01/26
3610
Python 自动化指南(繁琐工作自动化)第二版:六、字符串操作
在本章中,你将了解所有这些以及更多。然后,您将完成两个不同的编程项目:一个存储多个文本字符串的简单剪贴板和一个自动完成格式化文本片段的枯燥工作的程序。
ApacheCN_飞龙
2023/04/04
3.2K0
Python 自动化指南(繁琐工作自动化)第二版:六、字符串操作
Python 自动化指南(繁琐工作自动化)第二版:附录 C:练习题的答案
当谈到实践项目时,没有一个正确的程序。只要你的程序执行了项目所要求的,你就可以认为它是正确的。然而,如果你想看已完成项目的例子,可以在的“下载书中使用的文件”链接中找到。
ApacheCN_飞龙
2023/04/04
9990
推荐十款轻量的辅助开发工具
墨白推荐的这十款软件都是轻量级的辅助开发工具,除去idea和VMware Workstation这两款占内存的软件,其余的工具都是小而巧,在工作中是能够提高我们效率的开发神器.
框架师
2019/09/19
3.6K0
推荐十款轻量的辅助开发工具
Python 自动化指南(繁琐工作自动化)第二版:十二、网络爬取
由于计算机上的许多工作都涉及到上网,如果你的程序能上网就太好了。网络抓取是使用程序从网络上下载和处理内容的术语。例如,谷歌运行许多网络抓取程序,为其搜索引擎索引网页。在这一章中,你将学习几个模块,这些模块使得用 Python 抓取网页变得很容易。
ApacheCN_飞龙
2023/04/04
8.8K0
Python 自动化指南(繁琐工作自动化)第二版:十二、网络爬取
22款好用的CLI工具
作者根据多年的终端使用经验,详细介绍了一些实用的 CLI 工具,希望它们能帮读者提高生产力。
深度学习与Python
2020/08/07
2.3K0
22款好用的CLI工具
跨平台的开源输入法Rime定制指南,打造强大的个性化输入法
Rime/小狼毫/鼠须管是强大的开源输入法。但是,如何快速地在Linux、macOS以及Windwos上快速配置它呢?让我们一起来看看。
Mintimate
2023/03/22
6.6K0
跨平台的开源输入法Rime定制指南,打造强大的个性化输入法
Linux 命令行的艺术
熟练使用命令行是一种常常被忽视,或被认为难以掌握的技能,但实际上,它会提高你作为工程师的灵活性以及生产力。本文是一份我在 Linux 上工作时,发现的一些命令行使用技巧的摘要。有些技巧非常基础,而另一些则相当复杂,甚至晦涩难懂。这篇文章并不长,但当你能够熟练掌握这里列出的所有技巧时,你就学会了很多关于命令行的东西了。
一个会写诗的程序员
2022/01/07
4.6K0
推荐阅读
相关推荐
AutoKey - 适用于Linux和X11的桌面自动化应用程序
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文