branch: elpa/xah-fly-keys
commit f5e41dcf3cf856d179c707ea056d0f5c6a45acdc
Author: Xah Lee <x...@xahlee.org>
Commit: Xah Lee <x...@xahlee.org>

    trivial tweak of doc, code, and format. no behavior change.
---
 xah-fly-keys.el | 841 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 770 insertions(+), 71 deletions(-)

diff --git a/xah-fly-keys.el b/xah-fly-keys.el
index 8058a06864..207c3255af 100644
--- a/xah-fly-keys.el
+++ b/xah-fly-keys.el
@@ -4,7 +4,7 @@
 
 ;; Author: Xah Lee ( http://xahlee.info/ )
 ;; Maintainer: Xah Lee <x...@xahlee.org>
-;; Version: 24.24.20240406145635
+;; Version: 24.24.20240422075003
 ;; Created: 2013-09-10
 ;; Package-Requires: ((emacs "27"))
 ;; Keywords: convenience, vi, vim, ergoemacs, keybinding
@@ -873,7 +873,7 @@ followed by 2 spaces.
 ,it means replace by empty string.
 
 URL `http://xahlee.info/emacs/emacs/elisp_change_brackets.html'
-Version: 2020-11-01 2023-09-29 2024-03-19"
+Version: 2020-11-01 2024-03-19 2024-04-13"
   (interactive
    (let ((xbrackets
           '(
@@ -888,8 +888,8 @@ Version: 2020-11-01 2023-09-29 2024-03-19"
             "double square [[ ]]"
             "tilde ~ ~"
             "equal = ="
-            "curly double quote “ ”"
-            "curly single quote ‘ ’"
+            "double curly quote “ ”"
+            "single curly quote ‘ ’"
             "french angle ‹ ›"
             "french double angle « »"
             "corner 「 」"
@@ -2623,12 +2623,14 @@ Version: 2017-09-22 2021-08-27 2022-08-06"
 If in dired, backup current file or marked files.
 The backup file name is in this format
  x.html~2018-05-15_133429~
- The last part is hour, minutes, seconds.
-in the same dir. If such a file already exist, it is overwritten.
+The last part is hour, minutes, seconds.
+
+Overwrite existing file.
+
 If the current buffer is not associated with a file, nothing's done.
 
 URL `http://xahlee.info/emacs/emacs/elisp_make-backup.html'
-Version: 2018-06-06 2020-12-18 2022-06-13"
+Version: 2018-06-06 2022-06-13 2024-04-21"
   (interactive)
   (let ((xfname buffer-file-name)
         (xdateTimeFormat "%Y-%m-%d_%H%M%S"))
@@ -2664,34 +2666,29 @@ Version: 2015-10-14"
       (xah-make-backup))))
 
 (defun xah-delete-current-file-make-backup ()
-  "Delete current file, makes a backup~, close the buffer.
+  "Makes a backup~, delete current file, close the buffer.
+
+Backup filename is “‹name›~‹dateTimeStamp›~”.
+Overwrite existing file.
+
 If buffer is not a file, copy content to `kill-ring', delete buffer.
-If buffer is a file, the file's directory is shown with cursor at the next 
file.
 
-Backup filename is “‹name›~‹dateTimeStamp›~”. Existing file of the same name 
is overwritten. If buffer is not a file, the backup file name starts with “xx_”.
+If buffer is not a file, the backup file name starts with “xx_”.
 
 Call `xah-open-last-closed' to open the backup file.
 
 URL `http://xahlee.info/emacs/emacs/elisp_delete-current-file.html'
-Version: 2018-05-15 2023-08-11 2023-10-28"
+Version: 2018-05-15 2023-10-28 2024-04-21"
   (interactive)
   (when (eq major-mode 'dired-mode)
     (user-error "%s: In dired. Nothing is done." real-this-command))
   (let ((xfname buffer-file-name)
-        (xbuffname (buffer-name))
-        xbackupPath)
-    (setq xbackupPath
-          (concat (if xfname xfname (format "%sxx" default-directory))
-                  (format "~%s~" (format-time-string "%Y-%m-%d_%H%M%S"))))
+        (xbuffname (buffer-name)))
     (if xfname
-        (progn
+        (let ((xbackupPath (format "xfname~%s~" (format-time-string 
"%Y-%m-%d_%H%M%S"))))
           (save-buffer xfname)
-          (rename-file xfname xbackupPath t)
           (kill-buffer xbuffname)
-          ;; (dired-jump nil xbackupPath)
-          ;; (revert-buffer t t t)
-          ;; (dired-goto-file xbackupPath)
-          ;; (dired-next-line 1)
+          (rename-file xfname xbackupPath t)
           (message "File deleted.
 Backup at
 %s
@@ -2883,58 +2880,758 @@ Value is a alist, each element is of the form (\"e\" . 
\"d\").
 First char is Dvorak, second is corresponding char of the destination layout.
 When a char is not in this alist, they are assumed to be the same. ")
 
-(push '("azerty" . (("." . "e") ("," . "z") ("'" . "a") (";" . "w") ("/" . 
"^") ("[" . ")") ("]" . "=") ("=" . "$") ("-" . "ù") ("a" . "q") ("b" . "n") 
("c" . "i") ("d" . "h") ("e" . "d") ("f" . "y") ("g" . "u") ("h" . "j") ("i" . 
"g") ("j" . "c") ("k" . "v") ("l" . "p") ("m" . ",") ("n" . "l") ("o" . "s") 
("p" . "r") ("q" . "x") ("r" . "o") ("s" . "m") ("t" . "k") ("u" . "f") ("v" . 
":") ("w" . ";") ("x" . "b") ("y" . "t") ("z" . "!") ("1" . "&") ("2" . "é") 
("3" . "\"") ("4" . "'") ("5 [...]
-
-(push '("azerty-be" . (("." . "e") ("," . "z") ("'" . "a") (";" . "w") ("/" . 
"^") ("[" . ")") ("]" . "-") ("=" . "$") ("-" . "ù") ("a" . "q") ("b" . "n") 
("c" . "i") ("d" . "h") ("e" . "d") ("f" . "y") ("g" . "u") ("h" . "j") ("i" . 
"g") ("j" . "c") ("k" . "v") ("l" . "p") ("m" . ",") ("n" . "l") ("o" . "s") 
("p" . "r") ("q" . "x") ("r" . "o") ("s" . "m") ("t" . "k") ("u" . "f") ("v" . 
":") ("w" . ";") ("x" . "b") ("y" . "t") ("z" . "=") ("1" . "&") ("2" . "é") 
("3" . "\"") ("4" . "'")  [...]
-
-(push '("colemak" . (("'" . "q") ("," . "w") ("." . "f") ("y" . "g") ("f" . 
"j") ("g" . "l") ("c" . "u") ("r" . "y") ("l" . ";") ("o" . "r") ("e" . "s") 
("u" . "t") ("i" . "d") ("d" . "h") ("h" . "n") ("t" . "e") ("n" . "i") ("s" . 
"o") (";" . "z") ("q" . "x") ("j" . "c") ("k" . "v") ("x" . "b") ("b" . "k") 
("w" . ",") ("v" . ".") ("z" . "/"))) xah-fly-layouts)
-
-(push '("colemak-dhm" . (("'" . "q") ("," . "w") ("." . "f") (";" . "z") ("b" 
. "k") ("c" . "u") ("d" . "m") ("e" . "s") ("f" . "j") ("g" . "l") ("h" . "n") 
("i" . "g") ("j" . "c") ("k" . "d") ("l" . ";") ("m" . "h") ("n" . "i") ("o" . 
"r") ("q" . "x") ("r" . "y") ("s" . "o") ("t" . "e") ("u" . "t") ("v" . ".") 
("w" . ",") ("x" . "v") ("y" . "b") ("z" . "/"))) xah-fly-layouts)
-
-(push '("colemak-dhm-angle" . (("'" . "q") ("," . "w") ("." . "f") (";" . "x") 
("b" . "k") ("c" . "u") ("d" . "m") ("e" . "s") ("f" . "j") ("g" . "l") ("h" . 
"n") ("i" . "g") ("j" . "d") ("k" . "v") ("l" . ";") ("m" . "h") ("n" . "i") 
("o" . "r") ("q" . "c") ("r" . "y") ("s" . "o") ("t" . "e") ("u" . "t") ("v" . 
".") ("w" . ",") ("x" . "\\") ("y" . "b") ("z" . "/"))) xah-fly-layouts)
-
-(push '("colemak-dhk" . (("'" . "q") ("," . "w") ("." . "f") (";" . "z") ("b" 
. "m") ("c" . "u") ("d" . "k") ("e" . "s") ("f" . "j") ("g" . "l") ("h" . "n") 
("i" . "g") ("j" . "c") ("k" . "d") ("l" . ";") ("m" . "h") ("n" . "i") ("o" . 
"r") ("q" . "x") ("r" . "y") ("s" . "o") ("t" . "e") ("u" . "t") ("v" . ".") 
("w" . ",") ("x" . "v") ("y" . "b") ("z" . "/"))) xah-fly-layouts)
+(push '("azerty" . (("." . "e")
+                    ("," . "z")
+                    ("'" . "a")
+                    (";" . "w")
+                    ("/" . "^")
+                    ("[" . ")")
+                    ("]" . "=")
+                    ("=" . "$")
+                    ("-" . "ù")
+                    ("a" . "q")
+                    ("b" . "n")
+                    ("c" . "i")
+                    ("d" . "h")
+                    ("e" . "d")
+                    ("f" . "y")
+                    ("g" . "u")
+                    ("h" . "j")
+                    ("i" . "g")
+                    ("j" . "c")
+                    ("k" . "v")
+                    ("l" . "p")
+                    ("m" . ",")
+                    ("n" . "l")
+                    ("o" . "s")
+                    ("p" . "r")
+                    ("q" . "x")
+                    ("r" . "o")
+                    ("s" . "m")
+                    ("t" . "k")
+                    ("u" . "f")
+                    ("v" . ":")
+                    ("w" . ";")
+                    ("x" . "b")
+                    ("y" . "t")
+                    ("z" . "!")
+                    ("1" . "&")
+                    ("2" . "é")
+                    ("3" . "\"")
+                    ("4" . "'")
+                    ("5" . "(")
+                    ("6" . "-")
+                    ("7" . "è")
+                    ("8" . "_")
+                    ("9" . "ç")
+                    ("0" . "à")
+                    ("\\" . "*")
+                    ("`" . "²"))) xah-fly-layouts)
+
+(push '("azerty-be" . (("." . "e")
+                       ("," . "z")
+                       ("'" . "a")
+                       (";" . "w")
+                       ("/" . "^")
+                       ("[" . ")")
+                       ("]" . "-")
+                       ("=" . "$")
+                       ("-" . "ù")
+                       ("a" . "q")
+                       ("b" . "n")
+                       ("c" . "i")
+                       ("d" . "h")
+                       ("e" . "d")
+                       ("f" . "y")
+                       ("g" . "u")
+                       ("h" . "j")
+                       ("i" . "g")
+                       ("j" . "c")
+                       ("k" . "v")
+                       ("l" . "p")
+                       ("m" . ",")
+                       ("n" . "l")
+                       ("o" . "s")
+                       ("p" . "r")
+                       ("q" . "x")
+                       ("r" . "o")
+                       ("s" . "m")
+                       ("t" . "k")
+                       ("u" . "f")
+                       ("v" . ":")
+                       ("w" . ";")
+                       ("x" . "b")
+                       ("y" . "t")
+                       ("z" . "=")
+                       ("1" . "&")
+                       ("2" . "é")
+                       ("3" . "\"")
+                       ("4" . "'")
+                       ("5" . "(")
+                       ("6" . "§")
+                       ("7" . "è")
+                       ("8" . "!")
+                       ("9" . "ç")
+                       ("0" . "à")
+                       ("\\" . "µ")
+                       ("`" . "²"))) xah-fly-layouts)
+
+(push '("colemak" . (("'" . "q")
+                     ("," . "w")
+                     ("." . "f")
+                     ("y" . "g")
+                     ("f" . "j")
+                     ("g" . "l")
+                     ("c" . "u")
+                     ("r" . "y")
+                     ("l" . ";")
+                     ("o" . "r")
+                     ("e" . "s")
+                     ("u" . "t")
+                     ("i" . "d")
+                     ("d" . "h")
+                     ("h" . "n")
+                     ("t" . "e")
+                     ("n" . "i")
+                     ("s" . "o")
+                     (";" . "z")
+                     ("q" . "x")
+                     ("j" . "c")
+                     ("k" . "v")
+                     ("x" . "b")
+                     ("b" . "k")
+                     ("w" . ",")
+                     ("v" . ".")
+                     ("z" . "/"))) xah-fly-layouts)
+
+(push '("colemak-dhm" . (("'" . "q")
+                         ("," . "w")
+                         ("." . "f")
+                         (";" . "z")
+                         ("b" . "k")
+                         ("c" . "u")
+                         ("d" . "m")
+                         ("e" . "s")
+                         ("f" . "j")
+                         ("g" . "l")
+                         ("h" . "n")
+                         ("i" . "g")
+                         ("j" . "c")
+                         ("k" . "d")
+                         ("l" . ";")
+                         ("m" . "h")
+                         ("n" . "i")
+                         ("o" . "r")
+                         ("q" . "x")
+                         ("r" . "y")
+                         ("s" . "o")
+                         ("t" . "e")
+                         ("u" . "t")
+                         ("v" . ".")
+                         ("w" . ",")
+                         ("x" . "v")
+                         ("y" . "b")
+                         ("z" . "/"))) xah-fly-layouts)
+
+(push '("colemak-dhm-angle" . (("'" . "q")
+                               ("," . "w")
+                               ("." . "f")
+                               (";" . "x")
+                               ("b" . "k")
+                               ("c" . "u")
+                               ("d" . "m")
+                               ("e" . "s")
+                               ("f" . "j")
+                               ("g" . "l")
+                               ("h" . "n")
+                               ("i" . "g")
+                               ("j" . "d")
+                               ("k" . "v")
+                               ("l" . ";")
+                               ("m" . "h")
+                               ("n" . "i")
+                               ("o" . "r")
+                               ("q" . "c")
+                               ("r" . "y")
+                               ("s" . "o")
+                               ("t" . "e")
+                               ("u" . "t")
+                               ("v" . ".")
+                               ("w" . ",")
+                               ("x" . "\\")
+                               ("y" . "b")
+                               ("z" . "/"))) xah-fly-layouts)
+
+(push '("colemak-dhk" . (("'" . "q")
+                         ("," . "w")
+                         ("." . "f")
+                         (";" . "z")
+                         ("b" . "m")
+                         ("c" . "u")
+                         ("d" . "k")
+                         ("e" . "s")
+                         ("f" . "j")
+                         ("g" . "l")
+                         ("h" . "n")
+                         ("i" . "g")
+                         ("j" . "c")
+                         ("k" . "d")
+                         ("l" . ";")
+                         ("m" . "h")
+                         ("n" . "i")
+                         ("o" . "r")
+                         ("q" . "x")
+                         ("r" . "y")
+                         ("s" . "o")
+                         ("t" . "e")
+                         ("u" . "t")
+                         ("v" . ".")
+                         ("w" . ",")
+                         ("x" . "v")
+                         ("y" . "b")
+                         ("z" . "/"))) xah-fly-layouts)
 
 (push '("dvorak" . nil) xah-fly-layouts)
 
-(push '("optimot" . (("-" . "^") ("'" . "à") ("," . "j") ("." . "o") (";" . 
"k") ("/" . "x") ("[" . "#") ("]" . "@") ("=" . "ç") ("a" . "a") ("b" . "g") 
("c" . "l") ("d" . "p") ("e" . "e") ("f" . "f") ("g" . "d") ("h" . "t") ("i" . 
",") ("j" . "è") ("k" . ".") ("l" . "q") ("m" . "c") ("n" . "r") ("o" . "i") 
("p" . "é") ("q" . "y") ("r" . "'") ("s" . "n") ("t" . "s") ("u" . "u") ("v" . 
"h") ("w" . "m") ("x" . "w") ("y" . "b") ("z" . "v") ("1" . "«") ("2" . "»") 
("3" . "\"") ("4" . "-") (" [...]
-
-(push '("programer-dvorak" . ( ("`" . "$") ("1" . "&") ("2" . "[") ("3" . "{") 
("4" . "}") ("5" . "(") ("6" . "=") ("7" . "*") ("8" . ")") ("9" . "+") ("0" . 
"]") ("[" . "!") ("]" . "#") ("!" . "%") ("@" . "7") ("#" . "5") ("$" . "3") 
("%" . "1") ("^" . "9") ("&" . "0") ("*" . "2") ("(" . "4") (")" . "6") ("{" . 
"8") ("}" . "`") ("'" . ";") ("\"" . ":") (";" . "'") (":" . "\"") ("=" . "@") 
("+" . "^") )) xah-fly-layouts)
-
-(push '("qwerty" . (("." . "e") ("," . "w") ("'" . "q") (";" . "z") ("/" . 
"[") ("[" . "-") ("]" . "=") ("=" . "]") ("-" . "'") ("a" . "a") ("b" . "n") 
("c" . "i") ("d" . "h") ("e" . "d") ("f" . "y") ("g" . "u") ("h" . "j") ("i" . 
"g") ("j" . "c") ("k" . "v") ("l" . "p") ("n" . "l") ("o" . "s") ("p" . "r") 
("q" . "x") ("r" . "o") ("s" . ";") ("t" . "k") ("u" . "f") ("v" . ".") ("w" . 
",") ("x" . "b") ("y" . "t") ("z" . "/"))) xah-fly-layouts)
+(push '("optimot" . (("-" . "^")
+                     ("'" . "à")
+                     ("," . "j")
+                     ("." . "o")
+                     (";" . "k")
+                     ("/" . "x")
+                     ("[" . "#")
+                     ("]" . "@")
+                     ("=" . "ç")
+                     ("a" . "a")
+                     ("b" . "g")
+                     ("c" . "l")
+                     ("d" . "p")
+                     ("e" . "e")
+                     ("f" . "f")
+                     ("g" . "d")
+                     ("h" . "t")
+                     ("i" . ",")
+                     ("j" . "è")
+                     ("k" . ".")
+                     ("l" . "q")
+                     ("m" . "c")
+                     ("n" . "r")
+                     ("o" . "i")
+                     ("p" . "é")
+                     ("q" . "y")
+                     ("r" . "'")
+                     ("s" . "n")
+                     ("t" . "s")
+                     ("u" . "u")
+                     ("v" . "h")
+                     ("w" . "m")
+                     ("x" . "w")
+                     ("y" . "b")
+                     ("z" . "v")
+                     ("1" . "«")
+                     ("2" . "»")
+                     ("3" . "\"")
+                     ("4" . "-")
+                     ("5" . "+")
+                     ("6" . "*")
+                     ("7" . "/")
+                     ("8" . "=")
+                     ("9" . "(")
+                     ("0" . ")")
+                     ("\\" . "ç")
+                     ("`" . "$"))) xah-fly-layouts)
+
+(push '("programer-dvorak" . (("`" . "$")
+                              ("1" . "&")
+                              ("2" . "[")
+                              ("3" . "{")
+                              ("4" . "}")
+                              ("5" . "(")
+                              ("6" . "=")
+                              ("7" . "*")
+                              ("8" . ")")
+                              ("9" . "+")
+                              ("0" . "]")
+                              ("[" . "!")
+                              ("]" . "#")
+                              ("!" . "%")
+                              ("@" . "7")
+                              ("#" . "5")
+                              ("$" . "3")
+                              ("%" . "1")
+                              ("^" . "9")
+                              ("&" . "0")
+                              ("*" . "2")
+                              ("(" . "4")
+                              (")" . "6")
+                              ("{" . "8")
+                              ("}" . "`")
+                              ("'" . ";")
+                              ("\"" . ":")
+                              (";" . "'")
+                              (":" . "\"")
+                              ("=" . "@")
+                              ("+" . "^"))) xah-fly-layouts)
+
+(push '("qwerty" . (("." . "e")
+                    ("," . "w")
+                    ("'" . "q")
+                    (";" . "z")
+                    ("/" . "[")
+                    ("[" . "-")
+                    ("]" . "=")
+                    ("=" . "]")
+                    ("-" . "'")
+                    ("a" . "a")
+                    ("b" . "n")
+                    ("c" . "i")
+                    ("d" . "h")
+                    ("e" . "d")
+                    ("f" . "y")
+                    ("g" . "u")
+                    ("h" . "j")
+                    ("i" . "g")
+                    ("j" . "c")
+                    ("k" . "v")
+                    ("l" . "p")
+                    ("n" . "l")
+                    ("o" . "s")
+                    ("p" . "r")
+                    ("q" . "x")
+                    ("r" . "o")
+                    ("s" . ";")
+                    ("t" . "k")
+                    ("u" . "f")
+                    ("v" . ".")
+                    ("w" . ",")
+                    ("x" . "b")
+                    ("y" . "t")
+                    ("z" . "/"))) xah-fly-layouts)
 
 ;; QWERTY Norwegian
-(push '("qwerty-no" . (("." . "e") ("," . "w") ("'" . "q") (";" . "z") ("/" . 
"å") ("[" . "+") ("]" . "´") ("=" . "¨") ("-" . "æ") ("b" . "n") ("c" . "i") 
("d" . "h") ("e" . "d") ("f" . "y") ("g" . "u") ("h" . "j") ("i" . "g") ("j" . 
"c") ("k" . "v") ("l" . "p") ("n" . "l") ("o" . "s") ("p" . "r") ("q" . "x") 
("r" . "o") ("s" . "ø") ("t" . "k") ("u" . "f") ("v" . ".") ("w" . ",") ("x" . 
"b") ("y" . "t") ("z" . "-"))) xah-fly-layouts)
-
-(push '("qwerty-abnt" . (("." . "e") ("," . "w") ("'" . "q") (";" . "z") ("/" 
. "'") ("[" . "-") ("]" . "=") ("=" . "[") ("-" . "~") ("b" . "n") ("c" . "i") 
("d" . "h") ("e" . "d") ("f" . "y") ("g" . "u") ("h" . "j") ("i" . "g") ("j" . 
"c") ("k" . "v") ("l" . "p") ("n" . "l") ("o" . "s") ("p" . "r") ("q" . "x") 
("r" . "o") ("s" . "ç") ("t" . "k") ("u" . "f") ("v" . ".") ("w" . ",") ("x" . 
"b") ("y" . "t") ("z" . ";"))) xah-fly-layouts)
-
-(push '("qwertz" . (("." . "e") ("," . "w") ("'" . "q") (";" . "y") ("/" . 
"ü") ("[" . "ß") ("]" . "´") ("=" . "+") ("-" . "ä") ("b" . "n") ("c" . "i") 
("d" . "h") ("e" . "d") ("f" . "z") ("g" . "u") ("h" . "j") ("i" . "g") ("j" . 
"c") ("k" . "v") ("l" . "p") ("n" . "l") ("o" . "s") ("p" . "r") ("q" . "x") 
("r" . "o") ("s" . "ö") ("t" . "k") ("u" . "f") ("v" . ".") ("w" . ",") ("x" . 
"b") ("y" . "t") ("z" . "-"))) xah-fly-layouts)
-
-(push '("workman" . (("[" . "-") ("]" . "=") ("'" . "q") ("," . "d") ("." . 
"r") ("p" . "w") ("y" . "b") ("f" . "j") ("g" . "f") ("c" . "u") ("r" . "p") 
("l" . ";") ("/" . "[") ("=" . "]") ("o" . "s") ("e" . "h") ("u" . "t") ("i" . 
"g") ("d" . "y") ("h" . "n") ("t" . "e") ("n" . "o") ("s" . "i") ("-" . "'") 
(";" . "z") ("q" . "x") ("j" . "m") ("k" . "c") ("x" . "v") ("b" . "k") ("m" . 
"l") ("w" . ",") ("v" . ".") ("z" . "/"))) xah-fly-layouts)
-
-(push '("norman" . (("'" . "q") ("," . "w") ("." . "d") ("p" . "f") ("y" . 
"k") ("f" . "j") ("g" . "u") ("c" . "r") ("r" . "l") ("l" . ";") ("o" . "s") 
("u" . "t") ("i" . "g") ("d" . "y") ("h" . "n") ("t" . "i") ("n" . "o") ("s" . 
"h") (";" . "z") ("q" . "x") ("j" . "c") ("k" . "v") ("x" . "b") ("b" . "p") 
("w" . ",") ("v" . ".") ("z" . "/"))) xah-fly-layouts)
-
-(push '("neo2" . (("'" . "x") ("," . "v") ("." . "l") ("p" . "c") ("y" . "w") 
("f" . "k") ("g" . "h") ("c" . "g") ("r" . "f") ("l" . "q") ("a" . "u") ("o" . 
"i") ("e" . "a") ("u" . "e") ("i" . "o") ("d" . "s") ("h" . "n") ("t" . "r") 
("n" . "t") ("s" . "d") (";" . "ü") ("q" . "ö") ("j" . "ä") ("k" . "p") ("x" . 
"z") ("w" . ",") ("v" . ".") ("z" . "j") ("/" . "ß") ("[" . "-") ("-" . "y"))) 
xah-fly-layouts)
-
-(push '("koy" . (("'" . "k") ("," . ".") ("." . "o") ("p" . ",") ("f" . "v") 
("r" . "l") ("l" . "ß") ("a" . "h") ("o" . "a") ("u" . "i") ("i" . "u") ("h" . 
"t") ("t" . "r") (";" . "x") ("j" . "ä") ("k" . "ü") ("x" . "ö") ("m" . "p") 
("v" . "m") ("z" . "j"))) xah-fly-layouts)
-
-(push '("adnw" . (("'" . "k") ("," . "u") ("." . "ü") ("p" . ".") ("y" . "ä") 
("f" . "v") ("r" . "l") ("l" . "j") ("/" . "f") ("a" . "h") ("o" . "i") ("u" . 
"a") ("i" . "o") ("h" . "t") ("t" . "r") ("-" . "ß") (";" . "x") ("q" . "y") 
("j" . "ö") ("k" . ",") ("x" . "q") ("m" . "p") ("v" . "m"))) xah-fly-layouts)
-
-(push '("pt-nativo" . ((";" . "«") ("/" . "~") ("[" . "º") ("]" . "<") ("=" . 
"-") ("-" . "´") ("a" . "i") ("b" . "q") ("c" . "t") ("d" . "m") ("e" . "a") 
("f" . "w") ("g" . "l") ("h" . "d") ("i" . "u") ("k" . "b") ("l" . "p") ("m" . 
"v") ("n" . "r") ("o" . "e") ("p" . "h") ("q" . "ç") ("r" . "c") ("s" . "n") 
("t" . "s") ("u" . "o") ("v" . "f") ("w" . "g") ("x" . "k") ("y" . "x"))) 
xah-fly-layouts)
-
-(push '("carpalx-qgmlwy" . (("." . "m") ("," . "g") ("'" . "q") (";" . "z") 
("/" . "[") ("[" . "-") ("]" . "=") ("=" . "]") ("-" . "'") ("a" . "d") ("b" . 
"k") ("c" . "u") ("d" . "i") ("e" . "t") ("f" . "y") ("g" . "f") ("h" . "a") 
("i" . "r") ("j" . "c") ("k" . "v") ("l" . ";") ("m" . "p") ("n" . "o") ("o" . 
"s") ("p" . "l") ("q" . "x") ("r" . "b") ("s" . "h") ("t" . "e") ("u" . "n") 
("v" . ".") ("w" . ",") ("x" . "j") ("y" . "w") ("z" . "/"))) xah-fly-layouts)
-
-(push '("carpalx-qgmlwb" . (("." . "m") ("," . "g") ("'" . "q") (";" . "z") 
("/" . "[") ("[" . "-") ("]" . "=") ("=" . "]") ("-" . "'") ("a" . "d") ("b" . 
"k") ("c" . "u") ("d" . "i") ("e" . "t") ("f" . "b") ("g" . "y") ("h" . "a") 
("i" . "r") ("j" . "c") ("k" . "f") ("l" . ";") ("m" . "p") ("n" . "o") ("o" . 
"s") ("p" . "l") ("q" . "x") ("r" . "v") ("s" . "h") ("t" . "e") ("u" . "n") 
("v" . ".") ("w" . ",") ("x" . "j") ("y" . "w") ("z" . "/"))) xah-fly-layouts)
-
-(push '("carpalx-qfmlwy" . (("." . "m") ("," . "f") ("'" . "q") (";" . "z") 
("/" . "[") ("[" . "-") ("]" . "=") ("=" . "]") ("-" . "'") ("a" . "d") ("b" . 
"p") ("c" . "o") ("d" . "i") ("e" . "t") ("f" . "y") ("g" . "u") ("h" . "a") 
("i" . "r") ("j" . "g") ("k" . "c") ("l" . "j") ("m" . "k") ("n" . "h") ("o" . 
"s") ("p" . "l") ("q" . "v") ("r" . "b") ("s" . ";") ("t" . "e") ("u" . "n") 
("v" . ".") ("w" . ",") ("y" . "w") ("z" . "/"))) xah-fly-layouts)
-
-(push '("bepo" . (("'" . "b") ("," . "é") ("." . "p") ("p" . "o") ("y" . "è") 
("f" . "^") ("g" . "v") ("c" . "d") ("r" . "l") ("l" . "j") ("o" . "u") ("e" . 
"i") ("u" . "e") ("i" . ",") ("d" . "c") ("h" . "t") ("t" . "s") ("n" . "r") 
("s" . "n") (":" . "à") ("q" . "y") ("j" . "x") ("k" . ".") ("x" . "k") ("b" . 
"’") ("m" . "q") ("w" . "g") ("v" . "h") ("z" . "f") ("3" . "»") ("4" . "(") 
("5" . ")") ("6" . "@") ("7" . "+") ("8" . "-") ("9" . "/"))) xah-fly-layouts)
+(push '("qwerty-no" . (("." . "e")
+                       ("," . "w")
+                       ("'" . "q")
+                       (";" . "z")
+                       ("/" . "å")
+                       ("[" . "+")
+                       ("]" . "´")
+                       ("=" . "¨")
+                       ("-" . "æ")
+                       ("b" . "n")
+                       ("c" . "i")
+                       ("d" . "h")
+                       ("e" . "d")
+                       ("f" . "y")
+                       ("g" . "u")
+                       ("h" . "j")
+                       ("i" . "g")
+                       ("j" . "c")
+                       ("k" . "v")
+                       ("l" . "p")
+                       ("n" . "l")
+                       ("o" . "s")
+                       ("p" . "r")
+                       ("q" . "x")
+                       ("r" . "o")
+                       ("s" . "ø")
+                       ("t" . "k")
+                       ("u" . "f")
+                       ("v" . ".")
+                       ("w" . ",")
+                       ("x" . "b")
+                       ("y" . "t")
+                       ("z" . "-"))) xah-fly-layouts)
+
+(push '("qwerty-abnt" . (("." . "e")
+                         ("," . "w")
+                         ("'" . "q")
+                         (";" . "z")
+                         ("/" . "'")
+                         ("[" . "-")
+                         ("]" . "=")
+                         ("=" . "[")
+                         ("-" . "~")
+                         ("b" . "n")
+                         ("c" . "i")
+                         ("d" . "h")
+                         ("e" . "d")
+                         ("f" . "y")
+                         ("g" . "u")
+                         ("h" . "j")
+                         ("i" . "g")
+                         ("j" . "c")
+                         ("k" . "v")
+                         ("l" . "p")
+                         ("n" . "l")
+                         ("o" . "s")
+                         ("p" . "r")
+                         ("q" . "x")
+                         ("r" . "o")
+                         ("s" . "ç")
+                         ("t" . "k")
+                         ("u" . "f")
+                         ("v" . ".")
+                         ("w" . ",")
+                         ("x" . "b")
+                         ("y" . "t")
+                         ("z" . ";"))) xah-fly-layouts)
+
+(push '("qwertz" . (("." . "e")
+                    ("," . "w")
+                    ("'" . "q")
+                    (";" . "y")
+                    ("/" . "ü")
+                    ("[" . "ß")
+                    ("]" . "´")
+                    ("=" . "+")
+                    ("-" . "ä")
+                    ("b" . "n")
+                    ("c" . "i")
+                    ("d" . "h")
+                    ("e" . "d")
+                    ("f" . "z")
+                    ("g" . "u")
+                    ("h" . "j")
+                    ("i" . "g")
+                    ("j" . "c")
+                    ("k" . "v")
+                    ("l" . "p")
+                    ("n" . "l")
+                    ("o" . "s")
+                    ("p" . "r")
+                    ("q" . "x")
+                    ("r" . "o")
+                    ("s" . "ö")
+                    ("t" . "k")
+                    ("u" . "f")
+                    ("v" . ".")
+                    ("w" . ",")
+                    ("x" . "b")
+                    ("y" . "t")
+                    ("z" . "-"))) xah-fly-layouts)
+
+(push '("workman" . (("[" . "-")
+                     ("]" . "=")
+                     ("'" . "q")
+                     ("," . "d")
+                     ("." . "r")
+                     ("p" . "w")
+                     ("y" . "b")
+                     ("f" . "j")
+                     ("g" . "f")
+                     ("c" . "u")
+                     ("r" . "p")
+                     ("l" . ";")
+                     ("/" . "[")
+                     ("=" . "]")
+                     ("o" . "s")
+                     ("e" . "h")
+                     ("u" . "t")
+                     ("i" . "g")
+                     ("d" . "y")
+                     ("h" . "n")
+                     ("t" . "e")
+                     ("n" . "o")
+                     ("s" . "i")
+                     ("-" . "'")
+                     (";" . "z")
+                     ("q" . "x")
+                     ("j" . "m")
+                     ("k" . "c")
+                     ("x" . "v")
+                     ("b" . "k")
+                     ("m" . "l")
+                     ("w" . ",")
+                     ("v" . ".")
+                     ("z" . "/"))) xah-fly-layouts)
+
+(push '("norman" . (("'" . "q")
+                    ("," . "w")
+                    ("." . "d")
+                    ("p" . "f")
+                    ("y" . "k")
+                    ("f" . "j")
+                    ("g" . "u")
+                    ("c" . "r")
+                    ("r" . "l")
+                    ("l" . ";")
+                    ("o" . "s")
+                    ("u" . "t")
+                    ("i" . "g")
+                    ("d" . "y")
+                    ("h" . "n")
+                    ("t" . "i")
+                    ("n" . "o")
+                    ("s" . "h")
+                    (";" . "z")
+                    ("q" . "x")
+                    ("j" . "c")
+                    ("k" . "v")
+                    ("x" . "b")
+                    ("b" . "p")
+                    ("w" . ",")
+                    ("v" . ".")
+                    ("z" . "/"))) xah-fly-layouts)
+
+(push '("neo2" . (("'" . "x")
+                  ("," . "v")
+                  ("." . "l")
+                  ("p" . "c")
+                  ("y" . "w")
+                  ("f" . "k")
+                  ("g" . "h")
+                  ("c" . "g")
+                  ("r" . "f")
+                  ("l" . "q")
+                  ("a" . "u")
+                  ("o" . "i")
+                  ("e" . "a")
+                  ("u" . "e")
+                  ("i" . "o")
+                  ("d" . "s")
+                  ("h" . "n")
+                  ("t" . "r")
+                  ("n" . "t")
+                  ("s" . "d")
+                  (";" . "ü")
+                  ("q" . "ö")
+                  ("j" . "ä")
+                  ("k" . "p")
+                  ("x" . "z")
+                  ("w" . ",")
+                  ("v" . ".")
+                  ("z" . "j")
+                  ("/" . "ß")
+                  ("[" . "-")
+                  ("-" . "y"))) xah-fly-layouts)
+
+(push '("koy" . (("'" . "k")
+                 ("," . ".")
+                 ("." . "o")
+                 ("p" . ",")
+                 ("f" . "v")
+                 ("r" . "l")
+                 ("l" . "ß")
+                 ("a" . "h")
+                 ("o" . "a")
+                 ("u" . "i")
+                 ("i" . "u")
+                 ("h" . "t")
+                 ("t" . "r")
+                 (";" . "x")
+                 ("j" . "ä")
+                 ("k" . "ü")
+                 ("x" . "ö")
+                 ("m" . "p")
+                 ("v" . "m")
+                 ("z" . "j"))) xah-fly-layouts)
+
+(push '("adnw" . (("'" . "k")
+                  ("," . "u")
+                  ("." . "ü")
+                  ("p" . ".")
+                  ("y" . "ä")
+                  ("f" . "v")
+                  ("r" . "l")
+                  ("l" . "j")
+                  ("/" . "f")
+                  ("a" . "h")
+                  ("o" . "i")
+                  ("u" . "a")
+                  ("i" . "o")
+                  ("h" . "t")
+                  ("t" . "r")
+                  ("-" . "ß")
+                  (";" . "x")
+                  ("q" . "y")
+                  ("j" . "ö")
+                  ("k" . ",")
+                  ("x" . "q")
+                  ("m" . "p")
+                  ("v" . "m"))) xah-fly-layouts)
+
+(push '("pt-nativo" . ((";" . "«")
+                       ("/" . "~")
+                       ("[" . "º")
+                       ("]" . "<")
+                       ("=" . "-")
+                       ("-" . "´")
+                       ("a" . "i")
+                       ("b" . "q")
+                       ("c" . "t")
+                       ("d" . "m")
+                       ("e" . "a")
+                       ("f" . "w")
+                       ("g" . "l")
+                       ("h" . "d")
+                       ("i" . "u")
+                       ("k" . "b")
+                       ("l" . "p")
+                       ("m" . "v")
+                       ("n" . "r")
+                       ("o" . "e")
+                       ("p" . "h")
+                       ("q" . "ç")
+                       ("r" . "c")
+                       ("s" . "n")
+                       ("t" . "s")
+                       ("u" . "o")
+                       ("v" . "f")
+                       ("w" . "g")
+                       ("x" . "k")
+                       ("y" . "x"))) xah-fly-layouts)
+
+(push '("carpalx-qgmlwy" . (("." . "m")
+                            ("," . "g")
+                            ("'" . "q")
+                            (";" . "z")
+                            ("/" . "[")
+                            ("[" . "-")
+                            ("]" . "=")
+                            ("=" . "]")
+                            ("-" . "'")
+                            ("a" . "d")
+                            ("b" . "k")
+                            ("c" . "u")
+                            ("d" . "i")
+                            ("e" . "t")
+                            ("f" . "y")
+                            ("g" . "f")
+                            ("h" . "a")
+                            ("i" . "r")
+                            ("j" . "c")
+                            ("k" . "v")
+                            ("l" . ";")
+                            ("m" . "p")
+                            ("n" . "o")
+                            ("o" . "s")
+                            ("p" . "l")
+                            ("q" . "x")
+                            ("r" . "b")
+                            ("s" . "h")
+                            ("t" . "e")
+                            ("u" . "n")
+                            ("v" . ".")
+                            ("w" . ",")
+                            ("x" . "j")
+                            ("y" . "w")
+                            ("z" . "/"))) xah-fly-layouts)
+
+(push '("carpalx-qgmlwb" . (("." . "m")
+                            ("," . "g")
+                            ("'" . "q")
+                            (";" . "z")
+                            ("/" . "[")
+                            ("[" . "-")
+                            ("]" . "=")
+                            ("=" . "]")
+                            ("-" . "'")
+                            ("a" . "d")
+                            ("b" . "k")
+                            ("c" . "u")
+                            ("d" . "i")
+                            ("e" . "t")
+                            ("f" . "b")
+                            ("g" . "y")
+                            ("h" . "a")
+                            ("i" . "r")
+                            ("j" . "c")
+                            ("k" . "f")
+                            ("l" . ";")
+                            ("m" . "p")
+                            ("n" . "o")
+                            ("o" . "s")
+                            ("p" . "l")
+                            ("q" . "x")
+                            ("r" . "v")
+                            ("s" . "h")
+                            ("t" . "e")
+                            ("u" . "n")
+                            ("v" . ".")
+                            ("w" . ",")
+                            ("x" . "j")
+                            ("y" . "w")
+                            ("z" . "/"))) xah-fly-layouts)
+
+(push '("carpalx-qfmlwy" . (("." . "m")
+                            ("," . "f")
+                            ("'" . "q")
+                            (";" . "z")
+                            ("/" . "[")
+                            ("[" . "-")
+                            ("]" . "=")
+                            ("=" . "]")
+                            ("-" . "'")
+                            ("a" . "d")
+                            ("b" . "p")
+                            ("c" . "o")
+                            ("d" . "i")
+                            ("e" . "t")
+                            ("f" . "y")
+                            ("g" . "u")
+                            ("h" . "a")
+                            ("i" . "r")
+                            ("j" . "g")
+                            ("k" . "c")
+                            ("l" . "j")
+                            ("m" . "k")
+                            ("n" . "h")
+                            ("o" . "s")
+                            ("p" . "l")
+                            ("q" . "v")
+                            ("r" . "b")
+                            ("s" . ";")
+                            ("t" . "e")
+                            ("u" . "n")
+                            ("v" . ".")
+                            ("w" . ",")
+                            ("y" . "w")
+                            ("z" . "/"))) xah-fly-layouts)
+
+(push '("bepo" . (("'" . "b")
+                  ("," . "é")
+                  ("." . "p")
+                  ("p" . "o")
+                  ("y" . "è")
+                  ("f" . "^")
+                  ("g" . "v")
+                  ("c" . "d")
+                  ("r" . "l")
+                  ("l" . "j")
+                  ("o" . "u")
+                  ("e" . "i")
+                  ("u" . "e")
+                  ("i" . ",")
+                  ("d" . "c")
+                  ("h" . "t")
+                  ("t" . "s")
+                  ("n" . "r")
+                  ("s" . "n")
+                  (":" . "à")
+                  ("q" . "y")
+                  ("j" . "x")
+                  ("k" . ".")
+                  ("x" . "k")
+                  ("b" . "’")
+                  ("m" . "q")
+                  ("w" . "g")
+                  ("v" . "h")
+                  ("z" . "f")
+                  ("3" . "»")
+                  ("4" . "(")
+                  ("5" . ")")
+                  ("6" . "@")
+                  ("7" . "+")
+                  ("8" . "-")
+                  ("9" . "/"))) xah-fly-layouts)
 
 (defvar xah-fly-key-current-layout nil
-  "The current keyboard layout. Value is a key in `xah-fly-layouts'.
-Do not set this variable manually. Use `xah-fly-keys-set-layout' to set it.
+ "The current keyboard layout.
+Value is a key in `xah-fly-layouts'.
+Do not set this variable manually.
+Use `xah-fly-keys-set-layout' to set it.
 If the value is nil, it is automatically set to \"qwerty\".
-When this variable changes, suitable change must also be done to 
`xah-fly--key-convert-table'.
 Version: 2022-10-22")
 
 (if xah-fly-key-current-layout nil (setq xah-fly-key-current-layout "qwerty"))
@@ -2950,9 +3647,8 @@ Version: 2019-02-12 2022-10-22" )
       (cdr (assoc xah-fly-key-current-layout xah-fly-layouts)))
 
 (defun xah-fly--convert-kbd-str (Charstr)
-  "Return the corresponding char Charstr according to
-`xah-fly--key-convert-table'. Charstr must be a string that is the argument to 
`kbd'. e.g. \"a\" and \"a b c\"
-Each space separated token is converted according to 
`xah-fly--key-convert-table'.
+ "Return the corresponding char Charstr according to 
`xah-fly--key-convert-table'.
+Charstr must be a string that is the valid argument to `kbd'.
 Version: 2022-10-25"
   (interactive)
   (mapconcat
@@ -3195,7 +3891,7 @@ Version: 2022-10-31"
        ("h e" . view-echo-area-messages)
        ("h f" . describe-face)
        ("h g" . info-lookup-symbol)
-       ("h h" . describe-function)
+       ;; ("h h" . describe-function)
        ("h i" . info)
        ("h j" . man)
        ("h k" . describe-key)
@@ -3203,11 +3899,14 @@ Version: 2022-10-31"
        ("h m" . describe-mode)
        ("h n" . describe-variable)
        ("h o" . describe-language-environment)
+       ;; p q
        ("h r" . apropos-variable)
        ("h s" . describe-syntax)
+       ("h t" . describe-function)
        ("h u" . elisp-index-search)
        ("h v" . apropos-value)
        ("h x" . describe-command) ; emacs 28
+       ;; y
        ("h z" . describe-coding-system)
 
        ("i" . kill-line)
@@ -3274,7 +3973,7 @@ Version: 2022-10-31"
 
        ;; a
        ;; b
-       ("r c" . replace-rectangle)
+       ("r c" . string-rectangle)
        ("r d" . delete-rectangle)
        ("r e" . call-last-kbd-macro)
        ;; f


Reply via email to