diff lisp/buff-menu.el @ 5118:e0db3c197671 ben-lisp-object

merge up to latest default branch, doesn't compile yet
author Ben Wing <ben@xemacs.org>
date Sat, 26 Dec 2009 21:18:49 -0600
parents 6e11554a16aa
children f00192e1cd49 308d34e9f07d
line wrap: on
line diff
--- a/lisp/buff-menu.el	Sat Dec 26 00:20:27 2009 -0600
+++ b/lisp/buff-menu.el	Sat Dec 26 21:18:49 2009 -0600
@@ -91,6 +91,7 @@
   (define-key Buffer-menu-mode-map "k" 'Buffer-menu-delete)
   (define-key Buffer-menu-mode-map "\C-d" 'Buffer-menu-delete-backwards)
   (define-key Buffer-menu-mode-map "\C-k" 'Buffer-menu-delete)
+  (define-key Buffer-menu-mode-map "r" 'Buffer-menu-rename)
   (define-key Buffer-menu-mode-map "x" 'Buffer-menu-execute)
   (define-key Buffer-menu-mode-map " " 'next-line)
   (define-key Buffer-menu-mode-map "n" 'next-line)
@@ -261,6 +262,18 @@
   (while (looking-at " [-M]")
     (forward-line 1)))
 
+(defun Buffer-menu-rename (newname unique)
+  "Rename buffer on this line to NEWNAME, immediately.
+If given a prefix argument, automatically uniquify.  See `rename-buffer'."
+  (interactive "sNew name for buffer: \np")
+  (beginning-of-line)
+  (if (looking-at " [-M]")		;header lines
+      (ding)
+    (save-excursion
+      (set-buffer (Buffer-menu-buffer t))
+      (rename-buffer newname unique))
+    (revert-buffer)))
+
 (defun Buffer-menu-save ()
   "Mark buffer on this line to be saved by \\<Buffer-menu-mode-map>\\[Buffer-menu-execute] command."
   (interactive)