月別アーカイブ: 2013年5月

a2ps-j

a2ps-j が古くて、pkgsrc からインストールしたのは perl-5.16.2 では動かない模様。

パッチがあった。ただし若干修正が必要。
http://ftp.cc.uoc.gr/mirrors/macports/release/ports/print/a2ps-j/files/patch-a2ps-j.diff

上記の URL からパッチをダウンロードし、/etc/mk.conf の LOCALPATCHES で指定したディレクトリに置く。

LOCALPATCHES=/anywhere/localpatches なら、
/anywhere/localpatches/print/a2ps-j/patch-a2ps-j.diff
となる。

パッチがあたっているファイル名が異なるので、修正する。

元のパッチで

--- a2ps-j.orig	2012-02-23 15:04:21.000000000 +0900
+++ a2ps-j	2012-10-02 01:58:37.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/env perl
 ;#

となっているのを

--- a2ps.pl-1.45.orig   2012-02-23 15:04:21.000000000 +0900
+++ a2ps.pl-1.45        2012-10-02 01:58:37.000000000 +0900
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/env perl
 ;#

のようにする。

a2ps-j の出力は PostSccript なので、PDF 変換のために ghostscript をインストールする。

pkgsrc/print/ghostscript をインスト-ル。日本語フォントを入れるときに文句を言われるので、予め /etc/mk.conf に下のオプションを指定してコンパイルする。

PKG_OPTIONS.ghostscript+=disable-compile-inits

日本語フォントとして、
pkgsrc/font/ghostscript-cidfonts-ryumin
をインストールする。フォントが複数あって、インストール時のオプションで排他的に指定するようになっている。

IPAフォントを使うのが良さそう。
PKG_OPTIONS.gcr_type+=ipa

ソースコードの印刷

コメントに日本語を含むソースコード(Fortran95)を印刷するのに良い、そして手軽なツールはないかと模索してみた。

コーディングは NetBSD 上で作成してるが、印刷環境は Windows にあるので、どっちでもいいが、とにかく手軽のものを希望。

スプリント
http://www.vector.co.jp/soft/win95/writing/se252056.html

おおむね問題ないが、一点だけ不満。

UTF-8のテキストでバックスラッシュが含まれる場合に全角で印刷されてしまう。半角のバックスラッシュか、半角の円マークで印刷して欲しいところ。

保留。

paps-0.6.8
http://lfsbookja.sourceforge.jp/BLFS/svn.ja/pst/paps.html

日本語も処理できるような記述はあるのだが、何も考えないで NetBSD の pkgsrc からインストールして実行したら日本語は表示されなかった。エラーは特に出ていない。

フォントの問題かもしれないが、ドキュメントが少なくてよくわからない。

却下。

gnome-u2ps
http://www.gnome.gr.jp/~nakai/u2ps/

pkgsrc に含まれていないようなので、見送り。gnome 関連を個別に入れるというのは敷居が高すぎる。gnome がアップデートしたときにどうなるのかよくわからないので。

却下。

u2ps (perlで記述されている)
http://u2ps.berlios.de/

こちらも pkgsrc には含まれていないが、perl ならなんとかなるかな。

と思ったらだめだった。パスとか埋め込みだったりでいろいろと手を入れないと動かなそう。

完成度がイマイチなので却下。

a2ps-j + iconv

昔なつかし a2ps-j。UTF-8 を処理できないので iconv による前処理で EUC-JP に変換する必要がある。

安定度は問題なし。バックスラッシュもちゃんとバックスラッシュとして印刷される。

iconv を通すところがちょっと面倒だけど、これが一番実用的かな?