GNU bug report logs - #41201
26.1; tar-mode-show-date prints middle-endian dates despite TIME_STYLE=long-iso

Previous Next

Package: emacs;

Reported by: trentbuck <at> gmail.com (Trent W. Buck)

Date: Tue, 12 May 2020 04:41:02 UTC

Severity: normal

Found in version 26.1

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: trentbuck <at> gmail.com (Trent W. Buck)
To: bug-gnu-emacs <at> gnu.org
Subject: 26.1; tar-mode-show-date prints middle-endian dates despite
 TIME_STYLE=long-iso
Date: Tue, 12 May 2020 14:40:02 +1000
This is a minor issue.

Middle-endian ("US style") dates confuse me.
I set TIME_STYLE=long-iso so I won't have to deal with them.
This works for GNU ls and GNU tar:

    bash5$ touch x; ls -l x; tar cf x.tar x; tar tvf x.tar
    -rw-r--r-- 1 twb twb 0 2020-05-12 14:32 x
    -rw-r--r-- twb/twb           0 2020-05-12 14:32 x

This doesn't work for tar-mode, because
it processes tarballs using native elisp:

    bash5$ emacs -Q -eval '(setq-default tar-mode-show-date t)' x.tar
     -rw-r--r--     twb/twb           0 May 12 14:33 2020 x

The responsible code appears to be tar-clip-time-string which appears to
munge the output of CURRENT-TIME-STRING:

    (defun tar-clip-time-string (time)
      (let ((str (current-time-string time)))
        (concat " " (substring str 4 16) (format-time-string " %Y" time))))

Where CURRENT-TIME-STRING appears to be hard-coded to a format.
That format matches neither
GNU "date --rfc-email" (little-endian) nor
GNU "date --rfc-3339=seconds" (big-endian).

Surely emacs already supports locale-appropriate timestamps somewhere?
Please hook up tar-mode to use that code.

PS: see also "locale -k date_fmt", which these days seems to be the same
for me (en_AU.UTF-8) and the default (C.UTF-8), hence why I use TIME_STYLE.




This bug report was last modified 4 years and 262 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.