![Настройте список справа налево в контексте](https://rvso.com/image/328443/%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%82%D0%B5%20%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA%20%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%B0%20%D0%BD%D0%B0%D0%BB%D0%B5%D0%B2%D0%BE%20%D0%B2%20%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%B5.png)
Как использовать параметры margin
и column
список справа налево (на арабском языке)?
Я определил новое перечисление ..., أ , ب
для моего списка справа налево, но если я добавлю или любую другую опцию для среды itemize , то вместо определенной мной метки mergin
я получу .bullet
МВЭ
\setuppapersize[A4]
\mainlanguage[arabic]
\setupdirections[bidi=global]
\setupalign[r2l]
\definefontfeature
[arabic]
[mode=node,language=dflt,script=arab,
init=yes,medi=yes,fina=yes,isol=yes,
liga=yes,dlig=yes,rlig=yes,tlig=yes,
calt=yes,trep=yes,clig=yes,
mark=yes,mkmk=yes,kern=yes,curs=yes]
\starttypescript [serif] [arabic]
\definefontsynonym [Arabic] [name:Amiri] [features=arabic]
\stoptypescript
\starttypescript [serif] [arabic] [name]
\usetypescript[serif][fallback]
\definefontsynonym [Serif][Arabic][features=arabic]
\stoptypescript
\starttypescript [Arabic]
\definetypeface [Arabic] [rm] [serif] [arabic] [default]
\definetypeface [Arabic] [mm] [math] [palatino] [default]
\stoptypescript
\setuplayout[
grid=min,
backspace=20mm, width=170mm,
topspace=10mm, height=275mm,
header=10mm,footer=10mm,
footerdistance=0.5mm
]
\setuppagenumbering[
state=none,
]
\setupbodyfont[Arabic,18pt]
\setupinterlinespace[line=30pt]
\def\arabiclabel#1%
{\ifcase#1 \or أ\or ب\or ج\or د\or ه\or
و\or ي\else
\expandafter\arabiclabel\expandafter{\the\numexpr#1-7\relax}\fi}
\defineconversion[s][\arabiclabel]
\starttext
\startitemize[s]
\item
كلمة
\item
كلمة
\item
كلمة
\stopitemize
\startitemize[s,margin=1em,columnn,three]
\item
كلمة
\item
كلمة
\item
كلمة
\stopitemize
\stoptext
Выход
Обратите внимание, что столбцы справа налево должны начинаться от правого края к левому краю.
решение1
Существует два способа настройки версий столбцов детализации в средах с направлением письма справа налево. (Это работает в бета-версии, и я не знаю о стабильной версии из TeXlive 2015. В любом случае, бета-версия скоро появится в TeXlive 2016.)
Первый подход заключается в изменении поведения для всех пунктов в вашем документе, что удобно в документах с письмом справа налево. Просто добавьте следующее в преамбулу.
\setupmixedcolumns[itemgroupcolumns][direction=reverse]
Второй подход — изменить направление для отдельных подробных описаний. Здесь вам лучше быть осторожным, как указано в другом ответе, что ключевые слова и назначения должны быть разделены. Посмотрите на пример ниже, использующий второй подход.
\setupalign[r2l]
\starttext
\startitemize[n,columns,three][direction=reverse]
\item One
\item Two
\item Three
\item Four
\item Five
\item Six
\item Seven
\stopitemize
\stoptext
На самом деле в CONTEXT есть два столбца детализации. Один из них — тот, который вы использовали, а другой — горизонтальный. Если предположить, что два столбца и более двух элементов, первый метод помещает второй элемент на вторую строку, тогда как второй метод помещает второй элемент на первую строку после первого элемента. (Это полезно, например, в некоторых вопросах с множественным выбором.)
Чтобы использовать горизонтальный метод с направлением письма справа налево, попробуйте сделать следующее.
\startitemize[n,horizontal,two][direction=reverse]
\startitem One \stopitem
\startitem Two \stopitem
\startitem Three \stopitem
\startitem Four \stopitem
\stopitemize
Еще один момент: в текущей бета-версии вы можете использовать \abjadnumerals
и \arabicnumerals
(которые создают нумерацию, которая вам, кажется, нравится), в дополнение к макросам \arabicdecimals
(и \persiandecimals
) или соответствующим клавишам, которые создают индийские цифры. Несколько похожих методов нумерации определены в core-con.mkiv
.
решение2
В вашем коде есть две ошибки:
- Ключевое слово —
columns
, а не столбец; - вам придется разделять ключевые слова и задания (этот вариант является классическим в списке рассылки).
Итак, ваша вторая группа предметов должна начинаться так:
\startitemize [s,columns,three] [margin=1em]