Скрипты на тему findChangeQuery: поиск и обсуждение

  • Автор темы Автор темы iconed
  • Дата начала Дата начала

iconed

Топикстартер
12 лет на форуме
Сообщения
7
Реакции
0
Уважаемый Алексей @LeshikSan !
В свое время у Вас была гениальная разработка для ИнДиза — findChangeQueryList.
Вы полностью закрыли этот проект для последующих релизов программы — или он просто модифицирован под другим именем?
Есть ли какие-то Ваши аналоги? Адобовские скрипты в этой области (во всяком случае, пару лет назад) были неудобоваримы.
Был бы очень рад ответу на этот вопрос, а уж положительному ответу — был бы рад безумно :)
 
Последнее редактирование модератором:
Уважаемый Алексей!
В свое время у Вас была гениальная разработка для ИнДиза — findChangeQueryList.
Вы полностью закрыли этот проект для последующих релизов программы — или он просто модифицирован под другим именем?
Есть ли какие-то Ваши аналоги? Адобовские скрипты в этой области (во всяком случае, пару лет назад) были неудобоваримы.
Был бы очень рад ответу на этот вопрос, а уж положительному ответу — был бы рад безумно :)
Посмотрите скрипт XStrings.
 
Уже много лет пользуюсь вот этим:
Ничего удобнее для себя пока не нашел
Вы, видимо, не пробовали XStrings.
Я начал разбираться как работать со скриптом по вашей ссылке — там столько подготовительной работы... ужас. Надо искать каждый поисковый запрос, копировать его имя, вносить в какой-то там файл замен в правильное место.
В Xstrings всё намного проще. Его интерфейс это большой список, в каждую строку можно прописать стандартный поисковый запрос Индизайна, они в в выпадающем списке внизу.
Единственное, XStrings не работает с глифами и объектами. Но мне это и не нужно.

1589049029968.png


Круче Xstrings только плагин Multi-Find/Change
 
Последнее редактирование:
  • Спасибо
Реакции: suntory
GREP query manager с возможностью редактирования запросов и многими другими наворотами.
 
Эта ссылка на древнюю версию. Она была нормальной очень недолго, очередное обновление объектной модели убило отображение выполненных запросов. По задумке, рядом с ними должны отображаться плюсы.
Видимо, этот косяк не только мне был гвоздём в ботинке, и Марк Аутрет, по-моему, нашел решение. Я его попробовал, и оно мне понравилось. Сейчас всё, как задумано. Последняя версия тут, в бесплатных программах, версия 2020 года.
 
  • Спасибо
Реакции: EvilOrange и Serbel
Вы, видимо, не пробовали XStrings.
Я начал разбираться как работать со скриптом по вашей ссылке — там столько подготовительной работы... ужас. Надо искать каждый поисковый запрос, копировать его имя, вносить в какой-то там файл замен в правильное место.
В Xstrings всё намного проще. Его интерфейс это большой список, в каждую строку можно прописать стандартный поисковый запрос Индизайна, они в в выпадающем списке внизу.
Единственное, XStrings не работает с глифами и объектами. Но мне это и не нужно.

Посмотреть вложение 131038

Круче Xstrings только плагин Multi-Find/Change
Вообще-то я пробовал все из перечисленного. XString и DoQueryList я раньше использовал для отладки цепочек. На этом варианте я остановился именно потому что он работает с xml-запросами, а туда можно включить данные и о форматировании, а не только поиск-замену. При таком варианте можно решать достаточно сложные задачи по форматированию и разметке текста. Я о горячих клавишах для стилей уже забыл вообще. На практике работа выглядит так: в индизе создается поисковый запрос, сохраняется и его имя тут же копируется в цепочку запросов файла сценария. Вызов скрипта у меня забит на доп. кнопку мыши - открывается окно со списком сценариев, выбирается нужный и вуаля. Все очень быстро, просто и никаких дополнительных окон. У него, правда, есть некоторые ограничения, но их можно обойти
 
... именно потому что он работает с xml-запросами, а туда можно включить данные и о форматировании, а не только поиск-замену. ...
XStrings это умеет.
Запросы можно найти в выпадающем списке. Это стандартные XML запросы Индизайна.
Составленный список запросов можно сохранить в текстовый файл, доступ в списке наверху, на скриншоте это Clear Headings.txt

1589147933204.png
 
Уважаемый Алексей @LeshikSan !
В свое время у Вас была гениальная разработка для ИнДиза — findChangeQueryList.
Вы полностью закрыли этот проект для последующих релизов программы — или он просто модифицирован под другим именем?
Есть ли какие-то Ваши аналоги? Адобовские скрипты в этой области (во всяком случае, пару лет назад) были неудобоваримы.
Был бы очень рад ответу на этот вопрос, а уж положительному ответу — был бы рад безумно :)

iconed, приветствую!
Почему-то у меня не работают уведомления с форума на почту о новых постах, поэтому отвечаю только сейчас.
Спасибо за такой лестный отзыв, приятно :)
Скрипт жив и вобщем-то для меня остается самым востребованным в работе.
Текущая версия - 2.20. Выложил его на Ресурсы и создал отдельную тему для технической поддержки: ссылка.
 
  • Спасибо
Реакции: densen и imma
XStrings это умеет.
Запросы можно найти в выпадающем списке. Это стандартные XML запросы Индизайна.
Составленный список запросов можно сохранить в текстовый файл, доступ в списке наверху, на скриншоте это Clear Headings.txt

Посмотреть вложение 131088
Посмотрел еще раз на него. Действительно, по возможностям очень неплохо. Вот только места на экране столько занимает... :)
 
Доброго дня! Сразу скажу, что в написании скриптов я не силен вообще, но в свое время подсмотрел у уважаемого Eugenyus такую конструкцию для составления цепочек греп-запросов (за что ему большое спасибо):
JavaScript:
var mySel = app.activeDocument;

app.findGrepPreferences = app.changeGrepPreferences = null;
app.findChangeGrepOptions.includeLockedLayersForFind = true;
app.findChangeGrepOptions.includeLockedStoriesForFind = true;
app.findChangeGrepOptions.includeHiddenLayers = true;
app.findChangeGrepOptions.includeMasterPages = false;
app.findChangeGrepOptions.includeFootnotes = true;


var myF = [];
var myC = [];

//Наполняем два массива: первый - поиск, второй - замена

myF[1] = “”;
myC[1] = “”

myF[2] = “”;
myC[2] = “”

myF[3] = “”;
myC[3] = “”

myF[4] = ““;
myC[4] = ““

myF[5] = “”;
myC[5] = “”;


//И т.д. myF[5] = ...; myC[5] = ...;

for (i=2; i<myF.length; i++){
        app.findGrepPreferences.findWhat = myF[i];
        app.changeGrepPreferences.changeTo = myC[i];
        mySel.changeGrep();
        }

app.findGrepPreferences = app.changeGrepPreferences = null;

Я активно использую этот скрипт для внесения корректорских правок, но есть одна маленькая неприятность: он прекрасно работает с латиницей и кириллицей, но диакритические знаки в глифах игнорирует напрочь. Возможно ли там что-то подправить?
 
Последнее редактирование модератором:
Сам спросил, сам ответил. Со скриптом проблем нет, это при сохранении самого файла скрипта надо разрешить поддержку юникода и все заработает.