Вопрос знатокам JS под CS2 про appspec.executeScript(script);

Статус
Закрыто для дальнейших ответов.

AirGraph

Участник
Топикстартер
Сообщения
244
Реакции
21
Ребята, а у кого-нибудь работает метод, описанный в доке на Bridge:

appspec.executeScript(script);

Запускать appspec он запускает, но ничего более не делает. Что такое script? Растолкуйте непонятливому, а то вот эта строка из доки:

script - A string containing the script to be evaluated

ситуацию не проясняет вовсе. Это что, скрипт, состоящий из одной строки?
 

vbatushev

20 лет на форуме
Сообщения
2 242
Реакции
1 227
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

Ну, а почему нет? К примеру, хочешь выполнить нечто, написанное на JS, в VB окружении. Или наоборот :)
Для JS в строку скрипт выстроить проблем нет.
В VB vbCrLf'ов неплохо понаставить внутри String.
 

AirGraph

Участник
Топикстартер
Сообщения
244
Реакции
21
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

vbatushev сказал(а):
Ну, а почему нет? К примеру, хочешь выполнить нечто, написанное на JS, в VB окружении. Или наоборот :)
Для JS в строку скрипт выстроить проблем нет.
В VB vbCrLf'ов неплохо понаставить внутри String.

Так ты всерьез предполагаешь, что эта функция нагорожена для выполнения одной строки в среде некоей программы? А не проще было сделать выполнение конкретного файла, содержащего этот скрипт. Да и как без проблем в строку выстроить скрипт, находящийся в файле name.jsx? Все равно придется файл перечитать по строкам и все их объединить в одну строку. Такой гимор! ;)

А нет мыслей как можно заустить из ID PS, а после этого скзать PS чтобы он выполнял такой-то скрипт? И все это в рамках JS, не обращаясь к системе?
 

vbatushev

20 лет на форуме
Сообщения
2 242
Реакции
1 227
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

В ID CS2 можно устраивать межпрограммное (внутри CS2) взаимодействие. Но я сам не копал, а вот Бутрин кой-что знает :)
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

AirGraph сказал(а):
Так ты всерьез предполагаешь, что эта функция нагорожена для выполнения одной строки в среде некоей программы? А не проще было сделать выполнение конкретного файла, содержащего этот скрипт. Да и как без проблем в строку выстроить скрипт, находящийся в файле name.jsx? Все равно придется файл перечитать по строкам и все их объединить в одну строку. Такой гимор! ;)

А нет мыслей как можно заустить из ID PS, а после этого скзать PS чтобы он выполнял такой-то скрипт? И все это в рамках JS, не обращаясь к системе?

Во первых строках сообщаю, что JS позволяет читать файл целиком, а не по строкам. Так что это не совсем "гимор".

Во-вторых, путей запуска из InDesign Photoshop существуют как минимум два, причем оба они связаны с такими ухищрениями, что "гимор" чтения файла - это детский лепет.
 

AirGraph

Участник
Топикстартер
Сообщения
244
Реакции
21
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

А как это читать файл целиком? Ткни меня носом в описание, пожалуйста ;), что-то я упустил, наверное...

А про запускать PS из ID с гиморм - это я умею. Но уменя получилось с использованием платформы, а хочется от этого уйти.
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

AirGraph сказал(а):
А как это читать файл целиком? Ткни меня носом в описание, пожалуйста ;), что-то я упустил, наверное...

А про запускать PS из ID с гиморм - это я умею. Но уменя получилось с использованием платформы, а хочется от этого уйти.
file.read() читает файл целиком.

Для того, чтобы запускать прогрраммы CS2 одну из под другой используется объект BridgeTalk, про который почитать можно в документации по скриптингу в Bridge.
 

vbatushev

20 лет на форуме
Сообщения
2 242
Реакции
1 227
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

А! Вот где загадка названия продукта ;)
 

AirGraph

Участник
Топикстартер
Сообщения
244
Реакции
21
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

Олег, Виталий - спасибо. Все прочитал, и даже попробовал. Все работает без вопросов. Теперь платформа, Windows она или Mac OS X - по барабану. Это здорово!
 

vbatushev

20 лет на форуме
Сообщения
2 242
Реакции
1 227
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

Всегда рады пополнению в наших рядах. Новых скриптов будет? :)
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

AirGraph сказал(а):
Все работает без вопросов.
Не знаю, как на Маке, а на ПС я бы не стал так оптимистично заявлять :)
 

AirGraph

Участник
Топикстартер
Сообщения
244
Реакции
21
Ответ: Вопрос знатокам JS под CS2 про appspec.executeScript(script);

В совершенно боевых условиях не проверял, написал тестовые скрипты - работают именно так, как написано в доке. На этой неделе у меня будет возможность проверить все это дело на верстке журнала 96 полос, 312 картинок. Обязательно опубликую результаты тестов. А что, на PC есть проблемы с BridgeTalk? Если есть известные баги - опубликуйте, пожалуйста.
 
Статус
Закрыто для дальнейших ответов.