如何重新加载当前文件
时间:2006-05-02 来源:pluskid
有时候文件被外部程序修改了,需要重新加载一下,Emacs 好像没有提供这个功能,只能先关闭再重新打开,不过,我们可以自己写一个函数来实现,例如,我把自己写的这个函数绑定到 F5 键上,因为 F5 通常都是刷新、重新加载的快捷键嘛:
;; 刷新功能,重新打开当前文件,用于文件在外部被修改了的情况
(global-set-key (kbd "<f5>") 'kid-reopen-file)
(defun kid-reopen-file ()
"reopen current buffer"
(interactive)
(if (null (buffer-file-name (current-buffer)))
(message "buffer not attached to a file.")
(let ((file-name (buffer-file-name (current-buffer)))
(current-point (point)))
(kill-buffer (current-buffer))
(find-file file-name)
(if (<= current-point (point-max))
(goto-char current-point)))))
相关阅读 更多 +