プリンタポートの確認:
なんでもいいですが、テキストファイルを印刷してみます。
起動メッセージのログでもとってみましょう。
& dmesg > /dev/lp0
起動時のメッセージが印刷されていれば、プリンタポートは正常に使えます。
printersetup と printcap:
基本的には
# printersetup
でセットできます。設定は、項目の選択に↑↓キー、<OK><Cancel> や <Yes><No>の選択に←→キーを使います。決定はリターンキーです。私の設定は、
プリンタの接続方法 | local プリンタは使っているマシンに接続 |
プリンタポートの選択 | /dev/lp0 DOSのLPT1 |
プリンタドライバの選択 | bjc600 |
プリンタ名の設定 | lp |
BJC420J の場合、デバイスを bjc600 としてセットします。
これで spoolディレクトリのセッティングも行ってくれます。
用意ができたら、
# lpc restart all
として lpd (プリンタデーモン)を起動します。
これで例えば、
# cd /usr/local/share/ghostscript/3.33/kanji/
# lp -Plp article9.ps
(大ウソですね。# lpr -Pps article9.ps です。1999.7.13 修正)
とすると憲法第9条が印刷されるので、PS(ghostscript)が使えることが確認出来ます。/usr/local/share/ghostscript/3.33/sample/tiger.ps を印刷すると、立派な虎の絵が印刷できます。(カラー印刷できませんでしたが、できるのかな?)
ところが、lpr hoge.txt (hoge.txt は euc or jis のプレーンテキスト)としてもテキストの印刷ができません。どうやらフィルターの lp-if がうまく働いていないようです。
lp-if を escpf に換えてもだめなようです。
そこで、ftp://ftp.TokyoNet.AD.JP/pub/misc/print から esc-if_1.5.tar.gz をダウンロードして make します。
& tar xvzf esc-if_1.5.tar.gz
& make
& make install
これで、esc-if ができますので、/etc/printcap の if: 行を
:if=/usr/local/libexec/esc-if:\
と書き換えます。
おまけ(dp/NOTEのプリンター):
オムロンから dp/NOTE for Lynux/FreeBSD というワープロが発売されています。現在は ver.2 になっていますが、私は何故か ver.1 を持っています。(正規ユーザーだよ)
基本的には dp/NOTE をインストールした時にできる printcap.gs.add を現在の printcap に付け加えてやればよいので、
# cat /usr/local/OMRONDp/boxlinux/printcap.gs.add >> /etc/prinntcap
(リダイレクションは必ず >> のように2個とすること)
としてやればよいのですが、プリンタポートの表記が FreeBSD タイプになってますので書き換えます。
:lp=/dev/lpt0:\ → :lp=/dev/lp0:\
これで終わりと思いきや、もう一つ落し穴があります。
/usr/local/OMRONDp/Dplinux/dpf に登録されたプリンタデバイスが bjc600j になっているので bjc600 に直します。printersetup で選択したプリンタドライバ名と一致させておかないと、紙がなくなるまで "Unknown device: bjc600j" と印刷し続けてくれます。(^^;;;;
万一こうなったら、# rm /var/spool/lpd/dp/* としてスプールを消して下さい。
準備ができたら lpc restart all して下さい。
これで印刷の時、ps を選択すれば印刷できます。