create new tag
view all tags


Display date and time with formatting options and localized dates


This plugin is an extension of the TWiki variable GMTIME{"format"} (that only allows to show the current date and time).
DateTimePlugin lets you show any date and time before or after 'now', and it will return any part of a date such as the month name.

With DateTimePlugin you can write:
In five days will be: %DATETIME{incdays="5"}% and will have a always coherent phrase.

Date and time are displayed in the local time zone because of the way {DisplayTimeValues} configuration parameter is set. There is no way to specify a time zone in which date and time are displayed.

Syntax Rules

Use %DATETIME{}% to show the current date and time in default date format (as set in configure).

For more options use: %DATETIME{"format" <optional parameters>}%


Parameter Description Example
"..." or format="..." Format of date string; see GMTIME{"format"} for formatting variables %DATETIME{"$wday"}%
date="..." Any date in one of the following formats:

Default TWiki format
    31 Dec 2001 - 23:59

TWiki format without time (defaults to 00:00)
    31 Dec 2001

Date seperated by '/', '.' or '-', time with '.' or ':'
Date and time separated by ' ', '.' and/or '-'
    2001/12/31 23:59:59
    2001/12/31 23:59
    2001-12-31 23:59
    2001-12-31 - 23:59

ISO format
ISO dates may have a timezone specifier, either Z or a signed difference in hh:mm format. For example:

In formats other than ISO, GMT time zone is always assumed. This is incosistent with the fact that date and time are displayed in the local time zone.

Timestamp (seconds from the epoch)

Note: will not handle dates before 1970!
incdays="..." Increase the date by any number of days (may be a negative number) %DATETIME{date="31 Dec 2001" incdays="1"}%
inchours="..." Increase the date by any number of hours (may be a negative number) %DATETIME{date="31 Dec 2001 - 07:00" format="$hours" inchours="-1"}%
incminutes="..." Increase the date by any number of minutes (may be a negative number) %DATETIME{date="31 Dec 2001" format="$minutes" incminutes="15"}%
incseconds="..." Increase the date by any number of seconds (may be a negative number) %DATETIME{date="31 Dec 2001" format="$seconds" incseconds="20"}%
timezone="..." Specify the time zone in which the result is displayed. Please note that this parameter affects only display. It doesn't affect how the date parameter value is evaluated. As of July 2015, this papameter requires TWiki core downloaded from http://svn.twiki.org to work %DATETIME{"$hour:$min $tz" timezone="America/New_York"}%

Formatting parameters

See GMTIME{"format"} for general date and time formatting parameters to pass to format. DateTimePlugin supports the following additional paramters:

Parameter Description Example
$i_month The localized short name of the month. Ago
$lmonth The English long name of the month. July
$i_lmonth The localized long name of the month. Julho
$i_wday The summarized internationalized name of the day of the week. Qua
$lwday The English long name of the day of the week. Wednesday
$i_lwday The localized long name of the day of the week. Quarta-feira

Overview of all formatting variables

$seconds 07
$minutes 44
$hours 02
$day 19
$wday Fri
$i_wday Fri
$i_lwday Friday
$dow 5
$week 16
$month Apr
$mo 04
$i_month Apr
$i_lmonth April
$year 2024
$ye 24
$tz GMT
$iso 2024-04-19T02:44Z
$rcs 2024/04/19 02:44:07
$http Fri, 19 Apr 2024 02:44:07 GMT
$epoch 1713494647


Yesterday was %DATETIME{"$day $month $year" incdays="-1"}%

results in:

Yesterday was Thursday, 18 Apr 2024

One week from now is %DATETIME{"$wday, $day $month $year" incdays="7"}%

results in:

One week from now is Fri, 26 Apr 2024

To create time-based topics:

"Create TODO topic for tomorrow: [[ToDo$year$mo$day]] ($lwday, $day $lmonth)"

results in:

Create TODO topic for tomorrow: ToDo20240420 (Saturday, 20 April)


Due to date handling in Perl, DateTimePlugin cannot handle dates earlier than 1970.


Localized dates are read from configure.

Plugin Installation Instructions

Note: You do not need to install anything on your browser to use this plugin. The following instructions are for the administrator who installs the plugin on the server where TWiki is running.

  • Download the ZIP file from the Plugin web (see below)
  • Unzip DateTimePlugin.zip in your twiki installation directory. Content:
    File: Description:
    lib/TWiki/Plugins/DateTimePlugin.pm Plugin Perl module
    data/TWiki/DateTimePlugin.txt Plugin topic
    data/TWiki/VarDATETIME.txt Variable documentation topic
  • Visit configure in your TWiki installation, and enable the plugin in the {Plugins} section.

  • Debugging: Visit configure and set {DateTimePlugin}{Debug} to 1.

Plugin Info

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Display date and time with formatting options and localized dates

Plugin Author: TWiki:Main.AurelioAHeckert, TWiki:Main.ArthurClemens
Copyright: © 2004 TWiki:Main.AurelioAHeckert
© 2008 TWiki:Main.ArthurClemens
© 2008-2013 TWiki:Main.PeterThoeny
© 2004-2015 TWiki:TWiki.TWikiContributor
License: GPL (GNU General Public License)
Plugin Version: 2015-07-14
2015-07-14: TWikibug:Item7677: DATETIME{...} now takes the timezone parameter -- TWiki:Main.HideyoImazu
2015-05-18: TWikibug:Item7655: DATETIME{$epoch} does not take inc* into account -- TWiki:Main.HideyoImazu
2013-03-27: TWikibug:Item7473: DATETIME{...} showing time in the local time zone regardless of {DisplayTimeValues} -- TWiki:Main.HideyoImazu
2013-04-22: TWikibug:Item7123: Add twisty to installation instructions and history -- TWiki:Main.PeterThoeny
2013-04-22: TWikibug:Item7151: Change CALC to CALCULATE in DATETIME related links -- TWiki:Main.PeterThoeny
2012-11-12: TWikibug:Item7020: Categorize TWiki Variable -- TWiki:Main.PeterThoeny
2012-10-05: TWikibug:Item6947: Support unix timestamp for the input -- TWiki:Main.MahiroAndo
2011-05-14: TWikibug:Item6701: Small fix in Config.spec -- TWiki:Main.PeterThoeny
28 Feb 2008 1.0 Arthur Clemens: Major rewrite to make this plugin compatible with (and use from) TWiki::Time. Localized language strings are now read from configure.
27 Jul 2004 0.90 Aurelio A Heckert: First release
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.005
TWiki:Plugins.Benchmark: GoodStyle nn%, FormattedSearch nn%, DateTimePlugin nn%
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/DateTimePlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/DateTimePluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/DateTimePluginAppraisal

Related Topics: VarDATETIME, TWikiPlugins, DeveloperDocumentationCategory, UserDocumentationCategory

Edit | Attach | Watch | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r3 - 2015-07-14 - TWikiAdminUser
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding ZIVwiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.DateTimePlugin.