Arbitrary Commands provides a popup menu containing player-programmable scripts or slash commands. The menu can be shown by any LDB launcher; by default a minimap-pimple icon is used. The scripts are gathered in nested menus, arranged by the player. The scripts can be either slash commands or snippets of Lua code, just like a long '/script'.
I kept finding myself wanting to run the same bits of /script over and over, but didn't want to use up a macro slot OR find a place to store the macro buttons (screenshot). There are commands that I use just often enough that I don't like to keep typing them in again and again, but didn't feel like wrapping in a macro or using up a keybind (screenshot). And there are actions that would require lots of clicks in the game's menus, but translate to single Lua functions (screenshot). All of these things conspired to cause me to write this addon back in vanilla days and rewrite it for Wrath; I'm finally getting around to inflicting it on the rest of the world.
Use /arbit or the LDB/minimap launcher to open the main menu. From the Player Scripts tab, click the top left menu named Instructions. Submenus under Instructions describe specific details.
Changed in 0.9.1: The functions 'CHAT' and 'SLASH' have been renamed to 'AC_CHAT' and 'AC_SLASH'. You will need to update your scripts accordingly.
Standard Ace3 profiles are used. Both the options and the scripts are per-profile.
A few example scripts are included. They are all small scripts that I use (or have used in the past) for the reasons above. They tend to be actions which would otherwise require mouse clicking through multiple layers of Blizzard menus or other addon menus. You can delete any/all of the packaged examples. If you reset a profile the examples will return.
- You still can't get around any of the restrictions in this link.
- Player scripts are not considered "protected/secure" and therefore cannot do certain things. See this link if you are unfamiliar with secure frames.
- That also means that macro-style entries cannot do /cast, /use, and so forth. (I might try and implement this kind of thing... someday... ugh.)
Programming from other addons
New player scripts can be added by other addons. This functionality is still at a primitive stage, but documentation and functioning examples are included.
If you're a reasonably proficient speaker of non-English languages, any translations you can do would be welcome! Just make changes at http://www.wowace.com/addons/arbitcomm/localization/ and then send me a PM to notify me. I can offer nothing in return except public credit, my appreciation, and a beverage of your choice if you're ever in town.