aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1995-04-24 14:59:22 +0000
committerRichard M. Stallman1995-04-24 14:59:22 +0000
commit40eb8038d923c2580ede434936223e217c148a80 (patch)
tree3685b9fe8849f00957868fc5803ae3e223a83fbf
parent86a21134a5d7a6dcf3c54a24ea1341784772b9bd (diff)
downloademacs-40eb8038d923c2580ede434936223e217c148a80.tar.gz
emacs-40eb8038d923c2580ede434936223e217c148a80.zip
(rename-uniquely): Strip suffix before rename.
-rw-r--r--lisp/files.el14
1 files 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."
1881This function is useful for creating multiple shell process buffers 1881This function is useful for creating multiple shell process buffers
1882or multiple mail buffers, etc." 1882or multiple mail buffers, etc."
1883 (interactive) 1883 (interactive)
1884 (let* ((new-buf (generate-new-buffer (buffer-name))) 1884 (save-match-data
1885 (name (buffer-name new-buf))) 1885 (let* ((base-name (if (string-match "<[0-9]+>\\'" (buffer-name))
1886 (kill-buffer new-buf) 1886 (substring (buffer-name) 0 (match-beginning 0))
1887 (rename-buffer name) 1887 (buffer-name)))
1888 (set-buffer-modified-p (buffer-modified-p)))) ; force mode line update 1888 (new-buf (generate-new-buffer base-name))
1889 (name (buffer-name new-buf)))
1890 (kill-buffer new-buf)
1891 (rename-buffer name)
1892 (set-buffer-modified-p (buffer-modified-p))))) ; force mode line update
1889 1893
1890(defun make-directory (dir &optional parents) 1894(defun make-directory (dir &optional parents)
1891 "Create the directory DIR and any nonexistent parent dirs. 1895 "Create the directory DIR and any nonexistent parent dirs.