我正在尝试学习如何在 groff 中插入 mapsto (↦,U+21A6) 字符。
我正在尝试使用此代码插入字符
\[u21A6]
但是我收到以下错误消息,并且输出文件中没有插入任何内容:
troff: doc.ms:40: warning: can't find special character 'u21A6'
我尝试遵循多个教程并阅读一些文档,但找不到问题的解决方案。
我做错什么了?
(顺便说一下,我尝试了使用和不使用 -Kutf8 选项,以及在文件中插入 Unicode 字符 ↦)
以下是文档示例(文件 test.ms):
.TL
document
.LP
a \[u02DA] b
a ↦ b
.EQ
define maps_to % ↦ %
a maps_to b
.EN
我使用的命令行是:
groff -e -ms -Kutf8 test.ms | gv -
我在另一个答案中解释了如何对另一个字符执行此操作。此外,使用
eqn
和ms
宏会增加进一步的复杂性,因为需要为每个字符指定字体。因为
ms
您需要一个包含4 种字体的字体系列。您需要重复将 ttf 字体转换为 PostScript Type 1 格式,以便将一个系列中的 4 种字体转换为 PostScript Type 1 格式,而不仅仅是DejaVuSans-Bold
。例如,使用 bash 脚本您可能需要更改
dir=
为您的发行版使用的适当名称。然后在文档的开头添加 troff 命令跑步前
groff
,gv
记得我不太熟悉字体
eqn
,但你需要类似