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

2014-06-14 Thread Paul Mackerras
On Mon, May 12, 2014 at 07:25:58AM -0400, Anders Kaseorg wrote:
> Now gitk can be configured to display author and commit dates in their
> original timezone, by putting %z into datetimeformat in ~/.gitk.
> 
> Signed-off-by: Anders Kaseorg 

Thanks, applied.

Paul.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] gitk: Allow displaying time zones from author and commit timestamps

2014-05-12 Thread Anders Kaseorg
Now gitk can be configured to display author and commit dates in their
original timezone, by putting %z into datetimeformat in ~/.gitk.

Signed-off-by: Anders Kaseorg 
---
Re-sending from 2011:
http://thread.gmane.org/gmane.comp.version-control.git/165286/focus=174786

 gitk | 24 +++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/gitk b/gitk
index 90764e8..b4712cd 100755
--- a/gitk
+++ b/gitk
@@ -11575,7 +11575,29 @@ proc prefsok {} {
 proc formatdate {d} {
 global datetimeformat
 if {$d ne {}} {
-   set d [clock format [lindex $d 0] -format $datetimeformat]
+   # If $datetimeformat includes a timezone, display in the
+   # timezone of the argument.  Otherwise, display in local time.
+   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.  Emulate it by
+   # setting TZ (e.g. TZ=<-0430>+04:30).
+   global env
+   if {[info exists env(TZ)]} {
+   set savedTZ $env(TZ)
+   }
+   set zone [lindex $d 1]
+   set sign [string map {+ - - +} [string index $zone 0]]
+   set env(TZ) <$zone>$sign[string range $zone 1 2]:[string range 
$zone 3 4]
+   set d [clock format [lindex $d 0] -format $datetimeformat]
+   if {[info exists savedTZ]} {
+   set env(TZ) $savedTZ
+   } else {
+   unset env(TZ)
+   }
+   }
+   } else {
+   set d [clock format [lindex $d 0] -format $datetimeformat]
+   }
 }
 return $d
 }
-- 
2.0.0.rc3

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html