.\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)printcap.5 8.2 (Berkeley) 12/11/93 .\" %Id: printcap.5,v 1.5.2.5 1998/04/28 13:49:50 danny Exp % .\" .\" jpman %Id: printcap.5,v 1.3 1998/07/21 23:12:17 jsakai Stab % .Dd December 11, 1993 .Dt PRINTCAP 5 .Os BSD 4.2 .Sh 名称 .Nm printcap .Nd プリンタケーパビリティデータベース .Sh 書式 .Nm printcap .Sh 解説 .Nm printcap は、 ラインプリンタの記述に使われる .Xr termcap 5 を簡略化したものです。 スプールシステムは利用のたび毎に .Nm printcap ファイルにアクセスするため、 プリンタを動的に追加したり削除することが可能です。 データベース中の各々のエントリが、1 台のプリンタを記述するのに使われます。 .Xr termcap 5 とは異なり、このデータベースは代替できません。 これは、アカウント情報がバイパスされてしまうことがあるからです。 .Pp デフォルトのプリンタは通常 .Em lp ですが、環境変数 .Ev PRINTER によって上書きすることもできます。 各スプーリングユーティリティはオプション .Fl P Ar printer をサポートし、出力先のプリンタ名を明示することが可能です。 .Pp あるプリンタに対するデータベースをセットアップする方法の詳細については、 .%T "4.3 BSD Line Printer Spooler Manual" を参照してください。 .Sh ケーパビリティ ファイルレイアウトの解説については .Xr termcap 5 を参照してください。 .Bl -column Namexxx Typexx "/var/spool/lpdxxxxx" .Sy Name Type Default Description .It "af str" Ta Dv NULL Ta No "アカウンティングファイル名" .It "br num none lp が tty の場合、ボーレートを設定 " .Pf ( Xr ioctl 2 call) .It "cf str" Ta Dv NULL Ta No "cifplot データ用フィルタ" .It "ct num 120 TCP コネクションのタイムアウト時間(秒)" .It "df str" Ta Dv NULL Ta No "tex データ用フィルタ" .Pf ( Tn DVI フォーマット) .It "ff str" Ta So Li \ef Sc Ta No "フォームフィード送信文字" .It "fo bool false デバイスオープン時にフォームフィードを印字" .It "gf str" Ta Dv NULL Ta No "グラフデータフィルタ" .Pf ( Xr plot 3 フォーマット .It "hl bool false バーストヘッダページを最後に印刷" .It "ic bool false 字下げ出力の用の(非標準の) ioctl をサポートした ドライバ" .It "if str" Ta Dv NULL Ta No "アカウンティングを行うためのテキストフィルタ名" .It "lf str" Ta Pa /dev/console Ta No "エラーロギングファイル名" .It "lo str" Ta Pa lock Ta No "ロックファイル名" .It "lp str" Ta Pa /dev/lp Ta No "出力時にオープンするデバイス名" .It "ms str" Ta Dv NULL Ta No "lp が tty の場合、コンマで区切ったリスト。" tty モード記述用の .Xr stty 1 リストに似ている。 .It "mx num 1000 最大ファイルサイズ (" .Dv BUFSIZ ブロック単位)。0 = 制限なし。 .It "nd str" Ta Dv NULL Ta No "キューのリスト用の次のディレクトリ (未実装)" .It "nf str" Ta Dv NULL Ta No "ditroff データ用フィルタ (device independent troff)" .It "of str" Ta Dv NULL Ta No "出力用フィルタリングプログラム名" .It "pc num 200 1 フィートまたは 1 ページあたりの 費用 (1/100 セント単位)" .It "pl num 66 1 ページの行数" .It "pw num 132 1 行の文字数" .It "px num 0 ピクセル単位のページ幅 (水平方向)" .It "py num 0 ピクセル単位のページ長 (垂直方向)" .It "rf str" Ta Dv NULL Ta No "" .Tn FORTRAN 形式のテキストファイル出力用フィルタ .It "rg str" Ta Dv NULL Ta No "グループ制限。許可されたグループのメンバのみアクセスが許可される" .It "rm str" Ta Dv NULL Ta No "リモートプリンタ名" .It "rp str ``lp'' リモートプリンタ名引数" .It "rs bool false ローカルにアカウントを持つリモートユーザに対する制限" .It "rw bool false 読み書き用にオープンするプリンタデバイス名" .It "sb bool false 短いバナー (1 行のみ)" .It "sc bool false 複数コピーの抑制" .It "sd str" Ta Pa /var/spool/lpd Ta No "スプール ディレクトリ" .It "sf bool false フォームフィードの抑制" .It "sh bool false バーストページヘッダの出力抑制" .It "st str" Ta Pa status Ta No "状態ファイル名" .It "tf str" Ta Dv NULL Ta No "troff データ用フィルタ (cat phototypesetter)" .It "tr str" Ta Dv NULL Ta No "キューが空の時に印刷するトレイラ文字列" .It "vf str" Ta Dv NULL Ta No "ラスタイメージ用フィルタ" .El .Pp ローカルラインプリンタのドライバが字下げをサポートしているならば、 プリンタデーモンはその使い方を理解しなければなりません。 .Sh フィルタ .Xr lpd 8 デーモンは .Em filters のパイプラインを作成し、さまざまなタイプのプリンタ用に処理を行います。 フィルタは .Xr lpr 1 へ渡されるフラグに応じて選択されます。 パイプラインは次のように設定されます。 .Bd -literal -offset indent p pr | if 通常テキスト + pr(1) none if 通常テキスト c cf cifplot d df DVI (tex) g gf plot(3) n nf ditroff f rf Fortran t tf troff v vf ラスタイメージ .Ed .Pp .Sy if フィルタは次の引数をとります。 .Bd -filled -offset indent .Cm if .Op Fl c .Fl w Ns Ar width .Fl l Ns Ar length .Fl i Ns Ar indent .Fl n Ar login .Fl h Ar host acct-file .Ed .Pp .Fl c フラグは .Fl l フラグ (コントロール文字をそのまま通過させます) が .Xr lpr 1 に指定された場合のみ渡されます。 .Ar width 機能と .Ar length 機能はページ幅とページ長を (それぞれ .Cm pw と .Cm pl によって) 文字単位で指定します。 .Fl n と .Fl h パラメータでそれぞれのジョブの所有者のログイン名とログイン先ホスト名を 指定します。 .Ar acct-file 機能は .Nm printcap の .Cm af エントリがそのまま使われます。 .Pp .Cm if が指定されなかった場合、 .Cm of が代わりに使われます。 .Cm of は .Cm if が個々のジョブ毎にオープンされるのに対して、たった 1 回だけ オープンされると言う特徴を持っています。 そのため、アカウンティングを行うには .Cm if の方が向いています。 .Cm of には、 .Ar width と .Ar length フラグのみが与えられます。 .Pp その他の全てのフィルタは次のように呼び出されます。 .Bd -filled -offset indent .Nm filter .Fl x Ns Ar width .Fl y Ns Ar length .Fl n Ar login .Fl h Ar host acct-file .Ed .Pp .Ar width と .Ar length はピクセル単位で表され、それぞれ .Cm px と .Cm py エントリで指定されます。 .Pp 全てのフィルタはファイルを .Em stdin から読み込み .Em stdout からの出力をプリンタに送られ、 .Em stderr または .Xr syslog 3 がログ出力に使われます。 フィルタは .Dv SIGINT を無視してはいけません。 .Sh ロギング ラインプリンタプログラム自身 (つまり .Xr lpd 8 とそれに関連するプログラム) が生成したエラーメッセージは、 .Xr syslog 3 の .Dv LPR ファシリティを使ってロギングされます。 フィルタの 1 つから .Em stderr に出力されたメッセージは、対応する .Cm lf で指定されたファイルに送られます。 当然、フィルタ自身もまた .Xr syslog 8 を使うことがあるかも知れません。 .Pp コンソールに送られるエラーメッセージには、ラインフィードだけではなく キャリッジリターンとラインフィードが追加されます。 .Sh 関連項目 .Xr lpq 1 , .Xr lpr 1 , .Xr lprm 1 , .Xr hosts.lpd 5 , .Xr termcap 5 , .Xr lpc 8 , .Xr lpd 8 , .Xr pac 8 .Rs .%T "4.3 BSD Line Printer Spooler Manual" .Re .Sh 歴史 .Nm ファイルフォーマットは .Bx 4.2 から登場しました。