emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/lisp/uniquify.el


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/uniquify.el
Date: Wed, 07 May 2003 17:56:45 -0400

Index: emacs/lisp/uniquify.el
diff -c emacs/lisp/uniquify.el:1.46 emacs/lisp/uniquify.el:1.47
*** emacs/lisp/uniquify.el:1.46 Wed May  7 12:03:14 2003
--- emacs/lisp/uniquify.el      Wed May  7 17:56:43 2003
***************
*** 180,208 ****
  file name elements.
  Arguments NEWBUFFILE and NEWBUF cause only a subset of buffers to be renamed."
    (interactive)
!   (setq newbuffile (expand-file-name (directory-file-name newbuffile)))
!   (let ((fix-list nil)
!       (base (file-name-nondirectory newbuffile)))
!     (dolist (buffer (buffer-list))
!       (let ((bufname (buffer-name buffer))
!           bfn)
!       (when (and (not (and uniquify-ignore-buffers-re
!                            (string-match uniquify-ignore-buffers-re
!                                          bufname)))
!                  ;; Only try to rename buffers we actually manage.
!                  (or (buffer-local-value 'uniquify-managed buffer)
!                      (eq buffer newbuf))
!                  (setq bfn (if (eq buffer newbuf) newbuffile
!                              (uniquify-buffer-file-name buffer)))
!                  (equal (file-name-nondirectory bfn) base))
!         (when (setq bfn (file-name-directory bfn)) ;Strip off the `base'.
!           (setq bfn (directory-file-name bfn)))    ;Strip trailing slash.
!         (push (uniquify-make-item base bfn buffer
!                                   (uniquify-get-proposed-name base bfn))
!               fix-list))))
!     ;; selects buffers whose names may need changing, and others that
!     ;; may conflict, then bring conflicting names together
!     (uniquify-rationalize fix-list)))
  
  ;; uniquify's version of buffer-file-name; result never contains trailing 
slash
  (defun uniquify-buffer-file-name (buffer)
--- 180,210 ----
  file name elements.
  Arguments NEWBUFFILE and NEWBUF cause only a subset of buffers to be renamed."
    (interactive)
!   (if (null newbuffile)
!       (with-current-buffer newbuf (setq uniquify-managed nil))
!     (setq newbuffile (expand-file-name (directory-file-name newbuffile)))
!     (let ((fix-list nil)
!         (base (file-name-nondirectory newbuffile)))
!       (dolist (buffer (buffer-list))
!       (let ((bufname (buffer-name buffer))
!             bfn)
!         (when (and (not (and uniquify-ignore-buffers-re
!                              (string-match uniquify-ignore-buffers-re
!                                            bufname)))
!                    ;; Only try to rename buffers we actually manage.
!                    (or (buffer-local-value 'uniquify-managed buffer)
!                        (eq buffer newbuf))
!                    (setq bfn (if (eq buffer newbuf) newbuffile
!                                (uniquify-buffer-file-name buffer)))
!                    (equal (file-name-nondirectory bfn) base))
!           (when (setq bfn (file-name-directory bfn)) ;Strip off the `base'.
!             (setq bfn (directory-file-name bfn)))    ;Strip trailing slash.
!           (push (uniquify-make-item base bfn buffer
!                                     (uniquify-get-proposed-name base bfn))
!                 fix-list))))
!       ;; selects buffers whose names may need changing, and others that
!       ;; may conflict, then bring conflicting names together
!       (uniquify-rationalize fix-list))))
  
  ;; uniquify's version of buffer-file-name; result never contains trailing 
slash
  (defun uniquify-buffer-file-name (buffer)




reply via email to

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