在Emacs中,关于UTF-8,一切似乎都很好.问题是,我有时想要打印出包含Unicode字符的电子邮件(我使用mu4e作为我的MUA).
我通常会在mu4e中看到以下内容:view buffer:
From: A Person
To: Me
Subject: Notes on Chapter 9
Date: Tue 22 Sep 2015 13:46:44 CEST
Maildir: /mymaildir/INBOX
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
• “for open platforms” -> “for \textit{open platforms}, as defined in
[123]. Such platforms include frobbing devices and home-assistant
foobars.”
问题是,当我做M-x ps-print-buffer时,纸上的物理输出如下所示:
...
? ?for open platforms? -> ?for \textit{open platforms}, as defined in
[123]. Such platforms include frobbing devices and home-assistant
foobars.?
有谁知道我怎么打印,以便它看起来像我的屏幕上一样?在一些Startpaging / DuckDuckGoing之后,我还没有设法找到任何指针.
最佳答案 有一个简单的解决方案可能会或可能不会产生令人满意的结果. Emacs知道如何使用GNU Intlfonts,它允许打印非ASCII字符.
Intlfonts是位图字体,而不是最漂亮的字体.它们可能适用于ASCII文本,其中只有偶尔的非ASCII字符(引号,项目符号等),但对于使用非拉丁字母的文本,结果并不令人愉快(文本显示正确,只是没有漂亮).
要试用它,请先安装字体.这样做的方式取决于操作系统及其分布; Ubuntu的示例:
sudo apt-get install emacs-intl-fonts
然后调整以下Emacs设置:
(setq ps-multibyte-buffer :bdf-font-except-latin)
(setq bdf-directory-list "/usr/share/emacs/fonts/bdf")
第一个变量指示Emacs对非拉丁字符使用Intlfonts.第二个变量指定字体的位置(确保将其设置正确,否则Emacs将静默忽略设置).
虽然一些来源(例如Mx describe-variable ps-mule-font-info-database和these pages)表明可以配置ps-print以非使用Intlfonts的方式打印非ASCII字符,但我没有找到合适的配置.如果找到,请告诉我.
BTW,直接调用lpr-buffer似乎打印国际字符就好了.