summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/emacs/modules/bd--devel.el13
1 files changed, 11 insertions, 2 deletions
diff --git a/.config/emacs/modules/bd--devel.el b/.config/emacs/modules/bd--devel.el
index caa8e0a..a37762d 100644
--- a/.config/emacs/modules/bd--devel.el
+++ b/.config/emacs/modules/bd--devel.el
@@ -32,11 +32,20 @@ to.")
(concat "/sudo:root@localhost:"
buffer-file-name))))
+(defun bd/compile-dwim (f)
+ (let ((default-directory
+ (or (locate-dominating-file "." "Makefile")
+ default-directory)))
+ (call-interactively f)))
(setq compilation-always-kill t
compilation-scroll-output 'first-error)
-(keymap-set prog-mode-map "C-," #'recompile)
-(keymap-set prog-mode-map "C-<" #'compile)
+(keymap-set prog-mode-map "C-," #'(lambda ()
+ (interactive)
+ (bd/compile-dwim #'recompile)))
+(keymap-set prog-mode-map "C-<" #'(lambda ()
+ (interactive)
+ (bd/compile-dwim #'compile)))
(add-hook 'prog-mode-hook (lambda ()
(font-lock-add-keywords