Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remappage du clavier

1 réponse
Avatar
jj.r&torr&
Je d=C3=A9sire =C3=A9changer les touches "`" et "=C2=B2" j'ai pour =C3=A7a =
mis dans mon
fichier d'initialisation :

#+BEGIN_SRC emacs-lisp
;; permutation des touches "`" et "=C2=B2"
(define-key key-translation-map (kbd "=C2=B2") (kbd "`")) ; backquote=20
(define-key key-translation-map (kbd "M-=C3=A8") (kbd "=C2=B2")) ;=20
#+END_SRC

=C3=87a marche, mais si je le place au d=C3=A9but du fichier d'initialisati=
on, les
autres red=C3=A9finitions du clavier sont masqu=C3=A9es. Par exemple

(setq f7-keymap (make-sparse-keymap))
(define-key global-map [f7] f7-keymap)
(define-key f7-keymap [f7] 'org-agenda-list)
(define-key f7-keymap "c" 'org-capture)

La touche "F7" devient undefined.
Par contre si je le place =C3=A0 la fin, pas de probl=C3=A8me.
J'aimerais bien comprendre et si possible placer mon remappage n'importe
ou.
J'ai cherch=C3=A9 un peu dans (info "(elisp)keymaps") mais mon anglais is v=
ery
moyen."

Merci d'avance

--
JJR.

1 réponse

Avatar
vincent.belaiche
jj.r&torr&@gmail.com (Jean-Jacques Rétorré) writes:
Je désire échanger les touches "`" et "²" j'ai pour ça mis dans mon
fichier d'initialisation :
#+BEGIN_SRC emacs-lisp
;; permutation des touches "`" et ""
(define-key key-translation-map (kbd "") (kbd "`")) ; backquote
(define-key key-translation-map (kbd "M-") (kbd "")) ;
#+END_SRC
Ça marche, mais si je le place au début du fichier d'initialisation, les
autres redéfinitions du clavier sont masquées. Par exemple
(setq f7-keymap (make-sparse-keymap))
(define-key global-map [f7] f7-keymap)
(define-key f7-keymap [f7] 'org-agenda-list)
(define-key f7-keymap "c" 'org-capture)
La touche "F7" devient undefined.
Par contre si je le place à la fin, pas de problème.
J'aimerais bien comprendre et si possible placer mon remappage n'importe
ou.
J'ai cherché un peu dans (info "(elisp)keymaps") mais mon anglais is very
moyen."
Merci d'avance
--
JJR.

Je ne comprends pas très bien ton code, moi j'aurais mis (pas testé) :
#+BEGIN_SRC emacs-lisp
;; permutation des touches "`" et "²"
(define-key key-translation-map [?`] [?²])
(define-key key-translation-map [?²] [?`] )
(define-key key-translation-map [(meta ?`)] [(meta ?²)])
(define-key key-translation-map [(meta ?²)] [(meta ?`)] )
(define-key key-translation-map [(control ?`)] [(control ?²)])
(define-key key-translation-map [(control ?²)] [(control ?`)] )
(define-key key-translation-map [(meta control ?`)] [(meta control ?²)])
(define-key key-translation-map [(meta control ?²)] [(meta control ?`)] )
#+END_SRC
Vincent.