文脈に応じて月名を変更する方法

文脈に応じて月名を変更する方法

コンテキスト内で月の名前を変更したいのですが、Texでは\month月番号を定義し、月の名前は次のように再定義できます。\ifcase \todayコマンドで月名を変更する

コンテキスト内で同じこと (\dateコマンドで表示される月の名前の変更)を実行するにはどうすればよいでしょうか\month。コンテキスト内では使用不可として表示されます。

アップデート

MWEはこちら

\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-Regular] [name:Amiri] [features=arabic]
  \definefontsynonym [Arabic-Bold] [name:Amiri] [features=arabic]
\stoptypescript

\starttypescript [serif] [arabic] [name]
 \usetypescript[serif][fallback]
 \definefontsynonym [Serif]     [Arabic-Regular] [features=arabic]
 \definefontsynonym [SerifBold] [Arabic-Bold]    [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,
  headerdistance=2mm
  ]

\setupbodyfont[Arabic,18pt]
\setupinterlinespace[line=30pt]

\starttext

\date

\stoptext 

答え1

ドキュメントのメイン言語を変更したくない場合は( を使用して\mainlanguage[…])、次のように月を再定義できます\setuplabeltext

\setuplabeltext
  %% [en]  %% for a language specific setting
  [january=J,
   february=F]

さらに、 で使用される日付形式を変更する場合は\date、次のようにします\setuplanguage

\setuplanguage
  %% [en]  %% for a language specific setting
  [date={year, \thinspace–\thinspace, mm, \thinspace–\thinspace, dd}]

関連情報