From 40eb8038d923c2580ede434936223e217c148a80 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Mon, 24 Apr 1995 14:59:22 +0000 Subject: [PATCH] (rename-uniquely): Strip suffix before rename. --- lisp/files.el | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) 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. -- 2.39.5