Mac 免费文本扩展工具:文本替换与 espanso 对比
Comoji 为 Mac 上的每一个应用免费加入 Slack 风格的 :emoji: 自动补全。
在继续阅读之前,先把预期说清楚,因为在这篇文章里,人们最常带着错误的期望而来。Comoji 不是通用的文本扩展工具。它只扩展 :emoji:,别的什么都不扩展:它不会把 omw 变成“On my way!”,不会粘贴你的地址,也没有片段库、变量或脚本功能。如果你需要这些,诚实的答案是用一款专门的扩展工具,下文会介绍几款免费的。
本指南真正讨论的是一项更窄的任务:在 Mac 上免费实现表情文本替换,也就是文本扩展中“库”有 1,800 来个字符、谁都不想手动录入的那一部分。Apple 内置的文本替换和开源的 espanso 都能做到,代价是维护成本。冒号自动补全则完全不需要建立任何列表。下面介绍每种方式的表现,以及该怎么搭配。
免费的通用扩展工具(以及它们的代价)
文本扩展工具会留意你输入的内容,把一个简短的触发词换成更长的替换内容:输入 omw 得到“On my way!”,输入 :fire: 得到 🔥。最知名的专门应用 TextExpander、PhraseExpress 和 Keyboard Maestro 都是付费的,但在 Mac 上你一分钱都不用花。两条免费路线几乎能满足所有人:Apple 内置的文本替换适合简单片段,espanso 适合可编写脚本的跨平台扩展。两者都把表情当作文本的一种特例来处理,而这恰恰是它们变得繁琐的地方。
Apple 文本替换:免费的内置扩展工具
macOS 免费附带一个基础的文本扩展工具,并通过 iCloud 同步到你的 iPhone 和 iPad。对于一小组你经常使用的片段,它是合适的第一站:
- 打开系统设置 › 键盘 › 文本替换(在较早的 macOS 上位于键盘 › 文本)。
- 点按
+按钮。 - 在替换中输入触发词,例如
omw或:fire:。 - 在替换为中输入扩展内容(如果是表情,从用
Control-Command-Space打开的选择器中粘贴一个)。 - 按
Return,然后为每个想要的片段重复以上步骤。
它的优点是免费、内置,并且能在你的 Apple 设备之间同步,所以你在 Mac 上添加的 omw 规则会跟着你到手机上。局限也很快就会显现:没有自动补全,也没有预览,你必须准确记住每个触发词,而在那个小小的滚动列表里管理几十个以上的条目是件苦差事。专门针对表情的取舍,我们在文本替换与表情自动补全中做了深入讨论,另外还有一张 Comoji 与 Apple 内置文本替换的逐项功能对比表。
espanso:免费开源的文本扩展工具
如果文本替换已经满足不了你,而你又不想订阅,espanso 是一款免费开源的文本扩展工具,可在 macOS、Windows 和 Linux 上运行。安装它(在 Mac 上通常用 brew install espanso),然后在 YAML 配置文件中定义你的片段。由于它是由配置驱动的,它能做的远不止静态替换:动态日期、shell 命令输出、剪贴板内容和填空表单都在其能力范围内,你还可以在多台机器之间共享片段包。
这种强大的代价是学习曲线。你要编辑的是文本文件,而不是设置面板,熟悉 YAML 语法和匹配规则需要一点时间。对于开发者和重度片段用户来说,它是付费扩展工具的一个真正能干的免费替代品;而对于只想要几个表情的人来说,它的设置工作超出了这项任务所需。
输入表情时免费文本扩展工具会拖慢你的地方
这两个免费选项都很擅长扩展你定义好的文本。但对于表情来说,“库”有 1,800 来个字符,你根本不可能手动录入,通用模型反而会跟你作对:
- 每个表情触发词都得你自己定义,没有初始集合,也无从发现。
- 没有自动补全或预览,所以你必须准确记住每个触发词,是
:fire:还是:flame:,记错了就什么都不会发生。 - 触发词打错了会悄无声息地失败,没有任何提示告诉你原因。
- 它们都不会按你实际发送的内容排序,也不处理肤色,所以你最常用的表情永远不会优先出现。
输入表情更快的方式:冒号自动补全
对于表情,制胜之道不是一份更好的触发词列表,而是根本不维护列表。自动补全颠覆了这个模式:你输入一个冒号和几个字母,候选项按顺序出现,你确认想要的那一个。不需要事先定义任何东西,也不需要拼写完全正确,而且从第一次启动起,1,800 来个字符就全部可用,而不只是你有耐心录入的那十个。

:fire 再按 Tab,选择器会来到你的光标处,无需事先定义触发词。具体来说::party 会在光标处给出排好序的候选项,按 Tab 确认;拼错成 :parrty 只会让匹配变少,而不是悄无声息地失败;忘了名字的话,连按两下触发键就能打开一个可搜索的网格。不过范围这件事必须说清楚,而且它是刻意设定得很窄的。表情、贴纸和 GIF,仅此而已。没有片段,没有变量,没有日期,没有脚本。它和 espanso 或文本替换并存,从它们身上接过一项工作;它不会取代其中任何一个(Comoji 是免费的)。它与其他内联表情工具的比较,请见 Mac 上最好的表情选择器。如需更改触发键,请见 Slack 风格表情快捷方式指南。
把它加在你的扩展工具旁边
Comoji 与你用来扩展文字的工具是分开安装的,两者不会冲突:espanso 和文本替换留意的是你定义的触发词,Comoji 留意的是冒号标记。安装应用加上授予两项 macOS 权限,大约需要三分钟;完整步骤在安装与设置页面上。
该用哪个?
按任务来划分,而不是按喜好。片段、样板文字以及任何你想同步到 iPhone 的内容:用 Apple 的文本替换,免费而且已经内置。带日期、shell 输出和表单的可脚本化扩展:用 espanso,免费且开源。表情:用冒号自动补全,因为不需要建立列表,也不需要记住触发词。几乎每个打字量大的人最终都会用一款扩展工具处理文字,再用 Comoji 处理 :emoji:,两者谁也替代不了谁。在 Mac 上输入表情的所有内置方法,请见如何在 Mac 上输入表情。
所以:保留你处理文字所需的扩展工具,别再手动定义那些一周后就会记错的表情触发词了。
常见问题
如何在 Mac 上免费设置表情文本替换?
有两条免费路线。在“系统设置 › 键盘 › 文本替换”中添加 :fire: 这样的触发词,并把表情粘贴到“替换为”栏中,每个表情重复一次。或者安装 Comoji,它为全部表情提供冒号自动补全,你只需输入 :fi,看到排好序的匹配项,按 Tab 即可,无需事先定义任何东西。
Comoji 是文本扩展工具吗?
不是。Comoji 只扩展表情、贴纸和 GIF。它不会扩展单词、样板文字或片段,所以无法取代 TextExpander、espanso 或 Apple 文本替换。如果你需要通用的片段扩展,请保留其中之一,让 Comoji 负责表情。
Mac 上有 TextExpander 的免费替代品吗?
有。TextExpander 是付费订阅,但 Apple 文本替换(macOS 内置)和 espanso(免费开源)都能免费扩展片段。至于表情,Comoji 为全部表情提供冒号自动补全,无需订阅。
macOS 文本替换能扩展表情吗?
能。在“系统设置 › 键盘 › 文本替换”中,在“替换”栏添加 :fire: 这样的触发词,在“替换为”栏粘贴 🔥。问题在于你必须手动添加每个表情,并准确记住每个触发词,而且没有自动补全,所以超过几个常用表情后就难以扩展。
用了 Comoji 还需要文本扩展工具吗?
它们做的是不同的工作。Comoji 用冒号和斜杠快捷方式处理表情、贴纸和 GIF,但它不是通用的文本扩展工具,所以不会扩展单词或样板文字。请保留 Apple 文本替换或 espanso 来处理文本片段,让 Comoji 负责表情。
免费下载 Comoji Mac 版
Slack 和 Discord 风格的 :emoji: 自动补全,在 Mac 上随处可用。免费。