aboutsummaryrefslogtreecommitdiffstats
path: root/doc-jp/README.menu
diff options
context:
space:
mode:
authorAkinori Ito <aito@eie.yz.yamagata-u.ac.jp>2001-11-08 05:14:08 +0000
committerAkinori Ito <aito@eie.yz.yamagata-u.ac.jp>2001-11-08 05:14:08 +0000
commit68a07bf03b7624c9924065cce9ffa45497225834 (patch)
treec2adb06a909a8594445e4a3f8587c4bad46e3ecd /doc-jp/README.menu
downloadw3m-68a07bf03b7624c9924065cce9ffa45497225834.tar.gz
w3m-68a07bf03b7624c9924065cce9ffa45497225834.zip
Initial revision
Diffstat (limited to '')
-rw-r--r--doc-jp/README.menu99
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() を見てください。
+