Scripting Menus » History » Revision 5
Revision 4 (Per Amundsen, 03/29/2014 08:54 PM) → Revision 5/52 (Per Amundsen, 03/29/2014 08:54 PM)
*Scripting Menus*
You can edit most AdiIRC menus by in the Menu Editor located at Tools -> Edit Menus.
Status - Edit the status menus.
Channel - Edit the channel menus.
Query - Edit the query menus.
Nicklist - Edit the nicklist menus.
Menubar - Edit the menubar menus.
A menu syntax consists of Menu text<colon>Menu command.
For this reason, only one colon is allowed in a menu, neither the text nor the command can contain any other colons for the menu to work properly.
*Example*
<pre>
; Add a new menu item with the text "Query", when clicked, execute "/query $1" where $1 means the first word given to this menu, usually a nick.
Query:/query $1
</pre>
The "menu" prefix can also be used in a script to add more items to a menu.
*Example*
<pre>
;Add a new menu item with the text "Whois", when clicked execute "/whois $1".
menu nicklist {
Whois:/whois $1
}
</pre>
*Menu hierarchy*
The menu hierarchy is determined by punctuation marks.
This works in both the Menu Editor and in a custom script.
*Example*
<pre>
menu nicklist {
;Create a upper menu item called "Tools", notice you don't need a colon for the upper menu.
Tools
;Use a punctuation mark to put a menu item inside "Tools"
.Whois:/whois $1
;Use a punctuation mark to put another menu item inside "Tools"
.Who:/who $1
;Create another upper menu item called "Operate"
Operate
;Use a punctuation mark to put a menu item inside "Operate"
.Kill:kill $1
;Create a sub menu item called "Operate More" inside "Operate"
.Operate More
;Use two punctuation mark to put a menu item inside "Operate More"
..Kill again:kill $1
}
</pre>
*$1- lines inside menus*
$1- will be filled with different words depending on the menu type.
Status - The currently connected [[$network]] name.
Channel - The current [[$chan]] name.
Query - The [[$nick]] associated with the query window.
Nicklist - A list of selected nicks in the nicklist.
Menubar - Your nick ([[$me]]) on currently connected server.