about summary refs log tree commit diff
path: root/emacs/.emacs.d/wpc/cycle.el
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2020-02-08T15·55+0000
committerWilliam Carroll <wpcarro@gmail.com>2020-02-08T15·55+0000
commitf145bc9eb6f1bc51fd70a3df02c978b3333fa012 (patch)
tree172737cc30385afe3823f111f1b8fdca0dc1f303 /emacs/.emacs.d/wpc/cycle.el
parent3f54dd8601ca7b484a42a8d2b1ee867201bcfccb (diff)
Support cycle/focus-item
I oftentimes call `cycle/focus` and pass `(lambda (a) (equal a b))`. This
function should tighten up my code.
Diffstat (limited to 'emacs/.emacs.d/wpc/cycle.el')
-rw-r--r--emacs/.emacs.d/wpc/cycle.el5
1 files changed, 5 insertions, 0 deletions
diff --git a/emacs/.emacs.d/wpc/cycle.el b/emacs/.emacs.d/wpc/cycle.el
index 592de10e0d..f876cf7054 100644
--- a/emacs/.emacs.d/wpc/cycle.el
+++ b/emacs/.emacs.d/wpc/cycle.el
@@ -131,6 +131,11 @@ underlying struct."
         (cycle/jump i cycle)
       (error "No element in cycle matches predicate"))))
 
+(defun cycle/focus-item (x xs)
+  "Focus ITEM in cycle XS.
+ITEM is the first item in XS that t for `equal'."
+  (cycle/focus (lambda (y) (equal x y)) xs))
+
 (defun cycle/contains? (x xs)
   "Return t if cycle, XS, has member X."
   (->> xs