diff options
author | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-08 05:14:08 +0000 |
---|---|---|
committer | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-08 05:14:08 +0000 |
commit | 68a07bf03b7624c9924065cce9ffa45497225834 (patch) | |
tree | c2adb06a909a8594445e4a3f8587c4bad46e3ecd /doc-jp/README.menu | |
download | w3m-68a07bf03b7624c9924065cce9ffa45497225834.tar.gz w3m-68a07bf03b7624c9924065cce9ffa45497225834.zip |
Initial revision
Diffstat (limited to '')
-rw-r--r-- | doc-jp/README.menu | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/doc-jp/README.menu b/doc-jp/README.menu new file mode 100644 index 0000000..6700e65 --- /dev/null +++ b/doc-jp/README.menu @@ -0,0 +1,99 @@ + +w3m のメニューについて + (1999/11/03) 坂本 浩則 + hsaka@mth.biglobe.ne.jp + +[1] キー操作 + + ・一般的なもの + + HELP, INS キー : メニューの立ち上げ + HELP, INS キー, C-c, : メニューの消去 + RET(C-m, C-j), SPC, →キー : 選択 + BS(C-h), DEL(C-?), ←キー : 戻る + C-n, j, ↓キー : 下の項目へ + C-p, k, ↑キー : 上の項目へ + C-a : 先頭の項目へ + C-e : 最後の項目へ + C-f, C-v : 次ページの項目へ + C-b, M-v : 前ページの項目へ + C-z : サスペンド + + # INS は通常 ^[[2~ ですが ^[[L(コンソール), ^[[E(PocketBSD) にも + バインドしてあります。 + + MenuKeymap, MenuEscKeymap, MenuEscBKeymap, MenuEscDKeymap (menu.c) + で定義 + + ・個別のメニュー用 + + MenuItem 構造体 (menu.h) の char *keys に設定(複数可能) + 上記のキー操作に上書きされます。 + +[2] マウス + + ボタン3 : メニューの立ち上げ + + 立ち上げ後 + + ボタン1/3 (項目) : 選択 + ″ (枠,MENU_NOP) : 何もしない + ″ (枠外) : 戻る(メニューの消去) + ″ ( : ) : 次ページまたは前ページの項目へ + (長いメニューの場合) + +[3] メニューのカスタマイズ + + ~/.w3m/menu にメニューを定義できます。 + メニューは、 + + menu MENU_ID + 項目 + : + end + + として設定します。各項目には、 + + func LABEL FUNCTION KEYS [DATA] コマンド実行 + popup LABEL MENU_ID KEYS サブメニュー立ち上げ + nop LABEL 何もしない(セパレータやタイトル) + + を設定可能です。 + 例は menu.default や menu.submenu を見てください。 + 設定できるコマンド(FUNCTION)は README.func を見てください。 + MENU_ID として "Main" はメインメニューに、"Select" はバッファ選択 + メニューに予約されています。 + KEYS はバインドするキーで複数指定可能です。 + DATA が設定されていればコマンド(FUNCTION)の引数として使われます。 + +[4] 開発について + + メニュールーチンの例は mainMenu(), optionMenu() を見れば分かると思います。 + このルーチンと以下の MenuItem 構造体を定義すれば、ほとんどのメニューは、 + 設定できると思います。 + + MenuItem 構造体 (menu.h) + + struct { + int type; /* タイプ */ + char *label; /* ラベル */ + int *variable; /* VALUE_MENU の場合に設定する変数 */ + int value; /* VALUE_MENU の場合に設定する値 */ + void (*func)(); /* 選択された時に実行する関数 */ + struct _Menu *popup; /* サブメニュー */ + char *keys; /* バインドするキー(複数可能) */ + } MenuItem; + + タイプ type は以下のものが使用できます。 + + MENU_NOP (1) : なにもしない。選択もできない。 + (タイトルやセパレータ用) + MENU_FUNC (2) : 関数を実行 + MENU_VALUE (4) : 変数(*variable)に値(value)を設定 + MENU_POPUP (8) : サブメニューを立ち上げる + + MENU_FUNC と MENU_VALUE は (MENU_FUNC | MENU_VALUE) と + 設定することで両方の動作をします。(変数設定が先です) + + 設定例は、MainMenuItem (menu.c) や new_option_menu() を見てください。 + |