[ID CC-CC2022] Как запретить перенос слова в предпоследней строке абзаца

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

sashamo

Топикстартер
12 лет на форуме
Сообщения
543
Реакции
10
Столкнулся со странными требованиями: нужно чтоб в последней строчке абзаца слово не переносилось, то есть без переноса. Слово или должно помещаться в даной строке либо целиком переноситься на следующую строку. Скажите как такое сделать?
 

Вложения

  • 1.jpg
    1.jpg
    105.2 КБ · Просм.: 209
2021-06-30_12-54-01.png
 
  • Спасибо
Реакции: sashamo
George это у меня сделано, но заказчик хочет чтоб именно в предпоследней строке абзаца не переносилось слово, не важно последнее это слово абзаца или там еще несколько за ним.
 
Последнее редактирование модератором:
Так с последним или предпоследним? Вы б определились...
Если как на картинке — ставьте Ctrl+Shft+- перед словом, которое не должно переноситься.
Только учтите, что эта строка станет слишком "жидкой", как первая из примера
 
  • Спасибо
Реакции: sashamo

George

вроде то что надо сделать (?<=\w)\s(?=\ w+[[punct:]]+$) но не работает что то оно. Такая греп-замена даже ничего не находит, хотя по идее должна находить два последних слова абзаца и применять no break.
 

Вложения

  • 2.jpg
    2.jpg
    238 КБ · Просм.: 196
  • 1.jpg
    1.jpg
    196.1 КБ · Просм.: 205
Последнее редактирование:
а у вас там пробел может другой стоит, неразрывный
 
(?<=\w)\s(?=\w+[[punct:]]+$)
 
Последнее редактирование:
короче... возьмите ваш греп отсюда
и уберите тут \ w пробел между слешем и w

Не по теме:
Это уже бесит, что движок даже заключенный в теги кода текст умудряется калечить :(
 
Вот текстовый файл с правильной строкой
 

Вложения

  • GREP.zip
    GREP.zip
    179 байт · Просм.: 202
(?<=\w) (?=\w+[[:punct:]]+$)
"\s" - заменило на " "
а после редактирования "[[:punct:]]" на "[[punct:]]"
 
Последнее редактирование:
  • Спасибо
Реакции: sashamo

Gad спасибо! Работает!​

 
@svlasov , @Linxy
Может уберёте автозамены, которые много скобок подряд и что там ещё товарищ Гад рассказывает?

Мы убиваем "добрыми делами" код скриптов на форуме(((
 
а после редактирования "[[:punct:]]" на "[[punct:]]"
тут был не прав, первый раз вставлял строку скопировав из своего ID, потом после того как заметил что "\s" заменило на " " (что по сути не ошибка, но тоже странно для заключенного в теги кода текста) взял строку полностью из текста ТС в котором ":" уже отсутствовало.
Тем не менее... :))))))))))))) - двоеточие и 13 скобок
 
Последнее редактирование:
заметил что "\s" заменило на " " (что по сути не ошибка, но тоже странно для заключенного в теги кода текста)
Это делает сам InDesign при копировании выражений из поля греп-поиска.
Заменяет \s на пробел, \r или \n на действительный перевод строки, и т.д.
Движок форума в подобных случаях не при чём.
 
  • Спасибо
Реакции: Gad