書式
xman [ -options ... ]説明
xman はオンラインマニュアルのブラウザである。xman の起動時のウィンド ウのデフォルトサイズは小さいので、ユーザはログインセッションの間ずっと xman のウィンドウを出したままにできる。初期ウィンドウには3つのコ マンドが選択できる: Help ボタンはオンラインヘルプのウィンドウをポップアップさせ、 Quit は xman を終了させ、Manual Page はマニュアルペー ジブラウザを含むウィンドウをポップアップさせる。 Control-S を入力すると、表示する特定のマニュアルを問い合わせるウィンド ウがポップアップする。 これにより、xman を一つ実行するだけで複数のマニュアルブラウザの ウィンドウを表示することができる。xman のより詳しい情報については、オンラインヘルプを参照すること。 このマニュアルのほとんどは xman のカスタマイズに関する説明である。
オプション
xman は X ツールキット標準のコマンド行オプション(X(1) 参照) を全てサポートしている。これに加えて、以下のオプションもサポートしてい る。
- -helpfile filename
- デフォルトでないヘルプファイルを使用する。
- -bothshown
- マニュアルページとマニュアルディレクトリを同時にスクリーンに表示する。
- -notopbox
- 起動時に3つのボタンがあるトップメニューを出さない。
- -geometry WxH+X+Y
- 3つのボタンがあるトップメニューのサイズと位置をセットする。
- -pagesize WxH+X+Y
- 全てのマニュアルページのサイズと位置をセットする。
XMANのカスタマイズ
xman では、マニュアルページを探すためのディレクトリとSections メニュー でディレクトリが対応する名前の両方をカスタマイズすることができる。xman は環境変数 MANPATH を使って、xman が検索するディレクトリを決定す る。MANPATH がセットされていない場合、POSIX システムならばディレ クトリ /usr/man が検索される。この環境変数は xman が検索するディレクト リをコロンで区切って並べたものである。
setenv MANPATH /mit/kit/man:/usr/man
デフォルトでは xman は(ユーザの MANPATH で指定されたディレクトリのそれぞれにおいて)以下の ディレクトリに対してマニュアルページを検索する。そのディレクトリにマニュ アルページがあれば、これらは対応するメニュー項目のマニュアルページのリ ストに追加される。 メニュー項目は表示されるのは、実際にマニュアルページがあるセクションに ついてのみである。
ディレクトリセクション名 --------- ------------ man1 (1) ユーザコマンド man2 (2) システムコール man3 (3) サブルーチン man4 (4) デバイス man5 (5) ファイルフォーマット man6 (6) ゲーム man7 (7) その他 man8 (8) システム管理 manl (l) ローカル mann (n) 新規項目 mano (o) 旧項目例えば、マニュアルパス内に3つのディレクトリがあり、これらのディレクト リにはそれぞれ man3 という名前のディレクトリがあるものとする。 ユーザが (3) Subroutines というメニュー項目を選択したときには、 これら全てのマニュアルがアルファベット順にソートされて表示される。 MANPATH のどのディレクトリにも mano というディレクトリが存在しな い場合、または mano というディレクトリがあっても全て空の場合には、 (o) Oldというセクションは表示されない。
BSD AND LINUX SYSTEMS
最近の BSD および Linux では、xman は /etc/man.conf という ファイルを検索する。このファイルにはオンラインマニュアルが置かれている ディレクトリのリストが書かれている。このファイルの書式の詳しい説明に ついては man.conf(5) を参照すること。
MANDESC ファイル
ユーザやシステム管理者は、mandesc ファイルを使って、 Sections メニューのメニュー項目に現れるそれぞれのセクションにお いてどのマニュアルページが表示されるかを細かく制御することができる。こ の機能はセクションだけに基づくものであり、個々のマニュアルページを扱う ことはできない。 (ただし、シンボリックリンク--- ln(1) 参照 ---を大量に使えば、 ほとんどどんな設定も可能である。)
mandesc ファイルのフォーマットは1つの文字の後にラベルを続けたものであ る。この文字は、このラベルの下に追加されるセクションを決める。 例えば、内容全てがプログラマ用のサブルーチンである新しいメニュー項目 を作る場合を考える。このラベルはセクション2と3の全てのマニュアルページ を含まなければならない。このような場合の mandesc ファイルの記述 は次のようになる:
2Programmer Subroutines 3Programmer Subroutinesこの指定により Sections メニューに対して、プログラマズマニュア ルのセクション2と3のマニュアルページを全て含む項目が追加される。 ラベル名は全く同じなので、これらは同じセクションに追加される。し かし、元のセクションは存在し続ける点に注意すること。
マニュアルディレクトリのデフォルトのセクションを完全に無視したい場合に は、次の行を mandesc ファイルのどこかに追加すること:
no default sectionsこれにより、xman は そのディレクトリに限って デフォルトのマニュ アルセクションの検索を行わなくなる。例えば、先の例と目的はほぼ同じである が、システムコールまたはサブルーチン セクションはもはや不 要である場合を考える。この場合にはデフォルトのエントリを複製して、新 しいものを加える必要がある。
no default sections 1(1) User Commands 2Programmer Subroutines 3Programmer Subroutines 4(4) Devices 5(5) File Formats 6(6) Games 7(7) Miscellaneous 8(8) Sys. Administration l(l) Local n(n) New o(o) Oldxman は man<character> という形のセクションを全て読み込む。ここ で <character> は大文字、小文字(両者は区別される)または数値(0-9)のいず れかである。ただし、man(1) と catman(8) は非標準のディレクトリは検索し ない点に注意すること。
ウィジェット
リソースを指定する際には、xman を構成するウィジェットの階層を知っ ておくと便利である。以下の記法においては、インデントで階層構造を示す。 また、先にウィジェットのクラス名を示し、その後にウィジェットのインスタ ンス名を示す。
Xman xman (このウィジェットが使われることはない) TopLevelShell topBox Form form Label topLabel Command helpButton Command quitButton Command manpageButton TransientShell search DialogWidgetClass dialog Label label Text value Command manualPage Command apropos Command cancel TransientShell pleaseStandBy Label label TopLevelShell manualBrowser Paned Manpage_Vpane Paned horizPane MenuButton options MenuButton sections Label manualBrowser Viewport directory List directory List directory . . (セクションごとに1つ。 . これは実行中に生成される。) . ScrollByLine manualPage SimpleMenu optionMenu SmeBSB displayDirectory SmeBSB displayManualPage SmeBSB help SmeBSB search SmeBSB showBothScreens SmeBSB removeThisManpage SmeBSB openNewManpage SmeBSB showVersion SmeBSB quit SimpleMenu sectionMenu SmeBSB <name of section> . . (セクションごとに1つ) . TransientShell search DialogWidgetClass dialog Label label Text value Command manualPage Command apropos Command cancel TransientShell pleaseStandBy Label label TransientShell likeToSave Dialog dialog Label label Text value Command yes Command no TopLevelShell help Paned Manpage_Vpane Paned horizPane MenuButton options MenuButton sections Label manualBrowser ScrollByLine manualPage SimpleMenu optionMenu SmeBSB displayDirectory SmeBSB displayManualPage SmeBSB help SmeBSB search SmeBSB showBothScreens SmeBSB removeThisManpage SmeBSB openNewManpage SmeBSB showVersion SmeBSB quit
アプリケーションのリソース
xman 特有のカスタマイズを行うための、アプリケーション固有のリソー スを以下に示す。
- manualFontNormal (Class Font)
- マニュアルページの通常のテキストに使うフォント。
- manualFontBold (Class Font)
- マニュアルページのボールド体のテキストに使うフォント。
- manualFontItalic (Class Font)
- マニュアルページのイタリック体のテキストに使うフォント。
- directoryFontNormal (Class Font)
- ディレクトリのテキスト表示に使うフォント。
- bothShown (Class Boolean)
- `true' か `false' の値を持ち、起動時にディレクトリとマニュアルページの 両方を表示するかどうかを指定する。
- directoryHeight (Class DirectoryHeight)
- ディレクトリとマニュアルページを同時に表示する場合に、ディレクトリ表示 部分の高さをピクセル数で指定する。
- topCursor (Class Cursor)
- トップボックス内で用いるカーソル。
- helpCursor (Class Cursor)
- ヘルプウィンドウ内で用いるカーソル。
- manpageCursor (Class Cursor)
- マニュアルページ表示ウィンドウで用いるカーソル。
- searchEntryCursor (Class Cursor)
- テキストウィジェットの検索エントリで用いるカーソル。
- pointerColor (Class Foreground)
- 上述のカーソル(ポインタ)全ての色を指定する。色の名前は xterm と互換で ある。
- helpFile (Class File)
- システムのデフォルトの代わりに使うヘルプファイルを指定する。
- topBox (Class Boolean)
- `true' または `false' の値を持ち、起動時にトップボックス(Help, Quit, Manual Page ボタンを持つウィンドウ)とマニュアルページのどちらを表示す るか指定する。デフォルト値は True である。
- verticalList (Class Boolean)
- `true' または `false' の値を持ち、ディレクトリのリストを縦に並べるか横 に並べるか指定する。デフォルトでは横に並べる(値が False)。
グローバルなアクション
xman はユーザとの対話処理は全てグローバルなアクションで定義して いる。これにより、ユーザは任意のウィジェットのトランスレーションテーブ ルを変更し、任意のイベントを新しいユーザアクションに割り当てることがで きる。xman がサポートしているアクションを以下に示す:- GotoPage(page)
- マニュアルページ表示ウィンドウ内で用いられた場合、ユーザはディレクトリ 表示とマニュアルページ表示を行き来することができる。引き数 page は Directory または ManualPage である。
- Quit()
- このアクションはどこでも使用でき、xman を終了させる。
- Search(type, action)
- 検索ポップアップ内で使ったときしか役に立たないが、このアクションは検索 ポップアップの value ウィジェット内の文字列について、指定されたタイプ の検索を検索ウィジェットに実行させる。引き数 type は Apropos, Manpage, Cancel のいずれかである。 action が Open であれば、xman は検索の結果を表示するために 新しいマニュアルページを開く。そうでない場合には、xman は検索ポップアッ プの親ウィジェット内に結果を表示しようとする。
- PopupHelp()
- このアクションはどこでも使用でき、help ウィジェットをポップアップさせ る。
- PopupSearch()
- このアクションはヘルプウィンドウ以外ならどこでも使用できる。このアクショ ンは検索ポップアップをアクティブにし、スクリーンで見えるようにする。こ れにより、ユーザはマニュアルページを検索できる。
- CreateNewManpage()
- このアクションはどこでも使用でき、新しいマニュアルページ表示ウィンドウ を開く。
- RemoveThisManpage()
- このアクションはマニュアルページ表示ウィンドウかヘルプ表示ウィンドウ内 で使用できる。このアクションはウィンドウを削除し、これに関連する全ての リソースを消去する。
- SaveFormattedPage(action)
- このアクションは likeToSave ポップアップウィジェット内でのみ使用 でき、フォーマットしたマニュアルページをセーブするかどうか(Save または Cancel)を xman に指示する。
- ShowVersion()
- このアクションは任意のマニュアルページ表示ウィンドウとヘルプ表示ウィン ドウから呼び出すことができる。このアクションは、xman の現在のバージョ ンを表示させる。
ファイル
- <manpath directory>/man<character>
- <manpath directory>/cat<character>
- <manpath directory>/mandesc
- <XRoot>/lib/X11/app-defaults/Xman
- 必要なリソースを指定する。<XRoot> は X11 のインストールツリーのルート を指す。
- /tmp
- xman は、フォーマットしていないマニュアルページと aprops 検索におけるテンポ ラリファイルを全て /tmp に生成する。
環境変数
- DISPLAY
- デフォルトで使用するホストとディスプレイ。
- MANPATH
- マニュアルページの検索パス。ディレクトリはコロンで区切る (例: /usr/man:/mit/kit/man:/foo/bar/man)。
- XENVIRONMENT
- RESOURCE_MANAGER プロパティに格納されているグローバルなリソースを上書 きするリソースファイル名を取得する。
- XAPPLRESDIR
-
``Xman'' が追加される文字列。この文字列は、リソースデータベースにマー
ジされるユーザの app-defaultファイルの完全なパス名になる。このマージ処
理はシステムの app-default ファイルを呼んだ後、かつリソースがディスプ
レイに割り当てられる前に行われる。
権利と許諾に関する正式な声明については X(1) を参照すること。
著者
Chris Peterson, MIT X コンソーシアム。Boston University(当時)の Barry Shein による V10 バージョンから作成した。