[ID CC-CC2021] Перенос ударения из начала строки после автоматического переноса

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

Tlumach

Топикстартер
15 лет на форуме
Сообщения
14
Реакции
0
Есть сверстанный текст Псалтири, где некоторые ударения после автоматического переноса стоят вначале строки, их надо найти и перенести на конец верхней строки.
 
Найти все ударения и прибить их No Break
 
Последнее редактирование:
поставьте на все "ударения" и на символ до него атрибут nobreak

и забудьтесь
 
до ударения стоит символ автоматического переноса
 
поставьте на все "ударения" и на символ до него атрибут nobreak

Здравствуйте!
У меня такая же точно проблема с церковно-славянским текстом 3500 страниц.
Символы ДО ударения в каждом слове разные, ввиду чего Ваш совет не представляется выполнимым.
_____

Повторю вопрос коллеги [U]Tlumach[/U] сообществу:

Есть сверстанный текст на церковно-славянском, где некоторые ударения после автоматического переноса оказались в начале следующей строки, их необходимо найти и перенести на конец предыдущей верхней строки.
Решение проблемы видится через:
1. задание следующего поиска в GREP (если такое возможно): "автоперенос" + "1"
2. установка в найденных словах дискреционного переноса "~-" после "1" - вручную или через замену.

Буду признателен сообществу за подсказку в решении проблемы.

Пояснения:
а. самое распространённое прямое ударение в ц-с языке (ucs раскладки) присвоено глифу "1", выглядят слова с ним следующим образом: та1кожде, приле1жно, соверши1ти и проч.
б. автоматическая расстановка переносов в некоторых случаях относит "1" к следующему слогу слова и тогда получается: та(автом. перенос)1кожде, где "1кожде" находится в начале следующей строки и символ ударения оказывается не только не над надлежащей буквой, но вообще в начале следующей строки и за пределами границы фрейма.

PS Используется InDesign 2020 v15.0.1
 
Символы ДО ударения в каждом слове разные, ввиду чего Ваш совет не представляется выполнимым.
Вот так не получается разве:
NoBreak.jpg
?
 
Сейчас попробую

вы слово "grep" слышали???

Очень хочу полноценно научиться им пользоваться.
Подскажите пожалуйста, что мне требуется сделать для решения проблемы.
Если Вас не затруднит, напишите конкретную формулу. Я пока совсем не силён в синтаксисе GREP.
 
Последнее редактирование:
[U]andrejK[/U]
Спасибо, Вы явно не затруднились 8*)

Я ж написал.
А Вы ответили:
Это я [U]andrejK[/U] ответил :)

К сожалению, ваш вариант ищет все гласные с последующим ударением, и при замене а) вообще отменяет перенос в найденном слове, что приводит к сбою вёрстки и б) изменяет стиль символа внутри одного слова, что не очень хорошо.
Подскажите пожалуйста, что значит "$0" в поле "Заменить на" Вашего варианта?
И ещё, нет ли всё-таки способа с помощью GREP найти автопереносы в тексте (только их или с последующим символом "1")?
 
Последнее редактирование:
К сожалению, ваш вариант ищет все гласные с последующим ударением, и при замене а) вообще отменяет перенос в найденном слове, что приводит к сбою вёрстки и б) изменяет стиль символа внутри одного слова, что не очень хорошо.
Тогда в строке замены попробуйте
Код:
$0~-

И без применения стиля с NoBreak.
 
LeonidB

Попробовал:
Если включаю замену на автомате - что-то слетает в вёрстке (появляются множественные ошибки) т.е. в многофреймовом документе достаточно порой одного слёта переноса в каждом фрейме, и поехало...
Если проверять вручную - потратил 15 минут на 20 страниц (из 3500) - не вариант!
Кстати, часть слов с переносом ударения на следующую строку уже была исправлена вручную через добавление дискреционного переноса при наборе текста, и при предложенной Вами схеме замены туда добавляется ещё один непечатный символ.

Может быть есть таки способ найти только автопереносы в тексте со следующим после него символом "1"?
Почему так упорно прошу рассмотреть этот вариант: там ведь в тексте кроме прямого ударения "1", есть ещё и другие надстрочные символы в середине слов, которые могут попасть не туда при автопереносе, что усложняет поиск и корректуру в несколько раз.
 
Может быть есть таки способ найти только автопереносы в тексте со следующим после него символом "1"?
Почему так упорно прошу рассмотреть этот вариант: там ведь в тексте кроме прямого ударения "1", есть ещё и другие надстрочные символы в середине слов, которые могут попасть не туда при автопереносе, что усложняет поиск и корректуру в несколько раз.
Тогда только скриптом. У Михаила Иванюшина (@iv-mi) есть скрипт DoMakeupOK, в котором, помимо прочего интересного, есть функция отслеживания "не" в конце слова, перед которым стоит автоперенос (то есть "не" в конце слова попадает на следующую строку, что не есть хорошо).
Возможно, он бы смог дать строчку скрипта, где вместо этого "не" будет Ваша единичка.
Если Михаил, зайдя на форум, увидит обращение к его нику и прочтёт эту тему, возможно, он предложит решение.
Ну или кто другой из местных скриптописцев.
 
Последнее редактирование:
Если включаю замену на автомате - что-то слетает в вёрстке (появляются множественные ошибки) т.е. в многофреймовом документе достаточно порой одного слёта переноса в каждом фрейме, и поехало...
Если проверять вручную - потратил 15 минут на 20 страниц (из 3500) - не вариант!
Конечно, такие замены лучше делать в только что залитом тексте, а не в уже свёрстанном.
Но это уже для Ваших будущих работ :)
 
всё равно же вёрстка поедет))) скриптом-не скриптом)

все подобные манипуляции с заменами надо делать ДО верстки)
 
  • Спасибо
Реакции: Skvoznyak
всё равно же вёрстка поедет)))
Ты про скрипт а-ля Иванюшин?
Ну, у Михаила в его скрипте не автоматические замены, а подсветка проблемных мест. А исправлять можно вручную, контролируя результат.

NeNe.jpg

Только вместо "-не" нужна та самая единичка (то есть ударение в шрифте).