about summary refs log tree commit diff stats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/+eshell.el7
-rw-r--r--lisp/+setup.el17
2 files changed, 23 insertions, 1 deletions
diff --git a/lisp/+eshell.el b/lisp/+eshell.el index d49358d..d70bed7 100644 --- a/lisp/+eshell.el +++ b/lisp/+eshell.el
@@ -29,7 +29,12 @@ any directory proferred by `consult-dir'."
29 "Delete the character to the right, or quit eshell on an empty line." 29 "Delete the character to the right, or quit eshell on an empty line."
30 (interactive "p") 30 (interactive "p")
31 (if (and (eolp) (looking-back eshell-prompt-regexp)) 31 (if (and (eolp) (looking-back eshell-prompt-regexp))
32 (eshell-life-is-too-much) 32 (progn (eshell-life-is-too-much)
33 (when (and (<= 1 (count-windows))
34 ;; I'm guessing the extra frame is for the server?
35 (> (length (frame-list)) 2)
36 server-process)
37 (delete-frame)))
33 (delete-forward-char arg))) 38 (delete-forward-char arg)))
34 39
35;;; Insert previous arguments 40;;; Insert previous arguments
diff --git a/lisp/+setup.el b/lisp/+setup.el index 367fb01..d8e9bb8 100644 --- a/lisp/+setup.el +++ b/lisp/+setup.el
@@ -94,5 +94,22 @@ replace itself with the RECIPE's package."
94 :indent 1 94 :indent 1
95 :shorthand #'+setup-straight-shorthand) 95 :shorthand #'+setup-straight-shorthand)
96 96
97
98;;; Redefines of `setup' forms
99
100(setup-define :bind-into
101 (lambda (feature-or-map &rest rest)
102 (cl-loop for f/m in (ensure-list feature-or-map)
103 collect (if (string-match-p "-map\\'" (symbol-name f/m))
104 `(:with-map ,f/m (:bind ,@rest))
105 `(:with-feature ,f/m (:bind ,@rest)))
106 into forms
107 finally return `(progn ,@forms)))
108 :documentation "Bind into keys into the map(s) of FEATURE-OR-MAP.
109FEATURE-OR-MAP can be a feature or map name or a list of them.
110The arguments REST are handled as by `:bind'."
111 :debug '(sexp &rest form sexp)
112 :indent 1)
113
97(provide '+setup) 114(provide '+setup)
98;;; +setup.el ends here 115;;; +setup.el ends here