Не добавляется именно в контекстное меню, в основное все нормально?Пробовал и другие подобные скрипты где есть команда добавление в контекстное меню
#targetengine "doalert"
var menuName = "Сделать алерт";
var myMenuItem = app.scriptMenuActions.add(menuName);
myMenuItem.addEventListener('onInvoke', function(){main();});
var rightMouseMnu = app.menus.item("$ID/RtMouseLayout");
rightMouseMnu.menuItems.add(myMenuItem);
function main(){
alert("Алерт сделан");
}
var mnu = app.menus.item("Layout Context Menu");
var mnu = app.menus;
var myRes = "";
for (i=0;i<mnu.length;i++){
myRes+=mnu[i].name+"\r";
var mySmnu = mnu[i].submenus;
for (j=0;j<mySmnu.length;j++){
try{myRes+="\t"+mySmnu[j].name+"\r";}catch(e){myRes+="\t**********\r";}
var my2Smnu = mySmnu[j].submenus;
for (k=0;k<my2Smnu.length;k++){
try{myRes+="\t\t"+my2Smnu[k].name+"\r";}catch(e){myRes+="\t\t**********\r";}
}
var my2mnuItems = mySmnu[j].menuItems;
for (k=0;k<my2mnuItems.length;k++){
try{myRes+="\t\t"+my2mnuItems[k].name+"\r";}catch(e){myRes+="\t\t**********\r";}
}
}
var mnuItems = mnu[i].menuItems;
for (j=0;j<mnuItems.length;j++){
try{myRes+="\t"+mnuItems[j].name+"\r";}catch(e){myRes+="\t**********\r";}
}
}
var myDoc = app.documents.add();
myDoc.pages[0].textFrames.add({
geometricBounds:app.activeDocument.pages[0].bounds,
contents:myRes
});
Перечень всех менюх можно получить таким скриптом
var myRes = "";
(function f(menus, level){
for (var i = 0, l = menus.length; i < l; i++) {
var menuItem = menus[i];
myRes += level + menuItem.name + '\r';
if ('menuItems' in menuItem) f(menuItem.menuItems, level + '\t');
if ('submenus' in menuItem) f(menuItem.submenus, level + '\t');
}
})(app.menus, '');
var myDoc = app.documents.add();
myDoc.pages[0].textFrames.add({
geometricBounds:app.activeDocument.pages[0].bounds,
contents:myRes
});