GNU troff (groff)で、UTF-8なファイルを処理する

groff 1.22.4では、UTF-8な入力ファイルを扱えるようになったという噂を聞いていたように思う。 私は、以前からgroffで日本語の含まれたPDFファイルを出力したかったのだが、groffでどこまでできるか試してみた。 だが、結論としては、groff 1.22.4で日本語の文字の含まれたPDFファイルを出力することはできなかった。 PostScriptファイルも同様に駄目である。 テキストファイルを出力する場合には、正しく動く。 HTMLファイルを出力する場合には、日本語の文字は数値実体参照になってしまい、1文字ごとにホワイトスペースも入ってしまい使えない。 でも、UTF-8なテキストファイルを出力できるだけでも、例えば日本語のman pagesを出力するには十分であり、 役に立つように思う。

msマクロの場合では、以下のようにすれば良い。

groff -Kutf8 -Tutf8 -ms test.roff > test.txt
man pagesで使われるmdocマクロの場合では、以下のようにすれば良い。
groff -Kutf8 -Tutf8 -mdoc test.1 | less -R
ここで、less -Rは、lessコマンドでエスケープシーケンスを反映させて表示すると言うことである。

Comments

Popular posts from this blog

NetBSD/amd64-currentをAmazon Web Service EC2 c5インスタンスで動かしてみる

PostgreSQLのOracle Foreign Data WrapperをWindowsで使う

Oracle OLEDB Provider Version 12.2.0.1.0 for Windows x86をインストールする際のエラー