2018-05-14 21:23:48 +02:00
|
|
|
;;; collab/impatient-mode/autoload.el -*- lexical-binding: t; -*-
|
2017-07-05 02:49:10 +02:00
|
|
|
|
|
|
|
;;;###autoload
|
|
|
|
(defun +impatient-mode/toggle ()
|
|
|
|
"TODO"
|
|
|
|
(interactive)
|
|
|
|
(require 'simple-httpd)
|
|
|
|
(unless (process-status "httpd")
|
|
|
|
(httpd-start))
|
|
|
|
(impatient-mode)
|
|
|
|
(if impatient-mode
|
|
|
|
(add-hook 'kill-buffer-hook '+impatient-mode--cleanup-impatient-mode)
|
|
|
|
(+impatient-mode--cleanup-impatient-mode)))
|
|
|
|
|
|
|
|
(defun +impatient-mode--cleanup-impatient-mode ()
|
|
|
|
(unless (cl-loop for buf in (doom-buffer-list)
|
|
|
|
if (buffer-local-value 'impatient-mode buf)
|
|
|
|
return t)
|
|
|
|
(httpd-stop)
|
|
|
|
(cl-loop for buf in (doom-buffer-list)
|
|
|
|
if (buffer-local-value 'impatient-mode buf)
|
|
|
|
do
|
|
|
|
(with-current-buffer buf
|
|
|
|
(impatient-mode -1)))
|
|
|
|
(remove-hook 'kill-buffer-hook '+impatient-mode--cleanup-impatient-mode)))
|