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

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

[elpa] externals/exwm ec108a6 3/7: Cleanup simulation key config issues


From: Chris Feng
Subject: [elpa] externals/exwm ec108a6 3/7: Cleanup simulation key config issues
Date: Wed, 6 Feb 2019 06:35:33 -0500 (EST)

branch: externals/exwm
commit ec108a61dc38f84a3b290f022929331e97784842
Author: Ian Eure <address@hidden>
Commit: Chris Feng <address@hidden>

    Cleanup simulation key config issues
    
    * exwm-input.el (exwm-input-simulation-keys): Original key only has
    one option, so probably shouldn’t be a `choice` type; Move the
    "User-defined" key value to the top, since that’s the one someone is
    most likely to want).
    
    * exwm-config.el (exwm-config-default): Only set custom vars if there
    isn’t a saved value for them.
---
 exwm-config.el | 26 ++++++++++++++------------
 exwm-input.el  |  8 ++++----
 2 files changed, 18 insertions(+), 16 deletions(-)

diff --git a/exwm-config.el b/exwm-config.el
index 50f1366..8223633 100644
--- a/exwm-config.el
+++ b/exwm-config.el
@@ -31,7 +31,8 @@
 (defun exwm-config-default ()
   "Default configuration of EXWM."
   ;; Set the initial workspace number.
-  (setq exwm-workspace-number 4)
+  (unless (get 'exwm-workspace-number 'saved-value)
+    (setq exwm-workspace-number 4))
   ;; Make class name the buffer name
   (add-hook 'exwm-update-class-hook
             (lambda ()
@@ -52,17 +53,18 @@
                         (interactive (list (read-shell-command "$ ")))
                         (start-process-shell-command command nil command)))
   ;; Line-editing shortcuts
-  (setq exwm-input-simulation-keys
-        '(([?\C-b] . [left])
-          ([?\C-f] . [right])
-          ([?\C-p] . [up])
-          ([?\C-n] . [down])
-          ([?\C-a] . [home])
-          ([?\C-e] . [end])
-          ([?\M-v] . [prior])
-          ([?\C-v] . [next])
-          ([?\C-d] . [delete])
-          ([?\C-k] . [S-end delete])))
+  (unless (get 'exwm-input-simulation-keys 'saved-value)
+    (setq exwm-input-simulation-keys
+          '(([?\C-b] . [left])
+            ([?\C-f] . [right])
+            ([?\C-p] . [up])
+            ([?\C-n] . [down])
+            ([?\C-a] . [home])
+            ([?\C-e] . [end])
+            ([?\M-v] . [prior])
+            ([?\C-v] . [next])
+            ([?\C-d] . [delete])
+            ([?\C-k] . [S-end delete]))))
   ;; Enable EXWM
   (exwm-enable)
   ;; Configure Ido
diff --git a/exwm-input.el b/exwm-input.el
index 4f64d35..04020ac 100644
--- a/exwm-input.el
+++ b/exwm-input.el
@@ -915,8 +915,9 @@ Notes:
 * The predefined examples in the Customize interface are not guaranteed to
   work for all applications.  This can be tweaked on a per application basis
   with `exwm-input-set-local-simulation-keys'."
-  :type '(alist :key-type (choice (key-sequence :tag "Original"))
-                :value-type (choice (key-sequence :tag "Move left" [left])
+  :type '(alist :key-type (key-sequence :tag "Original")
+                :value-type (choice (key-sequence :tag "User-defined")
+                                    (key-sequence :tag "Move left" [left])
                                     (key-sequence :tag "Move right" [right])
                                     (key-sequence :tag "Move up" [up])
                                     (key-sequence :tag "Move down" [down])
@@ -928,8 +929,7 @@ Notes:
                                     (key-sequence :tag "Paste" [C-v])
                                     (key-sequence :tag "Delete" [delete])
                                     (key-sequence :tag "Delete to EOL"
-                                                  [S-end delete])
-                                    (key-sequence :tag "User-defined")))
+                                                  [S-end delete])))
   :set (lambda (symbol value)
          (set symbol value)
          (exwm-input--set-simulation-keys value)))



reply via email to

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