Можно ли оценить весь буфер в Emacs?

В настоящее время, чтобы оценить elist в Emacs, мне нужно поместить курсор в последнюю скобку и испустить C-x e.

Можно ли оценить весь буфер как единую программу elisp без необходимости позиционирования курсора?

Ответы

Ответ 1

M-x eval-buffer

или Alt + x, а затем введите "eval-buffer" или просто введите часть его и вкладку в автозаполнение.

Ответ 2

Я поместил это в мой .emacs! Это позволяет вам анализировать регион, если есть один или весь буфер. Я привязал его к C-x E.

(defun eval-region-or-buffer ()
  (interactive)
  (let ((debug-on-error t))
    (cond
     (mark-active
      (call-interactively 'eval-region)
      (message "Region evaluated!")
      (setq deactivate-mark t))
     (t
      (eval-buffer)
      (message "Buffer evaluated!")))))

(add-hook 'emacs-lisp-mode-hook
          (lambda ()
            (local-set-key (kbd "C-x E") 'eval-region-or-buffer)))