From 41ffc15191d335fb3e17b23cd9a463009d289724 Mon Sep 17 00:00:00 2001
From: Case Duckworth
Date: Sun, 6 Jun 2021 23:26:28 -0500
Subject: Write function to require private.el

---
 lisp/acdw.el | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'lisp')

diff --git a/lisp/acdw.el b/lisp/acdw.el
index 48e754d..2f878a9 100644
--- a/lisp/acdw.el
+++ b/lisp/acdw.el
@@ -410,6 +410,10 @@ Prompt only if there are unsaved changes."
   (custom-set-faces '(fringe
                       ((t (:foreground "dim gray"))))))
 
+(defun acdw/require-private ()
+  "Require `acdw-private', which is in private.el."
+  (require 'acdw-private "private.el"))
+
 
 ;;; URL regexp
 ;; really, I just want to add gemini:// protocol, but I'm going to do some
-- 
cgit 1.4.1-21-gabe81


From 3a2346e08452699b70a61bf649c4b8b64a93a4ea Mon Sep 17 00:00:00 2001
From: Case Duckworth
Date: Sun, 6 Jun 2021 23:27:22 -0500
Subject: Require erc on connect

---
 lisp/acdw-erc.el | 1 +
 1 file changed, 1 insertion(+)

(limited to 'lisp')

diff --git a/lisp/acdw-erc.el b/lisp/acdw-erc.el
index 92ce6db..7517d0e 100644
--- a/lisp/acdw-erc.el
+++ b/lisp/acdw-erc.el
@@ -66,6 +66,7 @@ If USE-TLS is non-nil, use TLS."
 (defun erc/connect ()
   "Connect to all the servers in `erc/servers'."
   (interactive)
+  (require 'erc)
   (mapcar #'connect-to-erc erc/servers))
 
 (defun filter-server-buffers ()
-- 
cgit 1.4.1-21-gabe81


From a2823598fbac280ab23ea14324fde2c0dae71cd8 Mon Sep 17 00:00:00 2001
From: Case Duckworth
Date: Sun, 6 Jun 2021 23:27:50 -0500
Subject: Add acdw-erc/prompt

---
 lisp/acdw-erc.el | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

(limited to 'lisp')

diff --git a/lisp/acdw-erc.el b/lisp/acdw-erc.el
index 7517d0e..6e06325 100644
--- a/lisp/acdw-erc.el
+++ b/lisp/acdw-erc.el
@@ -81,6 +81,23 @@ If USE-TLS is non-nil, use TLS."
     (with-message (format "Killing server buffer: %s" (buffer-name buffer))
       (with-current-buffer buffer
         (erc-quit-server erc/bye-message)))))
+(defun acdw-erc/prompt ()
+  "The prompt to show for ERC."
+  ;; Rewrite s-truncate to avoid dependency.
+  (let ((name (buffer-name))
+        (ellipsis "...")
+        (len erc-fill-static-center))
+    (if (and len (> (length name) (- len 2)))
+        (format "%s%s>"
+                (substring name 0 (- len 2 (length ellipsis)))
+                ellipsis)
+      (format "%s%s>" (let ((ss) ; Rewrite s-repeat to avoid dependency.
+                            (num (- len 2 (length name))))
+                        (while (> num 0)
+                          (setq ss (cons " " ss))
+                          (setq num (1- num)))
+                        (apply #'concat ss))
+              name))))
 
 (provide 'acdw-erc)
 ;;; acdw-erc.el ends here
-- 
cgit 1.4.1-21-gabe81


From a19c83eb11b528cfa59686c816b0e3652770db35 Mon Sep 17 00:00:00 2001
From: Case Duckworth
Date: Sun, 6 Jun 2021 23:27:57 -0500
Subject: Force mode line update after quitting server

Still not quite working... i think i need to kill all the channel buffers too.
---
 lisp/acdw-erc.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

(limited to 'lisp')

diff --git a/lisp/acdw-erc.el b/lisp/acdw-erc.el
index 6e06325..8cf9734 100644
--- a/lisp/acdw-erc.el
+++ b/lisp/acdw-erc.el
@@ -80,7 +80,9 @@ If USE-TLS is non-nil, use TLS."
   (dolist (buffer (filter-server-buffers))
     (with-message (format "Killing server buffer: %s" (buffer-name buffer))
       (with-current-buffer buffer
-        (erc-quit-server erc/bye-message)))))
+        (erc-quit-server erc/bye-message))))
+  (force-mode-line-update))
+
 (defun acdw-erc/prompt ()
   "The prompt to show for ERC."
   ;; Rewrite s-truncate to avoid dependency.
-- 
cgit 1.4.1-21-gabe81