emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/embark 02c4b88f25 4/4: Merge pull request #538 from min


From: ELPA Syncer
Subject: [elpa] externals/embark 02c4b88f25 4/4: Merge pull request #538 from minad/toggle-var
Date: Tue, 13 Sep 2022 12:57:37 -0400 (EDT)

branch: externals/embark
commit 02c4b88f25fb4f4f17a553344875366117ccd2e1
Merge: 93b931ba97 7c581a16b8
Author: Omar AntolĂ­n Camarena <omar.antolin@gmail.com>
Commit: GitHub <noreply@github.com>

    Merge pull request #538 from minad/toggle-var
    
    Add toggle variable action
---
 embark.el | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/embark.el b/embark.el
index 715dbf0183..7b520fdcc9 100644
--- a/embark.el
+++ b/embark.el
@@ -3557,6 +3557,14 @@ Returns the new name actually used."
   (interactive "SVariable: ")
   (insert (string-trim (pp-to-string (symbol-value var)))))
 
+(defun embark-toggle-variable-value (var)
+  "Toggle value of boolean variable VAR."
+  (interactive "SVariable: ")
+  (let ((val (symbol-value var)))
+    (unless (memq val '(nil t))
+      (user-error "Not a boolean variable"))
+    (funcall (or (get var 'custom-set) #'set-default) var (not val))))
+
 (defun embark-insert-relative-path (file)
   "Insert relative path to FILE.
 The insert path is relative to `default-directory'."
@@ -4148,7 +4156,8 @@ library, which have an obvious notion of associated 
directory."
   ("c" customize-set-variable)
   ("u" customize-variable)
   ("v" embark-save-variable-value)
-  ("<" embark-insert-variable-value))
+  ("<" embark-insert-variable-value)
+  ("t" embark-toggle-variable-value))
 
 (embark-define-keymap embark-function-map
   "Keymap for Embark function actions."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]