org-babelがとても便利なので、scratchバッファをデフォルトでorg-modeにしてみます。
Emacsの終了時に自動的にファイルに保存されるようにしておけば、 ものぐさでorg-rememberを使いこなせない私でも日々org-modeを活用できそうです。
(defvar *scratch-file* "~/.scratch.org") ;; 初期化時の処理 (defun init-scratch-buffer () (let ((buf (get-buffer "*scratch*"))) (when buf (save-excursion (with-current-buffer buf (erase-buffer) (org-mode) (insert (format "* [%s]" (format-time-string "%Y/%m/%d %H:%M:%S")))))))) ;; 終了時、バッファ削除時にバッファの内容を保存する処理 (defun save-scratch-buffer () (let ((buf (get-buffer "*scratch*"))) (when buf (save-excursion (with-current-buffer buf (append-to-file (point-min) (point-max) *scratch-file*)))))) (defun save-scratch-kill-emacs-hook () (save-scratch-buffer)) (defun save-scratch-kill-buffer-hook () (when (equal (current-buffer) (get-buffer "*scratch*")) (save-scratch-buffer))) ;; hook登録 (add-hook 'after-init-hook 'init-scratch-buffer) (add-hook 'kill-emacs-hook 'save-scratch-kill-emacs-hook) (add-hook 'kill-buffer-hook 'save-scratch-kill-buffer-hook)
0 件のコメント:
コメントを投稿