comparison lisp/uniquify.el @ 27686:888000b8e8b6

(toplevel): Require CL at compile time. (uniquify-push): Removed.
author Gerd Moellmann <gerd@gnu.org>
date Sat, 12 Feb 2000 19:48:01 +0000
parents 465ff99f6dd2
children 32c5f03d36c9
comparison
equal deleted inserted replaced
27685:15ad3fb709f8 27686:888000b8e8b6
83 83
84 84
85 ;;; Code: 85 ;;; Code:
86 86
87 (provide 'uniquify) 87 (provide 'uniquify)
88 (eval-when-compile (require 'cl))
88 89
89 ;;; User-visible variables 90 ;;; User-visible variables
90 91
91 (defgroup uniquify nil 92 (defgroup uniquify nil
92 "Unique buffer names dependent on file name" 93 "Unique buffer names dependent on file name"
156 :type 'boolean 157 :type 'boolean
157 :group 'uniquify) 158 :group 'uniquify)
158 159
159 160
160 ;;; Utilities 161 ;;; Utilities
161
162 (defmacro uniquify-push (item list)
163 `(setq ,list (cons ,item ,list)))
164 162
165 ;; For directories, return the last component, not the empty string. 163 ;; For directories, return the last component, not the empty string.
166 (defun uniquify-file-name-nondirectory (file-name) 164 (defun uniquify-file-name-nondirectory (file-name)
167 (file-name-nondirectory (directory-file-name file-name))) 165 (file-name-nondirectory (directory-file-name file-name)))
168 166
211 (buffer-name buffer)))) 209 (buffer-name buffer))))
212 (or (not newbuffile) 210 (or (not newbuffile)
213 (equal rawname 211 (equal rawname
214 (uniquify-file-name-nondirectory newbuffile)))))) 212 (uniquify-file-name-nondirectory newbuffile))))))
215 (if deserving 213 (if deserving
216 (uniquify-push (list rawname bfn buffer nil) fix-list) 214 (push (list rawname bfn buffer nil) fix-list)
217 (uniquify-push (list (buffer-name buffer)) 215 (push (list (buffer-name buffer))
218 uniquify-non-file-buffer-names))) 216 uniquify-non-file-buffer-names)))
219 (setq buffers (cdr buffers)))) 217 (setq buffers (cdr buffers))))
220 ;; selects buffers whose names may need changing, and others that 218 ;; selects buffers whose names may need changing, and others that
221 ;; may conflict. 219 ;; may conflict.
222 (setq fix-list 220 (setq fix-list
223 (sort fix-list 'uniquify-fix-item-filename-lessp)) 221 (sort fix-list 'uniquify-fix-item-filename-lessp))
271 (if (not (equal proposed-name old-name)) 269 (if (not (equal proposed-name old-name))
272 (progn 270 (progn
273 (uniquify-rationalize-conflicting-sublist 271 (uniquify-rationalize-conflicting-sublist
274 conflicting-sublist old-name depth) 272 conflicting-sublist old-name depth)
275 (setq conflicting-sublist nil))) 273 (setq conflicting-sublist nil)))
276 (uniquify-push item conflicting-sublist) 274 (push item conflicting-sublist)
277 (setq old-name proposed-name)) 275 (setq old-name proposed-name))
278 (setq fix-list (cdr fix-list))) 276 (setq fix-list (cdr fix-list)))
279 (uniquify-rationalize-conflicting-sublist 277 (uniquify-rationalize-conflicting-sublist
280 conflicting-sublist old-name depth))) 278 conflicting-sublist old-name depth)))
281 279