0 голосов
399 просмотров

В моём файле ptxprint-mods.tex я хочу внести некоторые специфические корректировки в пунктуацию. Вот корректировка вокруг двоеточий:

\catcode`\:=\active \def:{\unskip\kern0.25em\char`\:{}} % двоеточие

К сожалению, это ломает включение файлов PDF, например PDF с титульным листом и страницей с указанием авторства. В начале моего вывода появляется следующее:

image

Может ли кто-нибудь помочь мне разобраться, как получить и то, и другое? Спасибо.

Переведено машиной с языка English
PTXprint от (1,4тыс. очков)
снова показан | 399 просмотров

3 Ответов

0 голосов

Просто для информации — я пробовал поместить файл PDF, который нужно включить, в папку PrintDraft, но всё равно используется полный путь (с двоеточием).

Переведено машиной с языка English
от (1,4тыс. очков)
0 голосов

У меня есть временное решение. Я закомментировал строку .tex выше (с помощью «%»), а затем добавил следующее в мой файл PrintDraftChanges.txt:

'(?<!\\ft) *:( |\n)' > '\u202f:\1' # Place non-breaking thin space before colon

В моем конкретном случае я не хотел заменять пробел после маркера \ft (так как из-за этого он перестает работать), поэтому я добавил туда небольшой отрицательный просмотр назад. И двоеточие может фактически находиться в конце строки, поэтому мне нужно искать либо пробел, либо перевод строки после двоеточия.

Это работает, потому что я добавляю немного больше контекста в поисковую строку, что позволяет избежать изменения двоеточия в пути к файлу PDF.

Я бы предпочел найти другое решение, если это возможно, поскольку у меня нет такого контроля над \u202f, как над командой \kern в файле .tex. Но это хотя бы дает мне приблизительное решение, чтобы продвинуться в верстке.

Переведено машиной с языка English
от (1,4тыс. очков)

Помните, что изменения применяются только к файлам USFM, поэтому вам не нужно беспокоиться о том, что вы встретите там имена файлов PDF.

Вы можете вернуть себе контроль, используя практически любой код, который хотите, а затем в вашем ptxprint-mods.tex вы можете делать такие вещи, как:

\def\mycolonkern{\unskip\kern0.25em}
\catcode"202F=\active \def^^^^202f{\mycolonkern}

Обратите внимание на тщательное использование шестнадцатеричных кодов в верхнем регистре в операторе catcode и в нижнем регистре в def. Это срабатывает у меня каждый раз! В любом случае, теперь у вас есть миллион символов, которые можно использовать для всевозможных безумств :slight_smile:

Переведено машиной с языка English
0 голосов

Вместо того чтобы делать двоеточие активным, может ли \interchartoks в XeTeX помочь здесь? Я только читал о нём, никогда не использовал, но кажется, что это должно сработать.

Переведено машиной с языка English
от (294 очков)

Похожие вопросы

0 голосов
1 ответ 165 просмотров
У меня есть модуль Библии с лекционарным циклом, в котором есть собственные заголовки \s#. В модуле нет "\inc s", потому ... могу понять, не упускаю ли я где-то какой-то параметр?
beve 131 задал вопрос апр 10, 2025
0 голосов
1 ответ 248 просмотров
Раньше всё работало нормально, но потом я нажал кнопку «Сброс» (reset), чтобы вернуть настройки по умолчанию. Теперь я не могу их изменить.
MnKN 134 задал вопрос июн 2, 2024
0 голосов
1 ответ 239 просмотров
Давно слышал, что для работы PTXprint не обязательно устанавливать Paratext. Но процесс использования PTXprint без ... не создавая фиктивный проект Paratext? Спасибо, Джефф
jeffh 1,4тыс. задал вопрос янв 6
0 голосов
1 ответ 193 просмотров
Mailto: <*Emails are not allowed*> PTXprint [2.7.17] - Error! Failed to create: MSB_BookofMark_XXC_ptxp.pdf ! File ... various settings on the Advanced tab. PTXprint Version 2.7.17
MnKN 134 задал вопрос сен 13, 2025
+1 голос
0 ответов 292 просмотров
(См. также Вставка страниц из PDF, где более подробно рассматривается вставка одной или двух конкретных страниц ... должна изменять расположение абзацев, в которых она встречается.
DG 1,1тыс. задал вопрос окт 9, 2023
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Every day they continued to meet together in the temple courts. They broke bread in their homes and ate together with glad and sincere hearts, praising God and enjoying the favor of all the people. And the Lord added to their number daily those who were being saved.
Acts 2:46-47
3,064 вопросов
6,024 ответов
5,695 комментариев
2,036 пользователей