Вы можете использовать (save-some-buffers 1)
для сохранения всех буферов, содержащих изменения.
Заверните его вместе с compile
, например, так:
(defun save-all-and-compile ()
(save-some-buffers 1)
(compile compile-command))
Затем установите F5 для запуска этой функции вместо простой компиляции.
Используйте (save-some-buffers)
(без аргументов), если вы предпочитаете, чтобы Emacs спрашивал вас о каждом буфере для сохранения. Кроме того, вы можете захотеть сделать команду компиляции настраиваемой, как в случае с compile
... Я оставлю это вам.
Начало работы
Вы также должны добавить (interactive)
, см. Полный пример ниже.
(defun save-all-and-compile ()
(interactive)
(save-some-buffers 1)
(compile compile-command))
(global-set-key [f5] 'save-all-and-compile)