changeset 20452:d56e496c7790

(dired-move-to-filename-regexp): Fix the problem with misparsing `-r--r--r-- 1 may 1997' by requiring a digit before the date. (dired-move-to-filename-regexp): Allow any month name of 2 letters or more.
author Paul Eggert <eggert@twinsun.com>
date Thu, 11 Dec 1997 06:58:17 +0000
parents 93652fd3234d
children a68e24bdc522
files lisp/dired.el
diffstat 1 files changed, 10 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/dired.el	Wed Dec 10 11:24:33 1997 +0000
+++ b/lisp/dired.el	Thu Dec 11 06:58:17 1997 +0000
@@ -1352,10 +1352,10 @@
 
 (defvar dired-move-to-filename-regexp
   (let* ((l "[A-Za-z\xa0-\xff]")
-	 ;; Letter or space.
-	 (ls "[ A-Za-z\xa0-\xff]")
-	 (month (concat l l "\\(" ls "\\|" l l "\\)"))
-	 ;; Recognize any non-ASCII character.  
+	 ;; In some locales, month abbreviations are as short as 2 letters,
+	 ;; and they can be padded on the right with spaces.
+	 (month (concat l l "+ *"))
+	 ;; Recognize any non-ISO-8859 character.  
 	 ;; The purpose is to match a Kanji character.
 	 (k "[^\x00-\xff]")
 	 (s " ")
@@ -1365,9 +1365,12 @@
 	 (HH:MM "[ 0-2][0-9]:[0-5][0-9]")
 	 (western (concat "\\(" month s dd "\\|" dd s month "\\)"
 			  s "\\(" HH:MM "\\|" s yyyy "\\)"))
-	 (japanese (concat mm k " " dd k s "\\(" s HH:MM "\\|" yyyy k "\\)")))
-    (concat s "\\(" western "\\|" japanese "\\)" s))
-  "Regular expression to match a date and time in a directory listing.
+	 (japanese (concat mm k s dd k s "\\(" s HH:MM "\\|" yyyy k "\\)")))
+	 ;; Require 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
+    (concat "[0-9]" s "\\(" western "\\|" japanese "\\)" s))
+  "Regular expression to match up to the file name in a directory listing.
 The default value is designed to recognize dates and times
 regardless of the language.")