Misc. Reference Manual Pages FvwmForm(1.0) 名前 FvwmForm - fvwm に対する入力フォームモジュール 形式 FvwmForm は fvwm によって実行されるのでコマンドラインから の 呼び出しでは動作しません。 説明 FvwmForm は、ユーザの入力とそれに伴う動作を取得する仕組み を 提供します。これは、ユーザが入力でき、また fvwm にこうさせた いという動作を選択することができるような一つのフォームによっ て 実現されています。フォームは、次の 5 つの種類の部品からな ります: テキストラベル、単一行の文字列入力、相互排他的な 選 択形式、複数選択可能な選択形式、動作ボタン。これらの部品は、 柔軟性に富んだレイアウトで複数の行に配置できます。 テキストラベルは、説明を行うためだけのもので、どんな入力も受 け付けません。文字列入力部分は、単一行の文字列を編集するのに 使うことができます。FvwmForm は Emacs スタイルのカーソル移動 キーを受け付けます。 選択形式は、複数の選択項目から成り、それ自身は論理的な存在で しかなく、どんな表示機能も持ちません。各選択項目は、説明のた めのテキストラベルのついた押しボタン形式として表示されます。 そ れ が選択された場合、排他的な選択の場合は真ん中に円を表示 し、複数選択可能な場合は、チェックマークを表示します。 動作ボタンは、それがクリックされて ON になると、fvwm にコ マ ン ドの組を送信します。FvwmForm は、ユーザの入力を反映するよ うなコマンド文字列内の変数の置き換えを行います。 初期化 FvwmForm は、fvwm と同じ設定ファイル (通常はユーザの ホー ム ディレクトリにある .fvwmrc) を使用します。複数の入力フォーム 用に FvwmForm を使うには、単に別名のシンボリックリンクを生成 す れ ば、 そ れらは別のモジュールとして扱われます。または、 FvwmForm をオプションパラメータつきで呼び出せば、そ の パ ラ メー タ が そ の代わりの名前として使われます (例えば 'Module FvwmForm QuitVerify')。これなら、シンボリックリンクを作る 必 要はありません。 あなたの .fvwmrc ファイルの ModulePath の設定に、FvwmForm の パスがちゃんと含まれるようにしてください。 FvwmForm がウィンドウを特定した状況 (window context) で呼 び だ された場合、例えばウィンドウメニューからなど、それが fvwm に送信するすべてのコマンドもそのウィンドウを特定した状況を持 つことになります。 設定 以下のオプションを .fvwmrc ファイルで設定できます。違う名 前 の別のモジュールを使うようにした場合は、文字列 "FvwmForm" の SunOS 5.9 Last change: 1 Misc. Reference Manual Pages FvwmForm(1.0) 部分を変えなければいけないことに注意してください。 オプションの順番は意味を「持ちます」。一般に、色やフォントは 最初に指定すべきで、行、テキストラベル、入力項目はそれらの論 理的な順番に現れるべきです。 *FvwmFormGrabServer このオプションは、起動時に FvwmForm にマウスポインタをつ かまえさせます。この機能は、ログアウト認証のようなものに 便利です。 *FvwmFormWarpPointer このオプションは、起動時に FvwmFrom にマウスポインタをそ のウィンドウの中に移動させます。これは、ユーザのマウスの 移動を保存します。 *FvwmFormPosition x y これは、スクリーン上の位置 (x, y) に FvwmForm ウィンドウ を 出力させます。慣習に従い、負の x (y) 座標は、スクリー ンの右 (下) からの距離を意味します。 このオプションを省略した場合、FvwmForm はスクリーン中 央 に立ち上がります。 *FvwmFormBack color これは、FvwmForm ウィンドウの背景色を指定します。 *FvwmFormFore color これは、文字列の表示用の前景色を指定します。 *FvwmFormItemBack color これは、文字列入力ウィンドウとボタンの背景色を指定 し ま す。 *FvwmFormItemFore color これは、入力文字列とボタンのマーカの前景色を指定します。 *FvwmFormFont font これは、文字列を表示するのに使用するフォントを指定 し ま す。 *FvwmFormButtonFont font これは、動作ボタンにマークされる文字列用のフォントを指定 します。 *FvwmFormInputfont font これは、入力文字列のフォントを指定します。このフォントは 固定幅でなければいけません。 *FvwmFormLine justification 改行を行い、新しい行を始めます。一行には、それらの オ プ ショ ン が 後 に続く、任意の個数の部品を含ませられます。 SunOS 5.9 Last change: 2 Misc. Reference Manual Pages FvwmForm(1.0) FvwmForm ウィンドウは任意の行数を持つことがで き、 そ の ウィンドウの幅は、最も長い行のものになります。 行の中の部品の位置合わせは、justification で指定し、それ は以下のうちの一つです: left 部品はウィンドウの左に揃います。 right 部品はウィンドウの右に揃います。 center 部品はウィンドウの中央に置かれます。 expand その行の中に部品が一つしかなければ、その部品 はウィンドウの中央に置かれますが、2 つ以上の 部品があれば、それらはウィンドウ幅全体を埋め るように広がります。 *FvwmFormText string これは、string を文字列として表示します。改行は、複数 の *FvwmFormLine と *FvwmFormText オプションの組で実現しな ければいけません。空白は、部品の間に追加の余白を与えるの に使われます。 *FvwmFormInput name size init_string これは、文字列入力の部品に名前 name を指定し、size 文 字 幅の部分ウィンドウが編集用として使われ、init_string が与 えられれば、それは FvwmForm 起動時かリセット時の初期文字 列として使われます。デフォルトの初期文字列は "" です。 *FvwmFormSelection name type このオプションは、名前 name の選択形式部品を開始します。 選 択 項目はこれに続く行で指定しなければいけません。オプ ション type は次のうちの一つです: single この選択形式は相互排他的です。 multiple この選択形式は複数指定可能です。 *FvwmFormChoice name value on | off これは、選択形式の選択項目を指定します。選択項目は、一つ の name と一つの value を持ちます。string は、ラベルとし て選択ボタンの右に表示されます。 FvwmForm の起動時かリセット時に、選択項目は指定された 初 期 状態 ("on" は選択されていることを意味する) であると仮 定されます。選択部品が相互排他的である場合、FvwmForm は 選 択項目の初期状態の矛盾、すなわち 2 つ選択されている状 態、または全く選択されていない状態、を検出「しない」こと に 注 意してください。しかし、一度ユーザが何かを選択すれ ば、FvwmForm はその一つのみが選択されたことを保 証 し ま す。 SunOS 5.9 Last change: 3 Misc. Reference Manual Pages FvwmForm(1.0) *FvwmFormButton type string [key] このオプションは、動作ボタンを指定し ま す。 ボ タ ン は string をラベルとし、そのボタンが有効になったときに fvwm コマンド command の組を実行します。そのコマンドは、オ プ ショ ン *FvwmFormCommand を使って指定しなければいけませ ん。 オプション key は、そのボタンを有効に す る キー ボー ド ショートカットを指定します。それは、^@, ^A, ..., ^_ のよ うな指定によるコントロール文字か、F1, F2, ..., F35 の よ うな指定によるファンクションキーのどちらかです。テキスト 入力部分でカーソルの移動に使われるようなコントロールキー は、どんなボタンも有効にはできませんが、タブ、リターン、 改行キーはカーソルがテキスト入力部分にあるときでもボタン を有効にできます。 ボタンの振舞いは type によって決定されます: continue FvwmForm は、コマンドの送信後に実行を再開 復 帰します。 restart FvwmForm は、コマンドの送信後にすべての値 を 初期状態にリセットします。 quit FvwmForm は、コマンドの送信後に終了します。 *FvwmFormCommand command このオプションは、現在のボタンに関連する Fvwm コマンドを 指 定します。すべての *FvwmFormButton オプションより前に あるコマンドは、起動時に実行されます。これは、普通はユー ザの注意を引くためのビープ音などです。 各コマンドを fvwm に送る前に、FvwmForm は以下のフォー ム の変数を認識し、それらに値を与えます。 $(name) name が文字列入力フィールドに対応する場 合、 その結果はユーザの入力文字列になります。" や ' や \ のような特別な文字の前には バッ ク ス ラッシュがつけられます。 name が選択項目に対応する場合、その選択項 目 が 選 択されていれば、その結果は (*FvwmFrom- Choice で指定された) 選択項目の値に な り ま す。その選択項目が選択されていなければ、その 結果は空文字列となります。 name が選択部品に対応している場合、その結 果 は、その選択項目すべての選択された値のリスト になります。 $(name?string) name が文字列入力フィールドで、その値が空 文 字列でない場合、その結果は、再帰的な変数の置 SunOS 5.9 Last change: 4 Misc. Reference Manual Pages FvwmForm(1.0) き換えが適用された string になります。入力文 字列が空の場合、その結果は空です。 もし name が選択項目で、それが選択されている 場合、その結果は、再帰的な変数の置き換えが適 用された string になります。その選択項目が選 択されていない場合、結果は空です。 $(name!string) 条件を逆に取る以外は、上と全く同じです。 例 1 - QuitVerify 以下の例は、mwm のログアウト確認のまねをします。 *QuitVerifyGrabServer *QuitVerifyWarpPointer *QuitVerifyFont *helvetica*m*r*n*14* *QuitVerifyButtonFont *helvetica*m*o*n*14* *QuitVerifyFore Black *QuitVerifyBack Light Gray *QuitVerifyItemFore Wheat *QuitVerifyItemBack Gray50 # begin items *QuitVerifyCommand Beep *QuitVerifyLine center *QuitVerifyText "本当にログアウトしてもよろしいです か ?" *QuitVerifyLine expand *QuitVerifyButton quit "ログアウト" ^M *QuitVerifyCommand Quit *QuitVerifyButton quit "キャンセル" ^[ *QuitVerifyCommand Nop # Fvwm window style Style "QuitVerify" NoTitle, NoHandles, BorderWidth 3 例 2 - Remote Login 以下の例は、ユーザにリモートホスト名と、必要ならばそのホスト 上 でのユーザ名を入力させ、リモートホストの xterm のウィンド ウを開きます。 *RloginWarpPointer *RloginFont *helvetica*m*r*n*14* *RloginButtonFont *helvetica*m*o*n*14* *RloginInputFont *cour*m*r*n*14* *RloginFore Black *RloginBack Light Gray *RloginItemFore Wheat *RloginItemBack Gray50 # begin items *RloginLine center *RloginText "リモートホストへのログイン" *RloginLine center SunOS 5.9 Last change: 5 Misc. Reference Manual Pages FvwmForm(1.0) *RloginText "ホスト名:" *RloginInput HostName 20 "" *RloginLine center *RloginSelection UserSel single *RloginChoice Default Default on "同じユーザ名" *RloginChoice Custom Custom off "ユーザ名:" *RloginInput UserName 10 "" *RloginLine expand *RloginButton quit "ログイン" ^M *RloginCommand Exec exec rsh $(Custom?-l $(UserName)) $(HostName) xterm -T xterm@$(HostName) -display $HOSTDISPLAY & *RloginButton restart "クリア" *RloginButton quit "キャンセル" ^[ *RloginCommand Nop 例 3 - Capture Window 以下の例は、xwd, xwud, xpr へのフロントエンドを提供します。 *CaptureFont *helvetica*m*r*n*14* *CaptureButtonFont *helvetica*m*o*n*14* *CaptureInputFont *cour*m*r*n*14* *CaptureLine center *CaptureText "ウィンドウのキャプチャ" *CaptureLine left *CaptureText "ファイル名: " *CaptureInput file 25 "/tmp/Capture" *CaptureLine left *CaptureText "プリンタ名: " *CaptureInput printer 20 "ps1" *CaptureLine expand *CaptureSelection PtrType single *CaptureChoice PS ps on "PostScript" *CaptureChoice Ljet ljet off "HP LaserJet" *CaptureLine left *CaptureText "xwd へのオプション:" *CaptureLine expand *CaptureSelection Options multiple *CaptureChoice Brd -nobdrs off "枠なし" *CaptureChoice Frm -frame on "枠あり" *CaptureChoice XYZ -xy off "XY フォーマット" *CaptureLine expand *CaptureButton continue "キャプチャ" ^M *CaptureCommand Exec exec xwd -out $(file) $(Options) & *CaptureButton continue "プレビュー" *CaptureCommand Exec exec xwud -in $(file) & *CaptureButton continue "印刷" *CaptureCommand Exec xpr -device $(PtrType) $(file) | lpr -P $(printer) & *CaptureButton quit "終了" SunOS 5.9 Last change: 6 Misc. Reference Manual Pages FvwmForm(1.0) バグと制限 項目の数に関する制限が、プログラム内部であらかじめ定義されて います。 Report bugs to ztfeng@math.princeton.edu. COPYRIGHT (原文) FvwmForm is original work of Thomas Zuwei Feng. Copyright Feb 1995, Thomas Zuwei Feng. No guarantees or warantees are provided or implied in any way whatsoever. Use this program at your own risk. Permission to use, modify, and redistribute this program is hereby given, pro- vided that this copyright is kept intact. 著作権 (日本語訳) FvwmForm は、Thomas Zuwei Feng のオリジナルな仕事によるも の です。 1995 年の Thomas Zuwei Feng による著作物です。いかなる 保 険 も、いかなる保証も、全くどんな方法でも与えられませんし暗示も しません。このプログラムはあなた自身の責任で使用してく だ さ い。 こ のプログラムは、この著作権がこのまま保持されている元 で、これによりその使用、改変、再配布が許可されます。 SunOS 5.9 Last change: 7