Шаблоны переноса TeX: что они представляют - PullRequest
13 голосов
/ 20 декабря 2009

Если вы прокрутите эту страницу немного, вы увидите английские английские шаблоны переносов, например:

\patterns{ % just type <return> if you're not using INITEX
.ab4i
.ab3ol
.ace4
.acet3
.ach4
.ac5tiva

Что означают эти шаблоны, например .ab4i?

Ответы [ 2 ]

16 голосов
/ 20 декабря 2009

В шаблоне переноса TeX есть три вида символов. Точка . является привязкой к границе слова. Буква обозначает себя, то есть букву в слове, который нужно переносить. Число обозначает потенциальную точку переноса, а число обозначает уровень переноса. Всего пять уровней.

Основная идея алгоритма заключается в том, что слово сопоставляется с шаблонами, а уровень переноса вставляется из каждого соответствующего шаблона. Если два уровня из двух разных шаблонов совпадают в одной точке, выбирается более высокий. Из окончательных значений только нечетные уровни указывают допустимые точки переноса. Идея состоит в том, чтобы иметь возможность указывать как возможные точки переноса, так и места, где дефис не должен быть вставлен. Так, например, если определенная точка в слове соответствует двум шаблонам, которые имеют 1 и 2 в этой точке, перенос в этой точке запрещен, поскольку 2 переопределяет 1, и только нечетное значение указывает разрешенную точку переноса.

Глядя на ваши примеры, .ab4i указывает, что abi в начале слова редко получит дефис между b и i, потому что уровень 4, будучи четным, будет запрещать переносы, если он не переопределен a 5. С другой стороны, слово, начинающееся с activa, всегда может переноситься между c и t, потому что 5 переопределяет любое другое значение и, будучи нечетным, допускает переносы.

4 голосов
/ 20 декабря 2009

Эти шаблоны создаются с помощью инструмента под названием patgen2. Есть источник TeX для учебника об этом инструменте на patgen2.tutorial , и кандидатская диссертация по этой теме доступна через tug.org .

...