Subject: Re: [PATCH 3/3] gitk: Allow displaying time zones from author and commit timestamps

From: Jakub Narebski <[email-masked]>
Date: Sun, 29 May 2011 22:35:08 -0700 (PDT)

Anders Kaseorg <[email-masked]> writes:
> On Sun, 29 May 2011, Paul Mackerras wrote:

> > > @@ -11018,7 +11018,18 @@ proc prefsok {} {
> > >  proc formatdate {d} {
> > >      global datetimeformat
> > >      if {$d ne {}} {
> > > -	set d [clock format [lindex $d 0] -format $datetimeformat]
> > > +	if {[string match {*%[zZ]*} $datetimeformat]} {
> > > +	    if {[catch {set d [clock format [lindex $d 0] -timezone [lindex $d 1] -format $datetimeformat]}]} {
> > > +		# Tcl < 8.5 does not support -timezone.
> > > +		global env
> > > +		set zone [lindex $d 1]
> > > +		set env(TZ) "IDK[string range $zone 0 2]:[string range $zone 3 end]"
> > 
> > What is this about?  Where is the IDK prefix for timezones defined or
> > described?
> 
> Yeah, sorry, that deserved a bit more explanation.  This is a kludge to 
> get Tcl 8.4 to format dates in the right timezone.  IDK is an arbitrary 
> made up 3-letter code (“I Don’t Know”), since a UTC offset can’t generally 
> be converted into a zone name.  The format of TZ is described at:
> http://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html
> http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html
> 
> Actually, reading that again, I just realized that I need to invert the 
> sign.  Also that it can be longer than 3 letters; I’ll use “Unknown” 
> instead.

Why not use UTC+N timezone (note: please check of for +HHMM it is
UTC+HH or UTC-HH) for timezone with given numeric offset from
Coordinated Universal Time?

BTW. UTC because http://www.nist.gov/pml/div688/utcnist.cfm#cut
-- 
Jakub Narebski
Poland
ShadeHawk on #git