[ID CC-CC2021] Нет ли возможности автозапуска скрипта при открытии файла?

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну а если beforeOpen, то опять же - документ еще не открыт, откроется после действий. используйте комбинацию из двух обработчиков, что-ли..
 
  • Спасибо
Реакции: hulk1776

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 188
Реакции
10 844
ну а если beforeOpen, то опять же - документ еще не открыт, откроется после действий. используйте комбинацию из двух обработчиков, что-ли..
И то довольно спорно, пробовать надо. Вполне вероятно, что уровень интерактивности задается в пределах непрерывного кода, как, скажем, если open из скрипта вызывать. А тут фактически, два последовательных вызова скрипта.
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
Да, претензии к обработчику AfterOpen по поводу глушения при открытии были неоправданно смелыми)))

Однако прописка этой заглушки в обработчике beforeOpen тоже не сработала (в стартаповскую Инди-папку положил оба обработчика - beforeOpen и afterOpen).

Код:
var myEventListener = app.eventListeners.add("beforeOpen", myAfterNewHandler);
}

function myAfterNewHandler(myEvent){
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; // и тут
    if (myEvent.target.constructor.name !== 'Document') {
return;
}
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; // и тут не глушит
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
Выходит, что инструкция глушилки вообще работает только на момент выполнения скрипта, а не навсегда отключает это дело?
Только что попробовал однострочный скрипт:
Код:
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; // чтобы не спрашивало о data-файле
и потом при открытии нового шаблона опять предупреждает. Вроде раньше можно было отключить на всю сессию Индизайна (до момента выполнения команды включения). А то все время пишешь в конце:
Код:
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
А оказывается можно и не писать... Все равно автоматически включится.
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 188
Реакции
10 844
Да, претензии к обработчику AfterOpen по поводу глушения при открытии были неоправданно смелыми)))

Однако прописка этой заглушки в обработчике beforeOpen тоже не сработала (в стартаповскую Инди-папку положил оба обработчика - beforeOpen и afterOpen).

Код:
var myEventListener = app.eventListeners.add("beforeOpen", myAfterNewHandler);
}

function myAfterNewHandler(myEvent){
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; // и тут
    if (myEvent.target.constructor.name !== 'Document') {
return;
}
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; // и тут не глушит
А вы что их в разные файлы засунули? Попробуйте в один.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 188
Реакции
10 844
Это именно настройка скрипта, а не индизайна, соответственно, рвботает на момент выполнения кода. Если с одним файлом не сработает, значит, скорее всего, не сработает никак
 
  • Спасибо
Реакции: hulk1776

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
настройка скрипта, а не индизайна,
Вот же подлянка)))
Если с одним файлом не сработает, значит, скорее всего, не сработает никак
Да, в одном файле оба обработчика - глушение не возникло. ОК, спасибо за помощь, теперь немного больше знаю про handler'ы (может пригодиться со временем)
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну это да, более того - на ручное открытие она не должна влиять. ну значит надо с линками порядок навести, или в префах отключить предупреждение, там вроде есть.
 
  • Спасибо
Реакции: hulk1776

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 188
Реакции
10 844
ну это да, более того - на ручное открытие она не должна влиять.
Поэтому, если, как я говорил, открывать не скрипт из документа а документ из скрипта, все должно получиться, причем, без костыльного огорода