From: Philipp Gesang <pgesang@ix.urz.uni-heidelberg.de>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Use date of the tex file in the document
Date: Fri, 25 Mar 2011 01:33:15 +0100 [thread overview]
Message-ID: <20110325003315.GA9720@aides> (raw)
In-Reply-To: <4D8BD420.1090007@wxs.nl>
[-- Attachment #1.1.1: Type: text/plain, Size: 2245 bytes --]
On 2011-03-25 <00:30:40>, Hans Hagen wrote:
> On 25-3-2011 12:08, Cecil Westerhof wrote:
>
> >I made the code a little better:
> >\startluacode
> > os.setlocale("nl_NL")
>
> blocked in mkiv to prevent unwanted side effects and that will stay
Still, one can access context’s language substitution tables to
achieve a quasilocale effect (concerning the month, that is).
(-> attachments.)
Good night all, Philipp
>
> > function modification_date(file, format)
> > local f = file
> > local attr = lfs.attributes(f)
>
> why the f?
>
> function modification_date(filename,format)
> local attr = lfs.attributes(filename)
> if type(attr) == "table" and attr.mode ~= "directory" then
> if format == "nice" then
> return os.date("%Y-%m-%dT%X",attr.modification) ..
> os.timezone(true)
> elseif format == "long" then
> return os.date("%d %B %Y %H:%M",attr.modification)
> else
> return os.date("%d %B %Y",attr.modification)
> end
> end
> return "<unset>"
> end
>
>
> print(modification_date("oeps.lua","nice"))
> print(modification_date("oeps.lua","long"))
>
> -----------------------------------------------------------------
> 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
> -----------------------------------------------------------------
> ___________________________________________________________________________________
> If your question is of interest to others as well, please add an entry to the Wiki!
>
> maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive : http://foundry.supelec.fr/projects/contextrev/
> wiki : http://contextgarden.net
> ___________________________________________________________________________________
--
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - against proprietary attachments
[-- Attachment #1.1.2: somefile.tex --]
[-- Type: text/x-tex, Size: 527 bytes --]
\ctxloadluafile{getdate}
\def\getdate
{\dosingleempty\dogetdate}
\def\dogetdate[#1]%
{\ctxlua{context(documentdata.modification_date("\jobname.tex", "#1"))}}
\def\Testall{%
\starttabulate[|r|l|]
\NC nice \NC {\os\getdate[nice]} \AR
\NC long \NC {\os\getdate[long]} \AR
\NC plain \NC {\os\getdate} \AR
\stoptabulate
\hairline%
}
\starttext
\Testall
\language[de]
\Testall
\language[nl]
\Testall
\language[it]
\Testall
\language[no]
\Testall
\stoptext
[-- Attachment #1.1.3: getdate.lua --]
[-- Type: text/plain, Size: 1125 bytes --]
#!/usr/bin/env texlua
local ldl_texts = languages.data.labels.texts
local u = utf
local function localize_it (str, lang)
local current_language = lang or languages.current(tex.language)
return ldl_texts[u.lower(str)].labels[current_language]
end
local function modification_date (filename, format)
local attr = lfs.attributes(filename)
if type(attr) == "table" and attr.mode ~= "directory" then
if format == "nice" then
return os.date("%Y-%m-%dT%X",attr.modification) .. os.timezone(true)
elseif format == "long" then
local tmp = string.explode(os.date("%d %B %Y %H:%M",attr.modification), " ")
local day, month, year, time = table.unpack(tmp)
return day .. ". " .. localize_it(month) .. " " .. year .. " " .. time
else
local tmp = string.explode(os.date("%d %B %Y",attr.modification), " ")
local day, month, year = table.unpack(tmp)
return day .. ". " .. localize_it(month) .. " " .. year
end
end
return "<unset>"
end
documentdata.modification_date = modification_date
[-- Attachment #1.2: Type: application/pgp-signature, Size: 198 bytes --]
[-- Attachment #2: Type: text/plain, Size: 486 bytes --]
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________
next prev parent reply other threads:[~2011-03-25 0:33 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-24 9:26 Cecil Westerhof
2011-03-24 10:22 ` Philipp Gesang
2011-03-24 10:56 ` Cecil Westerhof
2011-03-24 11:00 ` Marco
2011-03-24 16:09 ` Cecil Westerhof
2011-03-24 16:12 ` Aditya Mahajan
2011-03-24 16:29 ` Cecil Westerhof
2011-03-24 16:33 ` Wolfgang Schuster
2011-03-24 17:15 ` Cecil Westerhof
2011-03-24 17:29 ` Philipp Gesang
2011-03-24 17:42 ` Cecil Westerhof
2011-03-24 17:50 ` Philipp Gesang
2011-03-24 20:41 ` Cecil Westerhof
2011-03-24 23:08 ` Cecil Westerhof
2011-03-24 23:30 ` Hans Hagen
2011-03-25 0:33 ` Philipp Gesang [this message]
2011-03-24 17:30 ` Marco
2011-03-24 18:35 ` Hans Hagen
2011-03-24 17:42 ` Florian Wobbe
2011-03-24 17:47 ` Aditya Mahajan
2011-03-24 17:59 ` Florian Wobbe
2011-03-24 20:49 ` Aditya Mahajan
2011-03-24 21:43 ` Florian Wobbe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110325003315.GA9720@aides \
--to=pgesang@ix.urz.uni-heidelberg.de \
--cc=ntg-context@ntg.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).