2010-03-25 4 views
13

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

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

ответ

22
M-x eval-buffer 

или Alt + х, а затем ввести «EVAL-буфер» или просто ввести его часть и вкладку для автозаполнения.

10

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

(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))) 
Смежные вопросы