changeset 21620:611b5f660ee6

(ls-lisp-dired-ignore-case): New variable. (ls-lisp-handle-switches): Obey ls-lisp-dired-ignore-case.
author Geoff Voelker <voelker@cs.washington.edu>
date Fri, 17 Apr 1998 05:24:48 +0000
parents ed3990c73096
children 56d8224fe691
files lisp/ls-lisp.el
diffstat 1 files changed, 12 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ls-lisp.el	Fri Apr 17 05:24:27 1998 +0000
+++ b/lisp/ls-lisp.el	Fri Apr 17 05:24:48 1998 +0000
@@ -63,6 +63,9 @@
 This variable is checked by \\[insert-directory] only when `ls-lisp.el'
 package is used.")
 
+(defvar ls-lisp-dired-ignore-case nil
+  "Non-nil causes dired buffers to sort alphabetically regardless of case.")
+
 (defun insert-directory (file &optional switches wildcard full-directory-p)
   "Insert directory listing for FILE, formatted according to SWITCHES.
 Leaves point after the inserted text.
@@ -188,10 +191,15 @@
 			  (ls-lisp-time-lessp (nth index (cdr y))
 					      (nth index (cdr x))))))
 		      (t		; sorted alphabetically
-		       (function
-			(lambda (x y)
-			  (string-lessp (car x)
-					(car y)))))))))
+		       (if ls-lisp-dired-ignore-case
+			   (function
+			    (lambda (x y)
+			      (string-lessp (upcase (car x))
+					    (upcase (car y)))))
+			 (function
+			  (lambda (x y)
+			    (string-lessp (car x)
+					  (car y))))))))))
   (if (memq ?r switches)		; reverse sort order
       (setq file-alist (nreverse file-alist)))
   file-alist)