Re-open *scratch* buffer in Emacs?

后端 未结 16 1352
北海茫月
北海茫月 2020-12-12 10:29

If I accidentally closed the scratch buffer in Emacs, how do I create a new scratch buffer?

16条回答
  •  南笙
    南笙 (楼主)
    2020-12-12 11:00

    I have scratch as an interactive command for opening a new scratch buffer (I like to have several):

    (defun scratch ()
      "create a new scratch buffer to work in. (could be *scratch* - *scratchX*)"
      (interactive)
      (let ((n 0)
            bufname)
        (while (progn
                 (setq bufname (concat "*scratch"
                                       (if (= n 0) "" (int-to-string n))
                                       "*"))
                 (setq n (1+ n))
                 (get-buffer bufname)))
      (switch-to-buffer (get-buffer-create bufname))
      (if (= n 1) initial-major-mode))) ; 1, because n was incremented
    

    adopted from: http://everything2.com/index.pl?node_id=1038451

提交回复
热议问题