Если есть вопросы по скриптам

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

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

'Keyboard Shortcuts' > 'Area: Scripts'
 

pk025

Участник
Сообщения
21
Реакции
1
Ответ: Если есть вопросы по скриптам

ага... спасибо обльшое! нашел...
 

poliiina87

Участник
Сообщения
4
Реакции
0
Ответ: Если есть вопросы по скриптам

А не могли бы Вы мне помочь в одном вопросе?
Дело в том, что у меня есть таблица из строк и мне надо автоматически
сделать жирными те строки в которых есть знак $.
как это можно осуществить?
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Если есть вопросы по скриптам

Если таблица простая, можно перегнать в текст, автозаменой найти $ и заменить на абз.стиль, дающий жирный текст, и перегнать обратно в таблицу. По-другому - пожалуй только скриптом. А его сочинять надо
 

poliiina87

Участник
Сообщения
4
Реакции
0
Ответ: Если есть вопросы по скриптам

да... мне скриптом и надо) а это очень сложный скрипт? вы не могли бы мне помочь с этим? )
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Если есть вопросы по скриптам

Сегодня вечерком посижу, думаю смогу помочь. Киньте мне на мыло образец таблицы (Eugenyus@mail.ru)
 

LeshikSan

15 лет на форуме
Сообщения
266
Реакции
185
Ответ: Если есть вопросы по скриптам

PHP:
if( app.selection[0] instanceof Table )
	for( i = 0; i < app.selection[0].cells.length; i++ )
		/\$/.test( app.selection[0].cells[i].contents ) ? app.selection[0].cells[i].texts.everyItem().fontStyle = 'Bold' : false;
else alert( 'Нужно выделить таблицу' );
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Я только начинаю писать скрипты, по этому у меня такой вопрос.
Как считывать из открытого документа текст до определенного символа? Например до знака "Ентер" или пробела...
 

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

[Кот]
Метод String.substring(indexA, indexB) возвращает строку начинающуюся символом с индесом indexA и заканчивающуюся перед indexB (не включая его). Это если вы уже знаете индексы нужных символов.

Метод String.split (delimiter) возвращает массив строк, полученный разбиением исходной строки разделителем delimeter (сам разделитель удаляется). Это если известно строковое (или регулярное) выражение разделителя.

Еще есть коллекции 'Paragraphs' и 'Words', объекты в которых уже разбиты символами абзаца и пробелом соответственно. К ним можно обращаться по индексу и если нужно добавлять к выделению.
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Спасибо. А как узнать первую букву слова ?
 

boriskasmoscow

15 лет на форуме
Сообщения
343
Реакции
410
Ответ: Если есть вопросы по скриптам

...words[номер слова].characters[0].contents
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Скажите пожалуйста, почему у меня это не работает :

var mySel = app.activeDocument.selection[0]

выдает ошибку.
 

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

Кто выдает ошибку? ExtendScript Toolkit? Видимо потому, что вы не выбрали целевое приложение.
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Да, ExtendScript Toolkit.
А как мне это сделать ?
Даже когда я вставляю свой скрипт в InDesegn он тоже говорит ошибку.
 

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

Первой строкой напишите: #target indesign

Индизайн может выдавать ошибку, если нет активных документов.
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Все, Та ошибка исчезла.
Теперь появился новый вопрос.
word = par[z].split(' ')
Это должно делить строку на слова (разбивать по пробелам)
Как указать там пробел ?
 

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

Зачем? Уже есть коллекция 'words', берите слова оттуда.
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

Это как ? Вот у меня есть строка, из которой нужно взять первое слово и произвести с ним некоторые действия, затем второе, и произвести действия, третье...и т.д.
Поясните пожалуйста поподробнее. Повторюсь - я еще новичок.
 

similideus

12 лет на форуме
Сообщения
671
Реакции
349
Ответ: Если есть вопросы по скриптам

Начнем с того, какую строку вы имеете ввиду. Одну из строк текста в параграфе или произвольную текстовую переменную (которая может содержать хоть несколько параграфов сразу)?

Если строку параграфа (или Story), то родитель.lines[номер строки].words[номер слова].contents.

Если произвольную переменную, то текст.contents.split(' ')[номер слова]. (Запись не очень красивая, лучше создать референсы для удобочитаемости)

Upd.
Или ваш Paragraph/Story cостоят из единственной строки, тогда параграф.words[номер слова].contents.
 

[Кот]

Участник
Сообщения
24
Реакции
0
Ответ: Если есть вопросы по скриптам

я имел ввиду строку в параграфе.
родитель.lines[номер строки].words[номер слова].contents - это узнать все слово.
а родитель.lines[номер строки].words[номер слова].characters[0].contents это узнать первую букву ? (мне нужно узнать первую букву слова)
А заодно еще как узнать сколько всего слов? родитель.lines[номер строки].length так ?
 
Статус
Закрыто для дальнейших ответов.