我如何在Emacs中重命名打开的文件?
有没有办法在Emacs中重命名打开的文件? 正在查看它吗? 像保存一样,但原来的应该消失。
试试Steve Yegge的.emacs中的这个函数:
;; source: http://steve.yegge.googlepages.com/my-dot-emacs-file (defun rename-file-and-buffer (new-name) "Renames both current buffer and file it's visiting to NEW-NAME." (interactive "sNew name: ") (let ((name (buffer-name)) (filename (buffer-file-name))) (if (not filename) (message "Buffer '%s' is not visiting a file!" name) (if (get-buffer new-name) (message "A buffer named '%s' already exists!" new-name) (progn (rename-file filename new-name 1) (rename-buffer new-name) (set-visited-file-name new-name) (set-buffer-modified-p nil))))))
看看那个页面,那里有另一个非常有用的相关函数,叫做“move-buffer-file”。
是的,在dired
模式下,您可以:
Cx Cj
(直接dired-jump
到Dired中当前文件的名称) R
重命名文件(或直接dired-do-rename
)。 Cx k RET
返回到(重命名的)文件缓冲区 重命名等同于shell mv
,但它也会更新任何打开的缓冲区。
只是为了完整性,因为有些人可能会访问这个页面,认为他们会得到Emacs的“另存为”功能的答案,这就是打开文件的Cx Cw。
链接地址: http://www.djcxy.com/p/38565.html