input/layout: major refactor
To conform the module to Doom's naming and style conventions. This introduces two breaking changes: + doom-bepo-cr-rotation-style was renamed +layout-bepo-cr-rotation-style + Replaces the doom-bepo- prefix for this module's bepo library with +layout-bepo- And the following fixes: + Corrects the file path in file header comments. + input/layout/autoload/bepo.el is no longer compiled/indexed if +bepo isn't activated.
This commit is contained in:
parent
4afdd4f788
commit
485381f6d1
4 changed files with 550 additions and 537 deletions
|
@ -1,329 +1,328 @@
|
|||
;;; input/keymaps/autoload/bepo.el -*- lexical-binding: t; -*-
|
||||
;;; input/layout/autoload/bepo.el -*- lexical-binding: t; -*-
|
||||
;;;###if (featurep! +bepo)
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-ts-bare-keymap (keymaps)
|
||||
(defun +layout-bepo-rotate-ts-bare-keymap (keymaps)
|
||||
"Rotate [jk] with [ts] in KEYMAP."
|
||||
(dolist (keymap keymaps)
|
||||
(evil-collection-translate-key nil keymap
|
||||
"t" "j"
|
||||
"T" "J"
|
||||
"s" "k"
|
||||
"S" "K"
|
||||
"j" "t"
|
||||
"J" "T"
|
||||
"k" "s"
|
||||
"K" "S"
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "C-S-t") (kbd "C-S-j")
|
||||
(kbd "C-S-s") (kbd "C-S-k")
|
||||
(kbd "C-S-j") (kbd "C-S-t")
|
||||
(kbd "C-S-k") (kbd "C-S-s")
|
||||
(kbd "M-S-t") (kbd "M-S-j")
|
||||
(kbd "M-S-s") (kbd "M-S-k")
|
||||
(kbd "M-S-j") (kbd "M-S-t")
|
||||
(kbd "M-S-k") (kbd "M-S-s"))))
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-é-quotes-bare-keymap (keymaps)
|
||||
"Rotate [w<>] with [é«»] in KEYMAP."
|
||||
(dolist (keymap keymaps)
|
||||
(evil-collection-translate-key nil keymap
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"«" "<"
|
||||
"»" ">"
|
||||
(kbd "C-é") (kbd "C-w")
|
||||
(kbd "C-«") (kbd "C-<")
|
||||
(kbd "C-»") (kbd "C->")
|
||||
(kbd "M-é") (kbd "M-w")
|
||||
(kbd "M-«") (kbd "M-<")
|
||||
(kbd "M-»") (kbd "M->")
|
||||
(kbd "C-S-é") (kbd "C-S-w")
|
||||
(kbd "C-S-«") (kbd "C-S-<")
|
||||
(kbd "C-S-»") (kbd "C-S->")
|
||||
(kbd "M-S-é") (kbd "M-S-w")
|
||||
(kbd "M-S-«") (kbd "M-S-<")
|
||||
(kbd "M-S-»") (kbd "M-S->"))))
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-cr-bare-keymap (keymaps &optional style)
|
||||
"Rotate [hl] with [cr] in KEYMAP.
|
||||
|
||||
If STYLE is nil or 'ergodis, the old 'c' bindings will be mapped on 'l' and the old 'r' on 'h'.
|
||||
Otherwise if STYLE is 'strict, the old 'c' bindings will be mapped on 'h' and the old 'r' on 'l'.
|
||||
Undefined behaviour in other cases, for forward compatibility."
|
||||
(let ((style (or style 'ergodis)))
|
||||
(dolist (keymap keymaps)
|
||||
(progn
|
||||
(evil-collection-translate-key nil keymap
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "C-S-c") (kbd "C-S-h")
|
||||
(kbd "C-S-r") (kbd "C-S-l")
|
||||
(kbd "M-S-c") (kbd "M-S-h")
|
||||
(kbd "M-S-r") (kbd "M-S-l"))
|
||||
(cond ((eq style 'ergodis)
|
||||
(evil-collection-translate-key nil keymap
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C"
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "C-S-h") (kbd "C-S-r")
|
||||
(kbd "C-S-l") (kbd "C-S-c")
|
||||
(kbd "M-S-h") (kbd "M-S-r")
|
||||
(kbd "M-S-l") (kbd "M-S-c")))
|
||||
(t
|
||||
(evil-collection-translate-key nil keymap
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R"
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "C-S-h") (kbd "C-S-c")
|
||||
(kbd "C-S-l") (kbd "C-S-r")
|
||||
(kbd "M-S-h") (kbd "M-S-c")
|
||||
(kbd "M-S-l") (kbd "M-S-r"))))))))
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-bare-keymap (keymaps &optional cr-style)
|
||||
"Rotate [hjklw<>] with [ctsré«»] in KEYMAP.
|
||||
See `doom-bepo-cr-rotation-style' for the meaning of CR-STYLE"
|
||||
(doom-bepo-rotate-cr-bare-keymap keymaps cr-style)
|
||||
(doom-bepo-rotate-ts-bare-keymap keymaps)
|
||||
(doom-bepo-rotate-é-quotes-bare-keymap keymaps))
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-evil-keymap (&optional cr-style)
|
||||
"Remap evil-{normal,operator,motion,...}-state-map
|
||||
to be more natural with Bépo keyboard layout.
|
||||
See `doom-bepo-cr-rotation-style' for the meaning of CR-STYLE."
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
(evil-collection-translate-key nil keymaps
|
||||
"t" "j"
|
||||
"T" "J"
|
||||
"s" "k"
|
||||
"S" "K"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
"j" "t"
|
||||
"J" "T"
|
||||
"k" "s"
|
||||
"K" "S")
|
||||
(cond ((eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C"))
|
||||
(t
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R")))
|
||||
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
"K" "S"
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S"))
|
||||
(cond ((eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C")))
|
||||
(t
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R"))))
|
||||
|
||||
|
||||
;; <> as direct access
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-operator-state-map)
|
||||
"«" "<"
|
||||
"»" ">")
|
||||
|
||||
;; " è replaces ^0 to go at BOL
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-operator-state-map)
|
||||
"è" "^"
|
||||
"È" "0")
|
||||
|
||||
;; [W] -> [É]
|
||||
;; [C-W] -> [W]
|
||||
(evil-collection-translate-key nil '(evil-normal-state-map evil-motion-state-map evil-operator-state-map evil-operator-state-map)
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"w" (kbd "C-w")
|
||||
"W" (kbd "C-w C-w")))
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "C-S-t") (kbd "C-S-j")
|
||||
(kbd "C-S-s") (kbd "C-S-k")
|
||||
(kbd "C-S-j") (kbd "C-S-t")
|
||||
(kbd "C-S-k") (kbd "C-S-s")
|
||||
(kbd "M-S-t") (kbd "M-S-j")
|
||||
(kbd "M-S-s") (kbd "M-S-k")
|
||||
(kbd "M-S-j") (kbd "M-S-t")
|
||||
(kbd "M-S-k") (kbd "M-S-s")))
|
||||
|
||||
;;;###autoload
|
||||
(defun doom-bepo-rotate-collection-keymaps-h-builder (cr-style)
|
||||
"Build a hook that remaps evil-collection customizations to be more natural
|
||||
with Bépo keyboard layout, according to CR-STYLE (see `doom-bepo-cr-rotation-style')."
|
||||
(let* ((cr-style (or cr-style 'ergodis))
|
||||
(doom-bepo-hook (lambda (_mode mode-keymaps &rest _rest)
|
||||
(dolist (keymap mode-keymaps)
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymap
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
"t" "j"
|
||||
"T" "J"
|
||||
"s" "k"
|
||||
"S" "K"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
"j" "t"
|
||||
"J" "T"
|
||||
"k" "s"
|
||||
"K" "S"
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-C") (kbd "M-H")
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-T") (kbd "M-J")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-S") (kbd "M-K")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "M-R") (kbd "M-L")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-J") (kbd "M-T")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "M-K") (kbd "M-S"))
|
||||
(cond ((eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymap
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C"
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-H") (kbd "M-R")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "M-L") (kbd "M-C")))
|
||||
(t
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymap
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R"
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-H") (kbd "M-C")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "M-L") (kbd "M-R"))))
|
||||
(defun +layout-bepo-rotate-é-quotes-bare-keymap (keymaps)
|
||||
"Rotate [w<>] with [é«»] in KEYMAP."
|
||||
(evil-collection-translate-key nil keymaps
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"«" "<"
|
||||
"»" ">"
|
||||
(kbd "C-é") (kbd "C-w")
|
||||
(kbd "C-«") (kbd "C-<")
|
||||
(kbd "C-»") (kbd "C->")
|
||||
(kbd "M-é") (kbd "M-w")
|
||||
(kbd "M-«") (kbd "M-<")
|
||||
(kbd "M-»") (kbd "M->")
|
||||
(kbd "C-S-é") (kbd "C-S-w")
|
||||
(kbd "C-S-«") (kbd "C-S-<")
|
||||
(kbd "C-S-»") (kbd "C-S->")
|
||||
(kbd "M-S-é") (kbd "M-S-w")
|
||||
(kbd "M-S-«") (kbd "M-S-<")
|
||||
(kbd "M-S-»") (kbd "M-S->")))
|
||||
|
||||
;;;###autoload
|
||||
(defun +layout-bepo-rotate-cr-bare-keymap (keymaps &optional cr-style)
|
||||
"Rotate [hl] with [cr] in KEYMAP.
|
||||
|
||||
(evil-collection-translate-key '(insert) keymap
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-C") (kbd "M-H")
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-T") (kbd "M-J")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-S") (kbd "M-K")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "M-R") (kbd "M-L")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-J") (kbd "M-T")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "M-K") (kbd "M-S"))
|
||||
(cond ((eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key '(insert) keymap
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-H") (kbd "M-R")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "M-L") (kbd "M-C")))
|
||||
(t
|
||||
(evil-collection-translate-key '(insert) keymap
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-H") (kbd "M-C")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "M-L") (kbd "M-R")
|
||||
)))
|
||||
If CR-STYLE is nil or 'ergodis, the old 'c' bindings will be mapped on 'l' and
|
||||
the old 'r' on 'h'.
|
||||
|
||||
;; <> en direct
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymap
|
||||
"«" "<"
|
||||
"»" ">")
|
||||
Otherwise if CR-STYLE is 'strict, the old 'c' bindings will be mapped on 'h' and
|
||||
the old 'r' on 'l'.
|
||||
|
||||
;; è pour aller au début de ligne
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymap
|
||||
"è" "^"
|
||||
"È" "0")
|
||||
Undefined behaviour in other cases, for forward compatibility."
|
||||
(let ((cr-style (or cr-style +layout-bepo-cr-rotation-style)))
|
||||
(evil-collection-translate-key nil keymaps
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "C-S-c") (kbd "C-S-h")
|
||||
(kbd "C-S-r") (kbd "C-S-l")
|
||||
(kbd "M-S-c") (kbd "M-S-h")
|
||||
(kbd "M-S-r") (kbd "M-S-l"))
|
||||
(if (eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key nil keymaps
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C"
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "C-S-h") (kbd "C-S-r")
|
||||
(kbd "C-S-l") (kbd "C-S-c")
|
||||
(kbd "M-S-h") (kbd "M-S-r")
|
||||
(kbd "M-S-l") (kbd "M-S-c"))
|
||||
(evil-collection-translate-key nil keymaps
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R"
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "C-S-h") (kbd "C-S-c")
|
||||
(kbd "C-S-l") (kbd "C-S-r")
|
||||
(kbd "M-S-h") (kbd "M-S-c")
|
||||
(kbd "M-S-l") (kbd "M-S-r")))))
|
||||
|
||||
;; [W] -> [É]
|
||||
;; [C-W] -> [W]
|
||||
(evil-collection-translate-key '(normal motion operator visual) keymap
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"w" (kbd "C-w")
|
||||
"W" (kbd "C-w C-w"))))))
|
||||
doom-bepo-hook))
|
||||
;;;###autoload
|
||||
(defun +layout-bepo-rotate-bare-keymap (keymaps &optional cr-style)
|
||||
"Rotate [hjklw<>] with [ctsré«»] in KEYMAP.
|
||||
See `+layout-bepo-cr-rotation-style' for the meaning of CR-STYLE"
|
||||
(+layout-bepo-rotate-cr-bare-keymap keymaps cr-style)
|
||||
(+layout-bepo-rotate-ts-bare-keymap keymaps)
|
||||
(+layout-bepo-rotate-é-quotes-bare-keymap keymaps))
|
||||
|
||||
;;;###autoload
|
||||
(defun +layout-bepo-rotate-evil-keymap (&optional cr-style)
|
||||
"Remap evil-{normal,operator,motion,...}-state-map to be more natural with
|
||||
Bépo keyboard layout.
|
||||
|
||||
See `+layout-bepo-cr-rotation-style' for the meaning of CR-STYLE."
|
||||
(let ((cr-style (or cr-style +layout-bepo-cr-rotation-style)))
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
"t" "j"
|
||||
"T" "J"
|
||||
"s" "k"
|
||||
"S" "K"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
"j" "t"
|
||||
"J" "T"
|
||||
"k" "s"
|
||||
"K" "S")
|
||||
(if (eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C")
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-visual-state-map evil-operator-state-map)
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R"))
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S"))
|
||||
(if (eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C"))
|
||||
(evil-collection-translate-key nil '(evil-insert-state-map)
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R")))
|
||||
|
||||
;; <> as direct access
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-operator-state-map)
|
||||
"«" "<"
|
||||
"»" ">")
|
||||
|
||||
;; " è replaces ^0 to go at BOL
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-operator-state-map)
|
||||
"è" "^"
|
||||
"È" "0")
|
||||
|
||||
;; [W] -> [É]
|
||||
;; [C-W] -> [W]
|
||||
(evil-collection-translate-key nil
|
||||
'(evil-normal-state-map evil-motion-state-map evil-operator-state-map)
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"w" (kbd "C-w")
|
||||
"W" (kbd "C-w C-w"))))
|
||||
|
||||
;;;###autoload
|
||||
(defun +layout-bepo-rotate-keymaps (keymaps &optional cr-style)
|
||||
"Remap evil-collection keybinds in KEYMAPS for Bépo keyboard keyboard layouts.
|
||||
|
||||
Remappings are done according to CR-STYLE (see
|
||||
`+layout-bepo-cr-rotation-style')."
|
||||
(let ((cr-style (or cr-style +layout-bepo-cr-rotation-style)))
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymaps
|
||||
"c" "h"
|
||||
"C" "H"
|
||||
"t" "j"
|
||||
"T" "J"
|
||||
"s" "k"
|
||||
"S" "K"
|
||||
"r" "l"
|
||||
"R" "L"
|
||||
"j" "t"
|
||||
"J" "T"
|
||||
"k" "s"
|
||||
"K" "S"
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-C") (kbd "M-H")
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-T") (kbd "M-J")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-S") (kbd "M-K")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "M-R") (kbd "M-L")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-J") (kbd "M-T")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "M-K") (kbd "M-S"))
|
||||
(if (eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymaps
|
||||
"h" "r"
|
||||
"H" "R"
|
||||
"l" "c"
|
||||
"L" "C"
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-H") (kbd "M-R")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "M-L") (kbd "M-C"))
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymaps
|
||||
"h" "c"
|
||||
"H" "C"
|
||||
"l" "r"
|
||||
"L" "R"
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-H") (kbd "M-C")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "M-L") (kbd "M-R")))
|
||||
|
||||
(evil-collection-translate-key '(insert) keymaps
|
||||
(kbd "C-c") (kbd "C-h")
|
||||
(kbd "C-C") (kbd "C-H")
|
||||
(kbd "C-t") (kbd "C-j")
|
||||
(kbd "C-T") (kbd "C-J")
|
||||
(kbd "C-s") (kbd "C-k")
|
||||
(kbd "C-S") (kbd "C-K")
|
||||
(kbd "C-r") (kbd "C-l")
|
||||
(kbd "C-R") (kbd "C-L")
|
||||
(kbd "C-j") (kbd "C-t")
|
||||
(kbd "C-J") (kbd "C-T")
|
||||
(kbd "C-k") (kbd "C-s")
|
||||
(kbd "C-K") (kbd "C-S")
|
||||
(kbd "M-c") (kbd "M-h")
|
||||
(kbd "M-C") (kbd "M-H")
|
||||
(kbd "M-t") (kbd "M-j")
|
||||
(kbd "M-T") (kbd "M-J")
|
||||
(kbd "M-s") (kbd "M-k")
|
||||
(kbd "M-S") (kbd "M-K")
|
||||
(kbd "M-r") (kbd "M-l")
|
||||
(kbd "M-R") (kbd "M-L")
|
||||
(kbd "M-j") (kbd "M-t")
|
||||
(kbd "M-J") (kbd "M-T")
|
||||
(kbd "M-k") (kbd "M-s")
|
||||
(kbd "M-K") (kbd "M-S"))
|
||||
(if (eq cr-style 'ergodis)
|
||||
(evil-collection-translate-key '(insert) keymaps
|
||||
(kbd "C-h") (kbd "C-r")
|
||||
(kbd "C-H") (kbd "C-R")
|
||||
(kbd "C-l") (kbd "C-c")
|
||||
(kbd "C-L") (kbd "C-C")
|
||||
(kbd "M-h") (kbd "M-r")
|
||||
(kbd "M-H") (kbd "M-R")
|
||||
(kbd "M-l") (kbd "M-c")
|
||||
(kbd "M-L") (kbd "M-C"))
|
||||
(evil-collection-translate-key '(insert) keymaps
|
||||
(kbd "C-h") (kbd "C-c")
|
||||
(kbd "C-H") (kbd "C-C")
|
||||
(kbd "C-l") (kbd "C-r")
|
||||
(kbd "C-L") (kbd "C-R")
|
||||
(kbd "M-h") (kbd "M-c")
|
||||
(kbd "M-H") (kbd "M-C")
|
||||
(kbd "M-l") (kbd "M-r")
|
||||
(kbd "M-L") (kbd "M-R")))
|
||||
|
||||
;; <> en direct
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymaps
|
||||
"«" "<"
|
||||
"»" ">")
|
||||
|
||||
;; è pour aller au début de ligne
|
||||
(evil-collection-translate-key '(normal motion visual operator) keymaps
|
||||
"è" "^"
|
||||
"È" "0")
|
||||
|
||||
;; [W] -> [É]
|
||||
;; [C-W] -> [W]
|
||||
(evil-collection-translate-key '(normal motion operator visual) keymaps
|
||||
"é" "w"
|
||||
"É" "W"
|
||||
"w" (kbd "C-w")
|
||||
"W" (kbd "C-w C-w"))))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue