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

В нашем проекте мы иногда вставляем одно-два слова на национальном языке (кхмерском) в сноску или запись словаря, и нам нужно разметить их для предпечатной обработки. Мы определили маркер \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 очков) | 818 просмотров

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 ответов 929 просмотров
Недавно я сообщил разработчикам, что в версии 9.1 (в отличие от 8 или 9.0) строки регулярно переносятся ... у Microsoft? Если да, надеюсь, разработчики пересмотрят этот выбор.
viverechristus 296 задал вопрос дек 31, 2020
0 голосов
1 ответ 363 просмотров
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 ответ 46 просмотров
Я хотел бы сделать что-то вроде следующего в своём локальном 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 ответов 177 просмотров
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.
Very truly I tell you, whoever accepts anyone I send accepts me; and whoever accepts me accepts the one who sent me.
John 13:20
3,047 вопросов
6,007 ответов
5,672 комментариев
2,027 пользователей