Accessing panelmenus without the panel

Unless you have a panel open you can't access the panel's menu.Or can you?

Unless you have a panel open you can't access the panel's menu.

Or can you?

Of course you can. Although the only inbuilt way I know is to define shortcuts for the commands you need. And that is clunky at best.

So until Adobe offers a means to open a panelmenu for an iconized menu my only offer is to have the menus redundantly in the main menubar.

Thus you have a place with all commands of all panels no matter if the panel is even visible or not.

The Installation

Open the Script Panel and rightclick "User". Show in Finder/Explorer.

You should see a folder containing a folder called "Script Panel". Add another folder called "Startup Scripts". Place the script "Palettenmenus ins Hauptmenu 0.6" inside. Excuse the german name, the script should work fine in an english InDesign.

Restart InDesign.

What else?

This script is currently only a proof of concept. Tested only in CS5 but should work just as fine in CS3/4.

I'd be happy to know what you think.

Edit: Version 0.6

Due to Peter's suggestion I added the ability to load only a few panelmenus. Run the script once, then search for a folder named "CuppaScripts" on your disk. On a Mac it should located in "~/Library/Application Support/"

Inside that folder you should find a text file named "palettenmenus.txt". Just open it in any text editor and delete the lines you don't want. If you change your mind, delete the file and run the script again


Links panel

I've upgraded to the newest Indesign CC version and it performs really slow when Links panel is opened. However it is impossible to use some key shortcut if the panel is hidden so I've been searching for some workaround. Your script looks perfect. But... there is not Links panel within Pal.Menus. Is it possible to fix it?

Nice script

Nice script (didn't spot it until just now). I've pressed it into service to get quicker access to the character and paragraph flyouts. I prefer always to have an empty work space with no panels open, and even with these two panels open it's a hassle to open their flyouts. And I'm not a big fan of the Control strip.

The current script defeats itself a bit by displaying all panels. It would be nice if you could make it the list of displayed panels names configurable in some way.

Another thing is that it takes time to run. On my (pretty quick) PC it takes 26 seconds to run. But if you change "app.menus" and "menu.menuItems" to "app.menus.everyItem().getElements()" and "menu.menuItems.everyItem().getElements()", respectively, the script finishes in 0.4 seconds!

Thanks for a great script.