Use `compilation-start` rather than custom buffer initialization.
[pelican-mode.git] / pelican-mode.el
index fe4eea0..df0503f 100644 (file)
   "Check if this buffer is under a Pelican site."
   (not (null (pelican-find-root))))
 
-(defun pelican-enable-if-site ()
-  "Enable `pelican-mode' if this buffer is under a Pelican site."
-  (when (pelican-is-in-site)
-    (pelican-mode 1)))
-
 (defun pelican-make (target)
   "Execute TARGET in a Makefile at the root of the site."
   (interactive "sMake Pelican target: ")
-  (if-let ((default-directory (pelican-find-root)))
-      (let ((output (get-buffer-create "*Pelican Output*")))
-        (display-buffer output)
-        (pop-to-buffer output)
-        (compilation-mode)
-        (start-process "Pelican Makefile" output "make" target))
+  (if-let (default-directory (pelican-find-root))
+      (compilation-start (format "make %s" target)
+                         nil (lambda (_) "*pelican*"))
     (message "This doesn't look like a Pelican site.")))
 
 (defun pelican-make-html ()
   "Toggle Pelican mode.
 
 Interactively with no argument, this command toggles the mode.
-to show buffer size and position in mode-line."
+for editing Pelican site files."
   :init-value nil
   :lighter " Pelican"
   :keymap pelican-keymap
   :group 'pelican)
 
+;;;###autoload
+(defun pelican-enable-if-site ()
+  "Enable `pelican-mode' if this buffer is under a Pelican site."
+  (when (pelican-is-in-site)
+    (pelican-mode 1)))
+
 ;;;###autoload
 (add-hook 'markdown-mode-hook 'pelican-enable-if-site)