Linux 默认提供了出色的桌面体验。尽管高级用户可以灵活选择自己的 窗口管理器,但自从 GNOME 3.36 改进以来,Gnome 的日常流程比以往任何时候都更好。作为一个长期 Mac 爱好者转变为 Linux 用户的人,这意义重大。
然而,有一个快捷方式我每天在 Mac 上使用,但在 Linux 上默认找不到。这是一个我每天做几十次的任务,也是我数字通信的重要组成部分。它是表情符号启动器。
当您看到这个时可能会发笑,但请耐心听我说。
大多数交流都包含肢体语言,专家估计人们记住的内容中高达 80% 来自肢体语言。根据 Advancement Courses 的 表情符号历史,人们自 1800 年代以来一直在使用“印刷艺术”。无可争辩的是,1881 年,《Puck 杂志》刊登了四个表示喜悦、忧郁、冷漠和惊讶的面孔。关于亚伯拉罕·林肯在 1862 年使用眨眼笑脸 ;)
是笔误还是有意的表达形式,存在一些争议。我可以进一步推测到象形文字,正如这个 博物馆展览 所做的那样。无论您如何看待,表情符号及其祖先先辈长期以来一直在写作中传达复杂的人类情感。这种力量不会消失。
Mac 通过快捷方式轻松地将这些奇怪的表达形式添加到文本中,以便快速将表情符号插入句子中。按下 Cmd+Ctrl+Space 会启动一个菜单,快速点击即可完成击键。
GNOME 尚未默认具备此功能,但有开源软件可以添加它。
我在 Linux 上首次尝试表情符号
那么,如何为 Linux 窗口管理器添加表情符号快捷方式功能呢?我从试错开始。我沿途尝试了大约十几个不同的工具。我找到了 Autokey,它一直是使用快捷方式或关键字插入文本的好方法(我仍然为此使用它),但 表情符号扩展 对我不起作用(在 Fedora 或 Pop!_OS 上)。我希望有一天它能起作用,这样我就可以使用冒号表示法插入表情符号,例如 :+1:
来获得 👍。
事实证明,表情符号的渲染方式以及它们与整个窗口管理器的字体选择的交互方式并非易事。在我的挣扎过程中,我联系了 GNOME 表情符号团队(是的,有一个 表情符号团队!),并对其复杂性有了一点了解。
但是,我确实找到了一个在多个 Linux 发行版上都能稳定运行的项目。它叫做 Splatmoji。
用于插入表情符号的 Splatmoji
Splatmoji 让我在 Linux 设置中一致地插入表情符号,就像我在 Mac 上一样。以下是它的实际效果

(Matthew Broberg,CC BY-SA 4.0)
它是用 Bash 编写的,考虑到它所做的一切,这令人印象深刻。Splatmoji 依赖于 Bash 之外的一个非常有趣的工具链,以避免其主要功能中的大量复杂性。它使用
- rofi 提供流畅的窗口切换器体验
- xdotool 将击键输入到窗口中
- xsel 或 xclipboard 复制选定的项目
- jq,一个 JSON 处理器,如果调用 JSON 转义
得益于这些依赖项,Splatmoji 成为了一个出奇简单的工具,可以按正确的顺序调用这些组件。
设置 Splatmoji
Splatmoji 为基于 dnf 和 apt 的系统提供打包版本,但我使用源代码进行设置,以便跟上项目的最新更新
# Go to whatever directory you want to store the source code.
# I keep everything in a ~/Development folder, and do so here.
# Note that `mkdir -p` will make that folder if you haven't already.
$ mkdir -p ~/Development
$ cd ~/Development
$ git clone https://github.com/cspeterson/splatmoji
$ cd splatmoji/
使用您的包管理器的语法安装上述要求。我通常使用 Homebrew 并将 /home/linuxbrew/.linuxbrew/bin/
添加到我的路径,但在此示例中我将使用 dnf
$ sudo dnf install rofi xdotool xsel jq
测试一下
$ cd ~/Development/splatmoji/
$ ./splatmoji copy
如果一切安装正确,您应该会看到一个弹出窗口,您可以在其中选择表情符号。选择它会将表情符号添加到您的剪贴板。使用 Ctrl+V 粘贴它。

(Matthew Broberg,CC BY-SA 4.0)
设置表情符号快捷方式
安装软件是第一步,但好处来自于拥有插入富有表现力的表情符号的快捷方式。
Splatmoji 为 i3wm 用户 提供了一个快捷方式,但我使用 GNOME 的默认设置。要设置它
- 导航到 设置 > 键盘 > 键盘快捷键。
- 点击 自定义快捷键 > 添加快捷键。
- 添加名称(我选择了表情符号启动器)。
- 添加命令。*
- 点击 设置快捷键,然后选择您的组合键(我选择了 Ctrl+Alt+Space 来模仿 Mac)。
* 该命令必须完全是您希望 Gnome 运行的命令。如果您到目前为止都按照本教程进行操作,请使用您在上面克隆的 splatmoji 存储库的路径。
YOURUSER
是您的用户的文件夹名称。在 Splatmoji 文件夹中运行pwd
以确保万无一失。/home/YOURUSER/Development/splatmoji/splatmoji copypaste
请注意,该命令包含两次
splatmoji
,因为它既是文件夹名称又是脚本名称(我花了几个小时的故障排除才注意到)。如果您的操作正确,您应该能够点击您的快捷方式并看到表情符号选择器。
选择更多选项
有很多方法可以自定义您的设置。
您可能已经注意到上面命令中的 copypaste
部分。我更喜欢这个命令参数,因为它既可以立即粘贴表情符号,又可以选择使用额外的 Ctrl+V 快捷键粘贴更多表情符号(Mac 没有这个功能!)。以下是选项
Positional arguments:
[copy|type|copypaste]
This application can place the final selection into the user's
clipboard (copy), type it out for the user (type), or place the final
selection into the user's clipboard and paste it out for the user with
a configured key combo (copypaste).
除此之外,我坚持使用 Splatmoji 的默认设置,但您可能想要使用 -l
更改默认语言,或使用 -s
更改表情符号肤色
# Pulling helpful commands out of the man page
# Run `splatmoji -h` for all options
Flags:
-l, --languages LANG1,LANG2,LANG3
With emoji from the included database, it is possible to specify
keyword/annotation languages to include in addition to `en`. `nn`
for Norwegain, `fr-CA` for Canadian French, etc. In theory this could
apply to both emoji *and* emoticons, but the emoticons only come in
English at the moment. Default: en
-s, --skin-tones [light,medium-light,medium,medium-dark,dark]
Fitzpatrick scale skin tones to display for emoji that can be modified
by such. If given, emoji containing any other skin tones will be
omitted from the choice list.
根据需要将每个标志添加到您之前创建的快捷方式中。例如,如果我是一个使用 Fitzpatrick 量表上的深色调的法语使用者,并且只想复制表情符号(而不是粘贴它),那么我的命令将是
/home/YOURUSER/Development/splatmoji/splatmoji -l fr -s dark copy
将其整合在一起
许多人欣赏表情符号,也有许多人不欣赏。无论您是否喜欢这些数字注释,它们在交流中都有着丰富的历史相关性,并且它们不会很快消失。
Splatmoji 提供了一条类似于 Mac 提供的快捷表情符号选择器的路径。突出之处在于它提供了多少自定义选项,使其成为那些喜欢折腾的人更有效的工具。安装该工具及其依赖项,然后为自己设置在未来轻松选择表情符号的环境。?
评论已关闭。