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