writing date with ordinal numbers (\enordinaldaynumber) in mkiv
![](https://secure.gravatar.com/avatar/6114858d84b0f40cf715f12237ab67a1.jpg?s=120&d=mm&r=g)
Hello, MKII contains a macro \enordinaldaynumber which I don't find in MKIV. My main question: how can I setup the date to display "23\high{rd} Sep, 2011"? Thank you, Mojca
![](https://secure.gravatar.com/avatar/93131e1e6e2204bd13501390d768dbdc.jpg?s=120&d=mm&r=g)
Am 28.09.2011 um 23:58 schrieb Mojca Miklavec:
Hello,
MKII contains a macro \enordinaldaynumber which I don't find in MKIV. My main question: how can I setup the date to display "23\high{rd} Sep, 2011"?
\starttext \currentdate[day+,space,month,space,year] \startlines \language[en]\ordinaldaynumber{1} \language[nl]\ordinaldaynumber{1} \language[fr]\ordinaldaynumber{1} \stoplines \stoptext Wolfgang
![](https://secure.gravatar.com/avatar/6114858d84b0f40cf715f12237ab67a1.jpg?s=120&d=mm&r=g)
On Thu, Sep 29, 2011 at 01:06, Wolfgang Schuster wrote:
Am 28.09.2011 um 23:58 schrieb Mojca Miklavec:
Hello,
MKII contains a macro \enordinaldaynumber which I don't find in MKIV. My main question: how can I setup the date to display "23\high{rd} Sep, 2011"?
\starttext
\currentdate[day+,space,month,space,year]
Interesting, thank you. I was looking at exactly the right page, but overlooked the +. And how do you print "Sep", "sep" and "SEP"? Wiki reference for \date lists \date[d=25,m=4,y=2008][day,~,{\monthshort\normalmonth},~,year] \par \date[d=25,m=4,y=2008][day,~,{\MONTHSHORT\normalmonth},~,year] but that doesn't work for me. Mojca
![](https://secure.gravatar.com/avatar/93131e1e6e2204bd13501390d768dbdc.jpg?s=120&d=mm&r=g)
Am 29.09.2011 um 13:22 schrieb Mojca Miklavec:
On Thu, Sep 29, 2011 at 01:06, Wolfgang Schuster wrote:
Am 28.09.2011 um 23:58 schrieb Mojca Miklavec:
Hello,
MKII contains a macro \enordinaldaynumber which I don't find in MKIV. My main question: how can I setup the date to display "23\high{rd} Sep, 2011"?
\starttext
\currentdate[day+,space,month,space,year]
Interesting, thank you. I was looking at exactly the right page, but overlooked the +. And how do you print "Sep", "sep" and "SEP"? Wiki reference for \date lists \date[d=25,m=4,y=2008][day,~,{\monthshort\normalmonth},~,year] \par \date[d=25,m=4,y=2008][day,~,{\MONTHSHORT\normalmonth},~,year] but that doesn't work for me.
You can use “month:mnem” and “m:mnem” for the abbreviations of the months but there is a bug in core-con.lua function commands.currentdate(str,currentlanguage) -- j and jj obsolete local list = utilities.parsers.settings_to_array(str) local year, month, day = tex.year, tex.month, tex.day local auto = true for i=1,#list do local entry = list[i] local tag, plus = match(entry,"^([^%+:]+)(.*)$") local ordinal, mnemonic, whatordinal = false, false, nil if not tag then tag = entry - elseif plus == "+" or plus == "ord" then - ordinal = true - elseif plus == "mnem" then + elseif plus == "+" or plus == ":ord" then + ordinal = true + elseif plus == ":mnem" then mnemonic = true end ... end Even when you patch this you don’t get any output because context tries (in the example below) to use the label “August:mnem” but only the label “august:mnem” is defined. \starttext \date[d=1,m=8][day:ord,space,month,space,month:mnem] \starttabulate[|Tl|l|] \NC August \EQ \labeltext{August} \NC\NR \NC August:mnem \EQ \labeltext{August:mnem} \NC\NR \NC august:mnem \EQ \labeltext{august:mnem} \NC\NR \stoptabulate \stoptext Wolfgang
![](https://secure.gravatar.com/avatar/49e63acb01f2ca80efce7eed08310ce8.jpg?s=120&d=mm&r=g)
On 29-9-2011 13:49, Wolfgang Schuster wrote:
local tag, plus = match(entry,"^([^%+:]+)(.*)$")
"^([^%+:]+)[%+:]*(.*)$"
Even when you patch this you don’t get any output because context tries (in the example below) to use the label “August:mnem” but only the label “august:mnem” is defined.
\starttext
\date[d=1,m=8][day:ord,space,month,space,month:mnem]
\starttabulate[|Tl|l|] \NC August \EQ \labeltext{August} \NC\NR \NC August:mnem \EQ \labeltext{August:mnem} \NC\NR \NC august:mnem \EQ \labeltext{august:mnem} \NC\NR \stoptabulate
\stoptext
which makes me wonder ... in the past these v! were used instead of labels but it might make more sense now to lowercase the v! okay? ["august"]={ ["cs"]="srpen", ["de"]="August", -- august ["en"]="August", -- august ["fr"]="août", ["it"]="agosto", ["nl"]="augustus", ["pe"]="آگوست", ["ro"]="august", }, of course the labeltexts stay the same ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
![](https://secure.gravatar.com/avatar/93131e1e6e2204bd13501390d768dbdc.jpg?s=120&d=mm&r=g)
Am 01.10.2011 um 14:57 schrieb Hans Hagen:
On 29-9-2011 13:49, Wolfgang Schuster wrote:
Even when you patch this you don’t get any output because context tries (in the example below) to use the label “August:mnem” but only the label “august:mnem” is defined.
\starttext
\date[d=1,m=8][day:ord,space,month,space,month:mnem]
\starttabulate[|Tl|l|] \NC August \EQ \labeltext{August} \NC\NR \NC August:mnem \EQ \labeltext{August:mnem} \NC\NR \NC august:mnem \EQ \labeltext{august:mnem} \NC\NR \stoptabulate
\stoptext
which makes me wonder ... in the past these v! were used instead of labels but it might make more sense now to lowercase the v!
This explains why you use variables as keys in \setuplabeltext etc.
okay?
+1
of course the labeltexts stay the same
There is also a bug for the labels in the form “<month>:mnem” in lang-lab.lua function languages.labels.define() local variables = interfaces.variables local data = languages.data.labels local function define(command,list,prefixed) if list then context.pushcatcodes(prtcatcodes) -- context.unprotect for tag, data in next, list do if data.hidden then -- skip else for language, text in next, data.labels do if text == "" then -- skip elseif prefixed and rawget(variables,tag) then ... “rawget” checks if a variable “<month>:mnem” is defined but since this isn’t the case the label is defined as “\setuplabeltext[<lang>][<month>:mnem=<value>]” and not as “\setuplabeltext[<lang>][\v!<month>:mnem=<value>]” with the month as variable. Wolfgang
![](https://secure.gravatar.com/avatar/49e63acb01f2ca80efce7eed08310ce8.jpg?s=120&d=mm&r=g)
On 1-10-2011 15:14, Wolfgang Schuster wrote:
There is also a bug for the labels in the form “<month>:mnem” in lang-lab.lua
function languages.labels.define() local variables = interfaces.variables local data = languages.data.labels local function define(command,list,prefixed) if list then context.pushcatcodes(prtcatcodes) -- context.unprotect for tag, data in next, list do if data.hidden then -- skip else for language, text in next, data.labels do if text == "" then -- skip elseif prefixed and rawget(variables,tag) then
Ok, I now check both parts so best check the upcomming beta for it. Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
participants (3)
-
Hans Hagen
-
Mojca Miklavec
-
Wolfgang Schuster