bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

follow up to bug report with ls on redhat 9


From: joakim . verona
Subject: follow up to bug report with ls on redhat 9
Date: Mon, 19 May 2003 14:16:18 +0200 (GMT+02:00)

hello,

i tried fixing the bug in dired and found the real cause. it has nothing to do 
with the month names, but rather with that the swedish locale uses "." rather 
than ":"(at least on redhat, im unshure about the proper rules for swedish 
time).

i tried the code below in a scratch buffer and it works. 

all i did was add dot as a possibility for hour/minute separator.

hope this helps, please löet me know if you need additional information.


/joakim

(setq dired-move-to-filename-regexp
  (let* ((l "\\([A-Za-z]\\|[^\0-\177]\\)")
         ;; In some locales, month abbreviations are as short as 2 letters,
         ;; and they can be padded on the right with spaces.
         ;; weiand: changed: month ends potentially with . or , or .,
;;old    (month (concat l l "+ *"))
         (month (concat l l "+[.]?,? *"))
         ;; Recognize any non-ASCII character.
         ;; The purpose is to match a Kanji character.
         (k "[^\0-\177]")
         ;; (k "[^\x00-\x7f\x80-\xff]")
         (s " ")
         (yyyy "[0-9][0-9][0-9][0-9]")
         (mm "[ 0-1]?[0-9]")
;;old    (dd "[ 0-3][0-9]")
         (dd "[ 0-3][0-9][.]?")
         (HH:MM "[ 0-2][0-9][:\\.][0-5][0-9]")
         (seconds "[0-6][0-9]\\([.,][0-9]+\\)?")
         (zone "[-+][0-2][0-9][0-5][0-9]")
         (iso-mm-dd "[01][0-9]-[0-3][0-9]")
         (iso-time (concat HH:MM "\\(:" seconds "\\( ?" zone "\\)?\\)?"))
         (iso (concat "\\(\\(" yyyy "-\\)?" iso-mm-dd "[ T]" iso-time
                      "\\|" yyyy "-" iso-mm-dd " ?\\)"))
         (western (concat "\\(" month s dd "\\|" dd s month "\\)"
         ;; weiand: changed: year potentially unaligned
;;old                     s "\\(" HH:MM "\\|" s yyyy "\\|" yyyy s "\\)"))
                          s "\\(" HH:MM
                                  "\\|" yyyy s s "?"
                                  "\\|" s "?" yyyy
                             "\\)"))
         (japanese
          (concat mm k "?" s dd k "?" s "+"
                  "\\(" HH:MM "\\|" yyyy k "?" "\\)")))
         ;; The "[0-9]" below requires the previous column to end in a digit.
         ;; This avoids recognizing `1 may 1997' as a date in the line:
         ;; -r--r--r--   1 may      1997        1168 Oct 19 16:49 README
         ;; The "[kMGTPEZY]?" below supports "ls -alh" output.
         ;; The ".*" below finds the last match if there are multiple matches.
         ;; This avoids recognizing `jservice  10  1024' as a date in the line:
         ;; drwxr-xr-x  3 jservice  10  1024 Jul  2  1997 esg-host
    (concat ".*[0-9][kMGTPEZY]?" 
            s "\\(" western "\\|" japanese "\\|" iso "\\)" s))
)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]