Настройте список справа налево в контексте

Настройте список справа налево в контексте

Как использовать параметры 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

В вашем коде есть две ошибки:

  1. Ключевое слово — columns, а не столбец;
  2. вам придется разделять ключевые слова и задания (этот вариант является классическим в списке рассылки).

Итак, ваша вторая группа предметов должна начинаться так:

\startitemize [s,columns,three] [margin=1em]

Связанный контент