Download vim_doc.txt Page 1 *usr_toc.txt* For Vim version 6.2. Last
Transcript
vim_doc.txt
*usr_42.txt*
Page 198
For Vim version 6.2.
Last change: 2002 Oct 08
VIM USER MANUAL − by Bram Moolenaar
Add new menus
By now you know that Vim is very flexible. This includes the menus used in
the GUI. You can define your own menu entries to make certain commands easily
accessible. This is for mouse−happy users only.
|42.1|
|42.2|
|42.3|
|42.4|
Introduction
Menu commands
Various
Toolbar and popup menus
Next chapter: |usr_43.txt| Using filetypes
Previous chapter: |usr_41.txt| Write a Vim script
Table of contents: |usr_toc.txt|
==============================================================================
*42.1* Introduction
The menus that Vim uses are defined in the file "$VIMRUNTIME/menu.vim". If
you want to write your own menus, you might first want to look through that
file.
To define a menu item, use the ":menu" command. The basic form of this
command is as follows:
:menu {menu−item} {keys}
The {menu−item} describes where on the menu to put the item. A typical
{menu−item} is "File.Save", which represents the item "Save" under the
"File" menu. A dot is used to separate the names. Example:
:menu File.Save
:update<CR>
The ":update" command writes the file when it was modified.
You can add another level: "Edit.Settings.Shiftwidth" defines a submenu
"Settings" under the "Edit" menu, with an item "Shiftwidth". You could use
even deeper levels. Don't use this too much, you need to move the mouse quite
a bit to use such an item.
The ":menu" command is very similar to the ":map" command: the left side
specifies how the item is triggered and the right hand side defines the
characters that are executed. {keys} are characters, they are used just like
you would have typed them. Thus in Insert mode, when {keys} is plain text,
that text is inserted.
ACCELERATORS
The ampersand character (&) is used to indicate an accelerator. For instance,
you can use Alt−F to select "File" and S to select "Save". (The 'winaltkeys'
option may disable this though!). Therefore, the {menu−item} looks like
"&File.&Save". The accelerator characters will be underlined in the menu.
You must take care that each key is used only once in each menu. Otherwise
you will not know which of the two will actually be used. Vim doesn't warn
you for this.
PRIORITIES
The actual definition of the File.Save menu item is as follows:
:menu 10.340 &File.&Save<Tab>:w
:confirm w<CR>
The number 10.340 is called the priority number. It is used by the editor to
decide where it places the menu item. The first number (10) indicates the
position on the menu bar. Lower numbered menus are positioned to the left,
higher numbers to the right.
These are the priorities used for the standard menus:
10
20
40
50
60
70
9999