
Вероятно, дубликат, но...
...существуют ли примитивы дляобнаружениетекущее направление набора текста в указанных движках на базе e-TeX?
Я знаю, что настройка \TeXXeTstate
> 0 \beginR, \beginL, \endR, \endL
позволяетпараметрнаправление, и что pkg bidi
предоставляет условные операторы для этой цели. Однако bidi
не может использоваться с pdftex
.
решение1
Сделать это невозможно, поскольку, в отличие от модели omega/luatex, направление не является свойством набора списка (ящика), есть только узлы, которые изменяют состояние направления при обнаружении.
это означает, что направление может быть неизвестно во время выполнения макросов tex, фактически один и тот же текст может быть задан в любом направлении.
\documentclass{article}
\newbox\foo
\TeXXeTstate=1
\begin{document}
\sbox\foo{hello world}
\beginR \usebox\foo \endR
\usebox\foo
\end{document}
производит
hello world
Здесь представлен всего лишь простой текст, но это могут быть произвольно сложные макросы, проверяющие любые условные операторы, ни один из которых не будет повторно выполнен при отображении текста в другом направлении.