メニュー
type: Variable
package: editor
file: buf-menu.l
buffer-menuの起動時に実行されます。
参考:
(run-hooks '*buffer-menu-mode-hook*)
type: Variable
package: editor
file: app-menu.l
xyzzy実行後に実行されます。*app-menu*を直接変更する用途で用いら
れます。
使用例:
(add-hook '*init-app-menus-hook*
#'(lambda ()
(add-menu-item *app-menu* 'close-box :close-box
#'kill-selected-buffer)))
seealso: 起動時処理フロー
type: Function
arguments: add-menu-item MENU TAG NAME &optional COMMAND INIT
package: editor
file: builtin.l
新たに作成したメニュー項目をメニューの末尾に追加します。
MENU : 追加先のメニューを指定します。
TAG : 識別用のタグを指定します。
NAME : メニューに表示される名前を指定します。
COMMAND : メニューの項目が選択されたときに実行するコマンドを指定します。
INIT : メニューが開く直前に評価し返される値によってメニューの状態を
設定します。任意のS式が指定できますが、あまり無茶なことはしな
いでください。式の値として意味のある値には以下のものがあります。
:modified カレントバッファが変更されていなければ灰色表示。
:undo undo不可能であれば灰色表示。
:redo redo不可能であれば灰色表示。
:selection カレントバッファのテキストが未選択であるか矩形選択
であれば灰色表示。
:rectangle カレントバッファのテキストが未選択であるか矩形以外
の選択であれば灰色表示。
:clipboard クリップボードが空であれば灰色表示。
:check チェック。
:disable 灰色表示。
その他 使用可能。
seealso: insert-menu-item
seealso: get-menu
seealso: create-menu
seealso: define-menu
type: Function
arguments: add-menu-separator MENU &optional TAG
package: editor
file: builtin.l
セパレータをメニューの末尾に追加します。
MENU : 追加先のメニューを指定します。
TAG : 識別用のタグを指定します。
seealso: insert-menu-separator
seealso: define-menu
seealso: define-popup-menu
seealso: get-menu
seealso: get-menu-position
type: Function
arguments: add-popup-menu MENU POPUP-MENU NAME
package: editor
file: builtin.l
ポップアップメニューをメニューの末尾に追加します。
MENU : 追加先のメニューを指定します。
POPUP-MENU : 追加するポップアップメニューを指定します。
NAME : メニューに表示される名前を指定します。
使用例:
;;; 右クリックメニューを標準のメニューに追加してみる。
(add-popup-menu *app-menu* *app-popup-menu* "編集2(&E)")
=> #<menu 48701736>
seealso: insert-popup-menu
seealso: define-popup-menu
type: Function
arguments: apps-popup
package: editor
file: mouse.l
ポップアップメニューを表示します。[Apps]
メニューは、*app-popup-menu* に定義されたものが使用されます。
seealso: mouse-menu-popup
type: Function
arguments: call-menu N
package: editor
file: builtin.l
「ファイル(F)」「編集(E)」といったメニューの N 番目の項目を開きます。
N には 0 オリジンで位置を指定します。
すなわち 0 を指定したときは通常「ファイル(F)」のメニューを開きます。
type: Function
arguments: copy-menu-items OLD-MENU NEW-MENU
package: editor
file: builtin.l
old-menuの構造をnew-menuにトップレベルでコピーします。
亀井さん談:
ちなみにバグってます。old-menuとnew-menuが同じ場合のことを何も考えていません。
type: Function
arguments: create-menu &optional TAG
package: editor
file: builtin.l
新たに作成した空のメニューを返します。
TAG : 識別用のタグを指定します。
メニューの中身は空なので、以下の関数で登録必要があります。
中身を動的に作る必要が無ければ、 define-menu を使用した方が良いです。
add-menu-item : 項目を追加します。
add-menu-separator : セパレータを追加します。
add-popup-menu : ポップアップメニューを追加します。
insert-menu-item : 項目を挿入します。
insert-menu-separator : セパレータを挿入します。
insert-popup-menu : ポップアップメニューを挿入します。
作成したメニューは以下の関数で使います。
set-menu : 標準のメニューとして設定します。
use-local-menu : バッファにローカルなメニューとして設定します。
seealso: create-popup-menu
seealso: define-menu
seealso: set-menu
seealso: use-local-menu
type: Function
arguments: create-popup-menu &optional TAG
package: editor
file: builtin.l
新たに作成したポップアップメニューを返します。ポップアップメニューとして
使えることを除けば、create-menuで作成されたメニューを同じです。
TAG : 識別用のタグを指定します。
メニューの中身は空なので、create-menuと同じように登録する必要があります。
中身を動的に作る必要が無ければ、define-popup-menuを使用した方が良いです。
作成したポップアップメニューは以下の関数で使います。
insert-popup-menu : 既存のメニューにポップアップメニューを追加します。
track-popup-menu : ポップアップメニューをその場で表示します。
seealso: define-popup-menu
seealso: track-popup-menu
seealso: create-menu
type: Function
arguments: create-tab-bar BAR CALLBACK
package: editor
file: builtin.l
タブバーの識別子BARと、タブが選択されたとき実行するコールバック関数
CALLBACKを指定して、タブバーを作成します。CALLBACKは、各タブの作成時に設
定したシンボルが渡されます。
使用例:
(progn
(defun a-func (a) (msgbox "~A ~A" a (type-of a)))
(define-command-bar 'a-bar "a bar")
(create-tab-bar 'a-bar 'a-func)
(show-command-bar 'a-bar)
(tab-bar-add-item 'a-bar '1st "- 1st -" "1st item")
(tab-bar-add-item 'a-bar '2nd "- 2nd -" "2nd item"))
=> t
(progn
(tab-bar-delete-item 'a-bar '1st)
(tab-bar-delete-item 'a-bar '2nd)
(delete-tool-bar 'a-bar)
(delete-command-bar 'a-bar))
=> t
seealso: tab-bar-add-item
seealso: tab-bar-list-items
seealso: tab-bar-modify-item
seealso: tab-bar-select-item
type: Function
arguments: create-tool-bar NAME BITMAP ITEMS
package: editor
file: builtin.l
ツールバーNAMEを作成します。ツールバーに表示するビットマップファイルのフ
ルパスBITMAPと、ツールバーの項目ITEMSを指定します。ITEMSは以下の形式で記
述します。項目の替わりに:sepを指定するとセパレータを表示できます。
形式:
((ツールチップ1 アイコンの番号1 実行する関数1 状態制御用1)
(ツールチップ2 アイコンの番号2 実行する関数2 状態制御用2)
...
(ツールチップN アイコンの番号N 実行する関数N 状態制御用N))
補足:
アイコンの番号:
16x16の領域をひとつのアイコンとみなして、ビットマップファイルの
左から0ベースの番号で指定します。
状態制御用:
ボタンの状態が何に依存して変更するかを指定します。
:modified 編集されていたら
:selection 行モード選択、文字モード選択をしていたら
:modify-selection 編集可能なバッファで行モード選択
文字モード選択をしていたら
:rectangle 矩形選択していたら
:modify-rectangle 編集可能なバッファで矩形選択をしていたら
:any-selection 選択していたら
:modify-any-selection 編集可能なバッファで選択していたら
:clipboard 編集可能なバッファでクリップボードに値が入っていたら
:undo UNDOできる状態なら
:redo リドゥできる状態なら
関数 (function) 関数が返す値による
:disable ボタンを押せない状態
:check ボタンを押してへこんだ状態
上記以外 普通の押せる状態
上記以外 指定しないとの同じで無条件に押せる状態
※OHKUBO Hiroshiさんのサイトより
http://ohkubo.s53.xrea.com/xyzzy/memo.html
使用例:
(create-tool-bar 'abc-tool-bar
(merge-pathnames "toolbar.bmp" (etc-path))
'(("line-number" 0 toggle-line-number)
("vscroll-bar" 1 toggle-vscroll-bar)
("mode-line" 2 toggle-mode-line)
:sep
("function-bar" 3 toggle-function-bar)
("fold-line" 4 toggle-fold-line)
("read-only" 5 toggle-read-only)))
seealso: define-command-bar
seealso: create-tab-bar
Link: lisp/cmdbar.l
type: Function
arguments: current-menu &optional BUFFER
package: editor
file: builtin.l
現在表示されているメニューを返します。use-local-menuを使用してい
るバッファは*app-menu*とは違うものが取得されます。
type: Function
arguments: define-command-bar SYM NAME &optional EDGE X Y W
package: editor
file: cmdbar.l
※以下は私見です。
ツールバーやタブバーを総称してツールバーと呼ぶようです。作成するときやツ
ールバーのリストを操作するときは全てtool-bar系の関数を使います。単に表示
するだけならば、show-tool-barを使えば可能です。
ただし、メニューの[表示]-[ツールバー]の一覧に追加する場合には、
command-bar系の関数を使います。define-command-barで登録したツールバーは、
[表示]-[ツールバー]から表示を制御することが可能です。予め、
define-command-barで定義したSYMに対応する、ツールバー・タブバーを作って
おく必要があります。
以下はタブバーを操作する場合の例です。
(progn
(defun a-func (a) (msgbox "~A ~A" a (type-of a)))
(define-command-bar 'a-bar "a bar")
(create-tab-bar 'a-bar 'a-func)
(show-command-bar 'a-bar)
(tab-bar-add-item 'a-bar '1st "- 1st -" "1st item")
(tab-bar-add-item 'a-bar '2nd "- 2nd -" "2nd item"))
(progn
(tab-bar-delete-item 'a-bar '1st)
(tab-bar-delete-item 'a-bar '2nd)
(delete-tool-bar 'a-bar)
(delete-command-bar 'a-bar))
また、ユーザのツールバーなどを作成する場合には、delete-command-barで削除
する手順を考慮することをおすすめします。コマンドバーは(シンボル名だけ)
ヒストリ変数に格納されます。その実体(ツールバーやタブバー)がなくとも、
ずっと[表示]-[ツールバー]に残ってしまいます。そのようなときは、手動で削
除する必要があります。
似たような話で、コマンドバーには関数名だけを指定しておいて、後から本体を
読み込みたい場合には、autoloadで出来ます。本体の初期化に時間が掛かる場合
には、このように分離するほうが良いと思います。
使用例:
------------------------------------------------
;;; .xyzzy
(progn
(define-command-bar 'a-bar "a bar")
(autoload 'a-bar "a-bar.l"))
------------------------------------------------
------------------------------------------------
;;; a-bar.l
(progn
(create-tab-bar 'a-bar 'a-func)
(show-command-bar 'a-bar)
(tab-bar-add-item 'a-bar '1st "- 1st -" "1st item")
(tab-bar-add-item 'a-bar '2nd "- 2nd -" "2nd item"))
------------------------------------------------
seealso: delete-command-bar
type: Macro
arguments: define-menu &body BODY
package: editor
file: menu.l
固定的なメニューを定義します。
定義方法は define-popup-menu を参照して下さい。動的にメニューを生成した場
合には create-menu を参照して下さい。 define-menu で生成したメニューも
add-menu-item や insert-menu-item などで項目を追加することも可能です。
seealso: create-menu
seealso: add-menu-item
seealso: insert-menu-item
seealso: add-menu-separator
seealso: insert-menu-separator
seealso: copy-menu-items
seealso: delete-menu
seealso: get-menu
seealso: set-menu
seealso: use-local-menu
seealso: define-popup-menu
type: Macro
arguments: define-popup-menu &body BODY
package: editor
file: menu.l
固定的なポップアップメニューを定義します。
BODY : メニューの定義を記述します。
BODYをインチキなBNFで書くと以下の様になります。
POPUP-DEF : {MENU-ITEM}*
MENU-ITEM : :sep
: (:sep [TAG])
| (:separator [TAG])
| (:popup tag name {POPUP-DEF}*)
| (:item tag name [COMMAND [INIT]])
TAG : メニュー項目を識別する任意のオブジェクトです。
タグ同士はeqで比較されます
COMMAND : メニュー項目が選択されたときに実行されるコマンドです。
INIT : メニューが開く直前に評価され、返される値によってメニューの
状態が設定されます。任意のS式が指定できますが、あまり無茶
なことはしないでください。式の値として意味のある値には以下
のものがあります。
:modified カレントバッファが変更されていなければ灰色表示
:undo undo不可能であれば灰色表示
:redo redo不可能であれば灰色表示
:selection カレントバッファのテキストが未選択であるか矩形選択
であれば灰色表示
:rectangle カレントバッファのテキストが未選択であるか矩形以外
の選択であれば灰色表示
:clipboard クリップボードが空であれば灰色表示
:check チェック
:disable 灰色表示
その他 使用可能
使用例:
;;; niftylog.l
(define-popup-menu
(:item nil "メッセージを読んだことにする(&R)"
'log-read-article)
(:item nil "メッセージを読んでないことにする(&N)"
'log-unread-article)
(:item nil "スレッドを読んだことにする(&T)"
'log-read-thread)
(:item nil "スレッドを読んでないことにする(&H)"
'log-unread-thread)
(:item nil "ニュースグループを読んだことにする(&G)")
(:item nil "ニュースグループを読んでないことにする(&P)"))
=> #<menu 48698340>
seealso: create-popup-menu
seealso: track-popup-menu
seealso: add-popup-menu
seealso: insert-popup-menu
seealso: define-menu
type: Function
arguments: delete-command-bar SYM
package: editor
file: cmdbar.l
ツールバーを削除します。
seealso: define-command-bar
type: Function
arguments: delete-menu MENU TAG-OR-POSITION &optional TAG-OR-POSITION-P
package: editor
file: builtin.l
メニューから項目等を削除します。
MENU : 削除するメニューを指定します。
TAG-OR-POSITION : タグもしくは位置を指定します。
TAG-OR-POSITION-P : TAG-OR-POSITIONの引数をタグとして解釈するか位置と
して解釈するかを決めます。
nil TAG-OR-POSITIONはタグを表すシンボル
non-nil TAG-OR-POSITIONは位置を表す整数値
タグを指定した場合にはメニューを再帰的に検索し最初に見つかった項目を削除
します。 タグが存在しない場合やメニュー項目数以上の位置を指定した場合に
は、削除に失敗します。
戻り値は以下のとおりです。
t 削除に成功した。
nil 削除に失敗した。
type: Function
arguments: delete-tool-bar NAME
package: editor
file: builtin.l
ツールバーNAMEを削除します。
コマンドバーとして登録していた場合には、[表示]-[ツールバー]に残骸が残っ
てしまいますので、delete-command-barで削除する必要があります。
seealso: create-tool-bar
type: Function
arguments: focus-tool-bar
package: editor
file: builtin.l
タブバーにフォーカスを移します。タブバーからはTABを押すことで元のバッフ
ァに戻ることが出来ます。タブバーが存在しないときは、フォーカスは元のバッ
ファのままです。
type: Function
arguments: get-menu MENU TAG-OR-POSITION &optional TAG-OR-POSITION-P
package: editor
file: builtin.l
指定されたメニューから、タグ名または位置で検索したメニューを取得します。
TAG-OR-POSITION : タグもしくは位置を指定します。
TAG-OR-POSITION-P : TAG-OR-POSITIONの引数をタグとして解釈するか位置と
して解釈するかを決めます。
nil TAG-OR-POSITIONはタグを表すシンボル
non-nil TAG-OR-POSITIONは位置を表す整数値
使用例:
(get-menu *app-menu* 3 t)
seealso: current-menu
seealso: get-menu-position
seealso: define-menu
type: Function
arguments: get-menu-position MENU TAG
package: editor
file: builtin.l
メニューの中からタグの位置を検索して返します。
MENU : 検索するメニューを指定します。
TAG : 検索するタグを指定します。
見つからなかった場合にはnilが返されます。
見つかった場合にはその位置とそれを含むメニューを返します。
seealso: get-menu
seealso: define-menu
type: Function
arguments: hide-command-bar SYM
package: editor
file: cmdbar.l
define-command-barで定義したコマンドバーを非表示にします。
seealso: show-command-bar
type: Function
arguments: hide-tool-bar NAME
package: editor
file: builtin.l
ツールバーNAMEを非表示にします。
seealso: show-tool-bar
type: Function
arguments: insert-menu-item MENU POSITION TAG ITEM &optional COMMAND INIT
package: editor
file: builtin.l
メニュー項目を作成しメニューの所定の位置に挿入します。
MENU : 追加先のメニューを指定します。
POSITION : 挿入する位置を指定します。
TAG : 識別するタグを指定します。必要なければnilを指定します。
ITEM : メニューに表示される名前を指定します。
COMMAND : メニューの項目が選択されたときに実行するコマンドを指定します。
INIT : メニューが開く直前に評価し返される値によってメニューの状態
を設定します。詳細はadd-menu-itemを参照して下さい。
seealso: add-menu-item
seealso: get-menu
seealso: define-menu
type: Function
arguments: insert-menu-separator MENU POSITION &optional TAG
package: editor
file: builtin.l
セパレータをメニューの所定の位置に挿入します。
MENU : 追加先のメニューを指定します。
POSITION : 挿入する位置を指定します。
TAG : 識別するタグを指定します。
seealso: add-menu-separator
seealso: define-menu
seealso: define-popup-menu
seealso: get-menu
seealso: get-menu-position
type: Function
arguments: insert-popup-menu MENU POSITION POPUP-MENU MENU-NAME
package: editor
file: builtin.l
ポップアップメニューをメニューの所定の位置に挿入します。
MENU : 追加先のメニューを指定します。
POSITION : 挿入する位置を指定します。
POPUP-MENU : 追加するポップアップメニューを指定します。
NAME : メニューに表示される名前を指定します。
使用例:
;;; 右クリックメニューを標準のメニューに追加してみる。
(insert-popup-menu *app-menu* 2 *app-popup-menu* "編集2(&E)")
=> #<menu 48701736>
seealso: add-popup-menu
seealso: define-popup-menu
type: Function
arguments: list-tool-bars
package: editor
file: builtin.l
ツールバーの状態を取得します。状態は以下の形式で返されます。
形式:
(((左側のツールバー1 横位置1 縦位置1 横幅1)
(左側のツールバー2 横位置2 縦位置2 横幅2)
(左側のツールバー3 横位置3 縦位置3 横幅3) ... )
((上側のツールバー1 横位置1 縦位置1 横幅1) ... )
((右側のツールバー1 横位置1 縦位置1 横幅1) ... )
((下側のツールバー1 横位置1 縦位置1 横幅1) ... )
(非表示のツールバー1 非表示のツールバー2 ... ))
タブバーの場合だけ横幅に数字が返されます。ツールバーの場合には、必ずnil
が返されます。
type: Function
arguments: menup OBJECT
package: editor
file: builtin.l
オブジェクトがメニューかどうかを返します。
OBJECT : 判定するオブジェクト
t オブジェクトはメニュー
nil オブジェクトはメニューではない
type: Function
arguments: mouse-menu-popup &optional APPS
package: editor
file: mouse.l
ポップアップメニューを表示します。[RBtnUp]
APPS : メニューの表示位置を指定します。
nil マウスカーソル位置
non-nil カーソル位置
type: Function
arguments: refresh-tool-bars
package: editor
file: builtin.l
ツールバーをリフレッシュします。
lisp/optprop.lの中から共通設定の変更内容を、ツールバーに反映するために用
いられています。
type: Function
arguments: set-menu MENU
package: editor
file: builtin.l
指定されたメニューをデフォルトのメニューにします。xyzzy上部に常時表示さ
れるようになります。
MENU : 設定するメニューを指定します。
メニューが不要ならばnilを指定します。
seealso: use-local-menu
seealso: define-menu
type: Function
arguments: show-command-bar SYM
package: editor
file: cmdbar.l
define-command-barで定義したコマンドバーを表示します。
seealso: hide-command-bar
type: Function
arguments: show-tool-bar NAME &optional EDGE X Y W
package: editor
file: builtin.l
ツールバーNAMEを表示します。EDGE X Y Wを指定することで任意の位置に表示さ
せることが可能です。
EDGE :top 上側に表示
:left 左側に表示
:right 右側に表示
:bottom 下側に表示
nil 非表示
X 横の位置
Y 縦の位置
W タブバーの場合に左右に表示した場合の横幅を与える。
ツールバーの場合はnilを与える。
[表示]-[ツールバー]に登録したいのならば、show-tool-barではなく、
define-command-bar/show-command-barを使います。
seealso: hide-tool-bar
type: Function
arguments: tab-bar-add-item BAR ITEM STRING &optional TOOLTIP MENU &key :first :last :before :after
package: editor
file: builtin.l
create-tab-barで作成したタブバーBARにタブを追加します。タブを識別するた
めのITEMとタブの文字列STRINGを指定します。個別のツールチップTOOLTIPと、
メニューMENUを指定可能です。
seealso: tab-bar-delete-item
seealso: tab-bar-find-item
seealso: tab-bar-current-item
seealso: create-tab-bar
type: Function
arguments: tab-bar-current-item BAR
package: editor
file: builtin.l
選択中のタブの情報が返されます。タブがひとつも無い場合には、nilが返され
ます。必ず、タブを識別するためのシンボル、タブの文字列、ツールチップのリ
ストで返されます。ツールチップが設定されていない場合には、nilが返されま
す。
使用例:
(progn
(defun a-func (a) (msgbox "~A ~A" a (type-of a)))
(define-command-bar 'a-bar "a bar")
(create-tab-bar 'a-bar 'a-func)
(show-command-bar 'a-bar)
(tab-bar-add-item 'a-bar '1st "- 1st -" "1st item")
(tab-bar-add-item 'a-bar '2nd "- 2nd -" "2nd item"))
=> t
(tab-bar-current-item 'a-bar)
=> (1st "- 1st -" "1st item")
(progn
(tab-bar-delete-item 'a-bar '1st)
(tab-bar-delete-item 'a-bar '2nd)
(delete-tool-bar 'a-bar)
(delete-command-bar 'a-bar))
=> t
seealso: tab-bar-delete-item
seealso: tab-bar-add-item
type: Function
arguments: tab-bar-delete-item BAR ITEM
package: editor
file: builtin.l
create-tab-barで作成したタブバーBARからタブITEMを削除します。削除するタ
ブが選択状態であれば、次のタブが選択されて同時にCALLBACKが実行されます。
seealso: tab-bar-add-item
seealso: create-tab-bar
type: Function
arguments: tab-bar-find-item BAR ITEM
package: editor
file: builtin.l
指定されたタブバーBARからタブITEMが存在するか否かを返します。
t 存在する。
nil 存在しない。
使用例:
(tab-bar-find-item 'a-bar '1st)
=> t
(tab-bar-find-item 'a-bar '3rd)
=> nil
seealso: create-tab-bar
seealso: tab-bar-list-items
type: Function
arguments: tab-bar-list-items BAR
package: editor
file: builtin.l
指定されたタブバーBARのタブのシンボルのリストを返します。
使用例:
(tab-bar-list-items 'a-bar)
=> (1st 2nd)
seealso: tab-bar-find-item
seealso: create-tab-bar
type: Function
arguments: tab-bar-modify-item BAR ITEM &optional STRING TOOLTIP MENU
package: editor
file: builtin.l
指定されたタブバーBARのタブITEMの設定を変更します。
使用例:
(tab-bar-modify-item 'a-bar '1st "- first -")
=> t
seealso: tab-bar-add-item
type: Function
arguments: tab-bar-select-item BAR ITEM
package: editor
file: builtin.l
指定されたタブバーBARのタブITEMを選択状態にします。同時にタブバーに設定
されたCALLBACKが実行されます。
seealso: tab-bar-current-item
type: Function
arguments: tool-bar-exist-p NAME
package: editor
file: builtin.l
指定されたツールバーNAMEが存在するか否かを返します。
t ツールバーが存在する。
nil ツールバー存在しない。
type: Function
arguments: tool-bar-info NAME
package: editor
file: builtin.l
指定したツールバーNAMEの情報を多値で返します。
形式:
表示位置 :top 上側に表示
:left 左側に表示
:right 右側に表示
:bottom 下側に表示
nil 非表示
横位置 横の位置を返す。
縦位置 縦の位置を返す。
横幅 タブバーの場合に左右に表示した場合の横幅を返す。
ツールバーの場合はnilを返す。
seealso: list-tool-bars
type: Function
arguments: track-popup-menu MENU &optional ANY
package: editor
file: builtin.l
フローティングポップアップメニューを表示します。選択されたコマン
ドを実行します。マウスボタンが押されていない場合はnilを返します。
MENU : create-popup-menuもしくはdefine-popup-menuで作成された
メニューを指定します。
ANY : どのようにポップアップするかを指定できます。
:button1 マウスの位置にポップアップ
:button2 マウスの位置にポップアップ
上記以外 カーソルの位置にポップアップ
seealso: create-popup-menu
seealso: define-popup-menu
seealso: popup-string
type: Function
arguments: use-local-menu MENU
package: editor
file: builtin.l
カレントバッファにローカルなメニューを設定します。
MENU : バッファにローカルなメニューを指定します。nilを設定するとローカ
ルなメニューは解除され、デフォルトのメニューが使用されます。
seealso: set-menu
seealso: current-menu
seealso: define-menu