diff --git a/README.md b/README.md index df2d158..c6e45de 100644 --- a/README.md +++ b/README.md @@ -294,7 +294,7 @@ Keybinding | Description <kbd>C-c D</kbd> | Delete current file and buffer. <kbd>C-c d</kbd> | Duplicate the current line (or region). <kbd>C-c M-d</kbd> | Duplicate and comment the current line (or region). -<kbd>C-c r</kbd> | Rename the currently visited file and buffer. +<kbd>C-c r</kbd> | Rename the current buffer and its visiting file if any. <kbd>C-c t</kbd> | Open a terminal emulator (`ansi-term`). <kbd>C-c k</kbd> | Kill all open buffers except the one you're currently in. <kbd>C-c TAB</kbd> | Indent and copy region to clipboard diff --git a/core/prelude-core.el b/core/prelude-core.el index 538ea54..9216f9d 100644 --- a/core/prelude-core.el +++ b/core/prelude-core.el @@ -251,12 +251,12 @@ there's a region, all lines that region covers will be duplicated." (setq end (point)))) (goto-char (+ origin (* (length region) arg) arg)))) -(defun prelude-rename-file-and-buffer () - "Renames current buffer and file it is visiting." +(defun prelude-rename-buffer-and-file () + "Rename current buffer and if the buffer is visiting a file, rename it too." (interactive) (let ((filename (buffer-file-name))) (if (not (and filename (file-exists-p filename))) - (message "Buffer is not visiting a file!") + (rename-buffer (read-from-minibuffer "New name: " (buffer-name))) (let ((new-name (read-file-name "New name: " filename))) (cond ((vc-backend filename) (vc-rename-file filename new-name)) @@ -434,7 +434,7 @@ Doesn't mess with special buffers." "Press <C-c G> to search in GitHub." "Press <C-c y> to search in YouTube." "Press <C-c U> to search in DuckDuckGo." - "Press <C-c r> to rename the current buffer and file it's visiting." + "Press <C-c r> to rename the current buffer and the file it's visiting if any." "Press <C-c t> to open a terminal in Emacs." "Press <C-c k> to kill all the buffers, but the active one." "Press <C-x g> or <s-m> to run magit-status." diff --git a/core/prelude-mode.el b/core/prelude-mode.el index dadfc56..20a21d4 100644 --- a/core/prelude-mode.el +++ b/core/prelude-mode.el @@ -58,7 +58,7 @@ (define-key map (kbd "C-c D") 'prelude-delete-file-and-buffer) (define-key map (kbd "C-c d") 'prelude-duplicate-current-line-or-region) (define-key map (kbd "C-c M-d") 'prelude-duplicate-and-comment-current-line-or-region) - (define-key map (kbd "C-c r") 'prelude-rename-file-and-buffer) + (define-key map (kbd "C-c r") 'prelude-rename-buffer-and-file) (define-key map (kbd "C-c t") 'prelude-visit-term-buffer) (define-key map (kbd "C-c k") 'prelude-kill-other-buffers) (define-key map (kbd "C-c TAB") 'prelude-indent-rigidly-and-copy-to-clipboard) @@ -89,7 +89,7 @@ ("Files" ["Open with..." prelude-open-with] ["Delete file and buffer" prelude-delete-file-and-buffer] - ["Rename file and buffer" prelude-rename-file-and-buffer] + ["Rename buffer and file" prelude-rename-buffer-and-file] ["Copy file name to clipboard" prelude-copy-file-name-to-clipboard]) ("Buffers"