FreeBSDでもプリンター OKI 3400N で印刷できる(その2)

前の記事の続きです。

6. 印刷オプション用ファイルの作成

適当な名前のファイル、例えば、~/.oki_option を作ります。
ひとつの行に「オプション名(c、p、sなど) バリュー」(例えば「s 1」または「s=1」)と書きます。#以降はコメントです。オプションの内容についてはfoo2hiperc-wrapperを読んでください。
私の場合は、とりあえず下の4行だけで十分でした。

#~/.oki_option
c # color mode
p 1 # paper size A4
s 1 # source(紙の挿入もと)
t # トナー節約mode

7. Filter scriptの書き換え

印刷オプションファイル ~/.oki_option を読み込むように、フィルタースクリプトを書き換えます。今度はちょっとだけ複雑です。

#!/usr/bin/perl
# File: /usr/local/libexec/ifoki_foo
my $switch = "";
my $file = `ls ~/.oki_option`;
if (open F,"$file") {
    while(<F>) {
        /^\s*#/ and next;
        /^\s*$/ and next;
        s/#.*$//;
        s/^\s+//;
        s/\s+$//;
        s/[\s=:]+/ /;
        $switch .= " -$_";
    }
    close F;
}
$switch ||= " -c -p 1 -s 1";
exec "/usr/local/bin/foo2hiperc-wrapper $switch";

これで一応印刷オプションを指定出来るようになりました。しかし、設定を変えたい度に、wrapperとにらめっこしながら、~/.oki_optionを書き換えるというのは、あまりスマートとは言えません。何かもっとよい簡単な方法は無いでしょうか。

8. 対応可能プリンタ機種名

このドライバー群で対応可能なプリンタのモデル名を列挙しておきます。FreeBSDだけでなくLinuxでも大丈夫でしょう。

Oki Data C3100, C3200, C3300, C3400, C5100, C5250, C5500, C5600, C5800
HP Color LaserJet 1600, 2600n, CP1215
Konica Minolta magicolor 2530 DL, 2490 MF
Xerox Phaser 6115MFP
Konica Minolta magicolor 1600W, 1680MF, 1690MF
Konica Minolta 2480 MF
HP Color LaserJet 1500
Kyocera Mita KM-1635
Samsung CLP-300, CLP-310, CLP-315, CLP-600, CLP-610, CLX-2160
Xerox Phaser 6110MFP
Lexmark C500
LaserJet M1005
Minolta/QMS 2300 DL, 2200 DL
HP LaserJet 1000, 1005, 1018, 1020, P2035

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中