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

В нашем проекте мы иногда вставляем одно-два слова на национальном языке (кхмерском) в сноску или запись словаря, и нам нужно разметить их для предпечатной обработки. Мы определили маркер \zkh (используя пространство имён \z определённое в USFM 3.0) и добавили следующее в custom.sty:

\Marker zkh
\Endmarker zkh*
\Name zkh...zkh* - Special Text - Khmer Language Text
\Description For Khmer Language text
\OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 io io1 io2 io3 io4 ms ms1 ms2 s s1 s2 s3 s4 cd sp d lh li li1 li2 li3 li4 lf lim lim1 lim2 lim3 lim4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr po q q1 q2 q3 q4 qc qr qd qm qm1 qm2 qm3 tr th1 th2 th3 th4 thr1 thr2 thr3 thr4 tc1 tc2 tc3 tc4 tcr1 tcr2 tcr3 tcr4 f fe NEST

К сожалению, я не вижу, как использовать это в Paratext 9. Если я нахожусь в стандартном представлении (Standard view) и начинаю вводить маркер (набирая слэш), появляется контекстное меню, и оно не позволяет мне ввести «z». На самом деле, оно позволяет ввести его, но если я нажму Enter, ничего не произойдёт — маркер не может попасть в текст.

image

Есть ли какой-нибудь способ обойти это?

Спасибо!

Переведено машиной с языка English
Paratext от (296 очков) | 810 просмотров

3 Ответов

0 голосов
Лучший ответ

viverechristus,

Когда вы вводите маркер в окне, вы можете нажать пробел, чтобы принять маркер. Нажатие Enter работает только в том случае, если маркер является допустимым маркером для данного списка. Например, если вы нажмёте \, отобразятся стили символов. Если вы попытаетесь ввести \p и нажмёте Enter, ничего не произойдёт (или вы получите что-то вроде \pn). Но если вы нажмёте \p и затем пробел, будет добавлен маркер абзаца. В вашем случае, если вы нажмёте \zkh и затем пробел, должен быть добавлен правильный маркер.

Обратите внимание, что если вы выделите слово (или слова) перед нажатием \, то вокруг выделенного слова (слов) должны быть добавлены открывающий и закрывающий маркеры.

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

Спасибо. Я должен был знать это и раньше, и я рад, что теперь знаю.

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

Спасибо за это. Очень приятно узнать об этой особенности PT. Но я думаю, что это не очень интуитивно понятно, когда PT обрабатывает \marker< Enter > иначе, чем \marker< Space >. (Старые программы SF, такие как Shoebox и Toolbox, обрабатывали их одинаково.)

Смущение viverechristus показывает, что он тоже сочёл странным/фрустрирующим тот факт, что нажатие < Enter > не делало ничего.

Так есть ли какое-то преимущество в этом различном поведении, которое я просто не вижу?

Для меня либо только < Space > должен закрывать диалог маркера, а < Enter > никогда не должен закрывать его, или лучше, PT должен просто обрабатывать \marker< Enter > так же, как \marker< Space >, закрывая диалог и вставляя маркер SF. (Если только нет действительно хорошей причины делать это различие.)

Потому что я считаю, что обычные пользователи не будут помнить такое различие (если они вообще знали о нём). Они просто предполагают, что что-то сломали, когда программа ведёт себя не так, как они ожидали.

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

Вы правы, что это кажется немного странным. Вот что я понимаю. Независимо от контекста добавления маркера, вы всегда можете завершить его с помощью пробела. Так что ввод \p и пробела добавит маркер абзаца. Это, конечно, то поведение, которое вы видите, если вы находитесь в представлении без форматирования (Unformatted view).

Проблема с клавишей Enter в том, что когда вы находитесь в стандартном представлении (Standard view) и используете инструмент выбора маркеров, клавиша Enter работает только в том случае, если маркер действительно присутствует в инструменте в этот момент. Нажатие клавиши \ отобразит стили символов, которые в данный момент доступны на основе usfm.sty и custom.sty (и frtbak.sty для других книг). Так что, если я нажму \ p, я никогда не увижу только вариант \p. Я увижу такие вещи, как \pn. Если я введу \p, а затем нажму Enter, я на самом деле выберу один из доступных маркеров символов. Однако, из-за природы пробела с маркерами, если я нажму пробел после ввода p, я на самом деле получу нужный мне маркер.

Для маркеров абзацев я обычно нажимаю Enter, а затем ввожу код маркера. Так что, если я нажму Enter p, я увижу вариант \p, и когда я снова нажму Enter, я получу этот маркер.

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

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

Просто чтобы быть абсолютно ясным. И Enter, и Space завершают маркер, который визуально присутствует в окне маркеров. Если маркер не присутствует в окне (когда вы вводите маркер, в поле ниже ничего не видно), тогда нажатие Enter ничего не сделает. Нажатие Space добавит этот маркер (даже если это недопустимый маркер).

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

Да, это было абсолютно ясно. Моя точка зрения в том, что это не интуитивно понятно. Если нам приходится объяснять что-то с мелочами, то маловероятно, что это когда-либо будет ясно обычному пользователю. Нет, нам не обязательно менять это. Но если мы стремимся минимизировать путаницу, то < Enter > никогда не должен ничего делать. Потому что сейчас < Enter > ведёт себя как ESC в этой ситуации – и это контринтуитивно.

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

Это раскрыло тайну выбора книг Библии из выпадающего списка на панели инструментов. Меня регулярно раздражает, когда я ввожу, скажем, «ru», и в списке остаётся только «RUT», но я нажимаю Enter, и ничего не происходит. Я вижу, что если я нажму пробел, я получу RUT, и выбор номера главы становится активным. Я также замечаю, что когда Enter работает, он не перемещает меня к выбору главы, а вместо этого переходит к той главе и стиху, которые уже заполнены.

Кстати, после нажатия Enter (и успешного перехода к нужной книге), название книги (аббревиатура) остаётся выделенным синим цветом, хотя курсор теперь активен в newly selected book (в данном случае, Иона 1:1):

image

Неоднократно я предполагал, что мой выбор не удался, и я пытался ввести название книги снова, только чтобы обнаружить, что я ввожу бессмыслицу в стих. Для меня это потенциально серьёзная проблема, потому что это может привести к непреднамеренным и очень редко замеченным правкам в стихах. Синее выделение должно означать только «готово для выбора», а не «уже выбрано».

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

ИМЕННО ЭТО.
Я тоже часто находил ложные буквы или цифры в первом стихе книг, потому что пользователь думал, что он печатает в поле книги или главы, тогда как на самом деле курсор был активен в тексте стиха. Ужас.

Это поведение запутанно и опасно, как указывает viverechristus. И хотя это «мелочь» и может быть больно исправить в программном обеспечении, это достаточно опасно, что теперь об этом упомянули 2 человека. Так что я уверен, что есть и другие.

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

Да, я часто видел, как случайно добавлялись лишние цифры.

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

Я думаю, проблема в том, что вы не указали тип для вашего пользовательского маркера. Если тип отсутствует, Paratext предполагает, что это стиль абзаца.
Попробуйте добавить следующую строку в определение маркера в вашем файле custom.sty:
\StyleType Character

Переведено машиной с языка English
от [Expert]
(16,7тыс. очков)

Спасибо. Указание StyleType позволило добавить маркер в инструмент контекстного выбора.

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

Кстати, где я могу найти документацию по допустимым определениям таблиц стилей?

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

Одно из решений — посмотреть (не редактировать) файл usfm.sty, чтобы увидеть, как определяются стили. Другое, на что стоит посмотреть, — тема справки «Как мне реализовать пользовательскую таблицу стилей для моего проекта?».

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

Спасибо, anon848905.

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

Я только что сообщил об этом как PTXS-23210. Если другие видели эту проблему, возможно, вы могли бы тоже сообщить о ней.

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

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

0 голосов
2 ответов 923 просмотров
Недавно я сообщил разработчикам, что в версии 9.1 (в отличие от 8 или 9.0) строки регулярно переносятся ... у Microsoft? Если да, надеюсь, разработчики пересмотрят этот выбор.
viverechristus 296 задал вопрос дек 31, 2020
0 голосов
1 ответ 358 просмотров
A user is using the Khmer script for their project. They are using the Khmer Mondulkiri font. In the project text ... of how it looks in PrintDraft, U+17C9 incorrectly above letter
[Expert]
sewhite
3,3тыс.
задал вопрос апр 27, 2015
0 голосов
1 ответ 43 просмотров
Я хотел бы сделать что-то вроде следующего в своём локальном FRT, но не могу найти достаточно документации, чтобы ... быть возможно, но без примеров трудно понять, что делать.
mvk1000 206 задал вопрос май 20
0 голосов
2 ответов 350 просмотров
I have a colleague who is being frustrated with the English interlinearizing of the Greet NT source text in Paratext ... copyright restrictions. But I thought it was worth asking.
anon703820 222 задал вопрос янв 31, 2018
0 голосов
0 ответов 176 просмотров
If you choose not to use the Internet server for Paratext Live, the Paratext Live server would normally be the computer ... -do-i-start-a-local-dedicated-paratext-live-server/471)
[Expert]
anon421222
735
задал вопрос фев 23, 2017
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Accept the one whose faith is weak, without quarreling over disputable matters.
Romans 14:1
3,045 вопросов
6,005 ответов
5,671 комментариев
2,026 пользователей