feat(wpcarro/emacs): Package cycle.el

This will likely break a few things since I've changed the names of a few
functions to reflect their mutative APIs.

Change-Id: If6279999fba50813b68e66d7713c12afd209eb90
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6004
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This commit is contained in:
William Carroll 2022-07-29 21:12:59 -07:00 committed by clbot
parent 65fb82097b
commit d1ab0c7cbc
10 changed files with 188 additions and 95 deletions

View file

@ -55,8 +55,8 @@ This function should be called from a buffer running vterm."
(interactive)
(vterm-mgt--assert-vterm-buffer)
(vterm-mgt-reconcile-state)
(cycle-focus-item (current-buffer) vterm-mgt--instances)
(switch-to-buffer (cycle-next vterm-mgt--instances))
(cycle-focus-item! (current-buffer) vterm-mgt--instances)
(switch-to-buffer (cycle-next! vterm-mgt--instances))
(when vterm-mgt-scroll-on-focus (end-of-buffer)))
(defun vterm-mgt-prev ()
@ -65,8 +65,8 @@ This function should be called from a buffer running vterm."
(interactive)
(vterm-mgt--assert-vterm-buffer)
(vterm-mgt-reconcile-state)
(cycle-focus-item (current-buffer) vterm-mgt--instances)
(switch-to-buffer (cycle-prev vterm-mgt--instances))
(cycle-focus-item! (current-buffer) vterm-mgt--instances)
(switch-to-buffer (cycle-prev! vterm-mgt--instances))
(when vterm-mgt-scroll-on-focus (end-of-buffer)))
(defun vterm-mgt-instantiate ()
@ -81,8 +81,8 @@ If however you must call `vterm', if you'd like to cycle through vterm
(interactive)
(vterm-mgt-reconcile-state)
(let ((buffer (vterm t)))
(cycle-append buffer vterm-mgt--instances)
(cycle-focus-item buffer vterm-mgt--instances)))
(cycle-append! buffer vterm-mgt--instances)
(cycle-focus-item! buffer vterm-mgt--instances)))
(defun vterm-mgt-kill ()
"Kill the current buffer and remove it from `vterm-mgt--instances'.
@ -106,7 +106,7 @@ instance."
(if (cycle-focused? vterm-mgt--instances)
(switch-to-buffer (cycle-current vterm-mgt--instances))
(progn
(cycle-jump 0 vterm-mgt--instances)
(cycle-jump! 0 vterm-mgt--instances)
(switch-to-buffer (cycle-current vterm-mgt--instances))))))
(defun vterm-mgt-rename-buffer (name)