From: Richard M. Stallman Date: Mon, 24 Apr 1995 14:59:22 +0000 (+0000) Subject: (rename-uniquely): Strip suffix before rename. X-Git-Tag: emacs-19.34~4336 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=40eb8038d923c2580ede434936223e217c148a80;p=emacs.git (rename-uniquely): Strip suffix before rename. --- diff --git a/lisp/files.el b/lisp/files.el index 6f85e79e4ac..3545a989498 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1881,11 +1881,15 @@ saying what text to write." This function is useful for creating multiple shell process buffers or multiple mail buffers, etc." (interactive) - (let* ((new-buf (generate-new-buffer (buffer-name))) - (name (buffer-name new-buf))) - (kill-buffer new-buf) - (rename-buffer name) - (set-buffer-modified-p (buffer-modified-p)))) ; force mode line update + (save-match-data + (let* ((base-name (if (string-match "<[0-9]+>\\'" (buffer-name)) + (substring (buffer-name) 0 (match-beginning 0)) + (buffer-name))) + (new-buf (generate-new-buffer base-name)) + (name (buffer-name new-buf))) + (kill-buffer new-buf) + (rename-buffer name) + (set-buffer-modified-p (buffer-modified-p))))) ; force mode line update (defun make-directory (dir &optional parents) "Create the directory DIR and any nonexistent parent dirs.