2 votes

Comment puis-je voir l'ID de la clé de l'événement bind pour remapper les clés avec zsh en temps réel ?

Je pensais qu'il y avait un moyen avec Zsh sur OSX où vous pouviez voir une impression en direct des touches pour lier les identifiants d'événements. Quelque chose comme showkey -a où il imprimera la combinaison de touches que vous venez d'appuyer. J'ai essayé le paquet showkey brew mais ça ne semble pas fonctionner.

J'essaie de corriger ma séquence de saut de mots alt+flèches gauche et droite lorsque j'utilise un clavier Windows avec mon Mac. Mais je n'arrive pas à trouver le caractère correct pour alt.

1voto

wassname Points 66

bindkey , a zle builtin, vous montrera les liaisons actuelles, discutées en détail dans la section man zshzle . Il permet de choisir parmi un certain nombre de modules intégrés ; emacs de nombreuses saveurs de vi .

xev affichera les codes des touches au fur et à mesure qu'elles sont pressées, bien que ce soit assez basique et qu'il n'affichera probablement pas les combinaisons auxquelles vous vous attendez. Il se peut que cela fasse partie du paquetage XQuartz. https://www.xquartz.org

En outre, l'Observateur d'événements de Karabiner Elements affiche les pressions sur les touches et leurs codes, mais dans un format différent de celui de l'Observateur d'événements. xev . Cela peut être plus approprié.

0voto

staffan Points 3299

Les touches de fonction et de curseur avec modificateurs envoient généralement séquences d'échappement qui consistent en caractère d'échappement suivi de quelques caractères ASCII imprimables.

Pour voir quelle séquence d'échappement une touche ou un accord de touches envoie, appuyez sur Ctrl+V et ensuite cette clé (accord). Ctrl+V supprime la signification spéciale du caractère suivant, de sorte que le caractère d'échappement au début de la séquence d'échappement est inséré comme tel. Par exemple :

mymac% ^V^\[\[D

El Left envoie la séquence de trois caractères : échappement, crochet gauche, D majuscule. ^[ part est un caractère unique non imprimable qui est représenté visuellement comme deux caractères, et que zsh affiche en vidéo inverse. Toutes les séquences d'échappement standard commencent par escape puis par une parenthèse gauche ou un O majuscule.

Alternativement, exécutez cat puis appuyez sur la touche .

mymac% cat
^\[\[D

Avec le Alt il y a une difficulté supplémentaire : il est généralement codé comme le caractère d'échappement suivi de ce que la touche non modifiée envoie. Par exemple, Alt+1 envoie l'évasion, chiffre 1. Pour les touches qui envoient elles-mêmes une séquence d'échappement, le comportement dépend du terminal : certains envoient une séquence d'échappement différente, d'autres envoient la même séquence d'échappement, d'autres encore suivent la règle générale et finissent donc par envoyer deux caractères d'échappement suivis d'un caractère imprimable. Dans ce dernier cas, avec la touche Ctrl+V seul le premier caractère d'échappement est inséré littéralement, et la touche a ensuite son effet normal. Avec la méthode cat vous verrez quelque chose commençant par ^[^[ .

De nombreux terminaux envoient la même séquence d'échappement pour une touche donnée avec un large éventail de modificateurs. Les bons terminaux vous permettent de configurer les séquences d'échappement. Ceci est possible à la fois avec Terminal et avec iTerm (dans les deux cas, à partir de l'onglet "Touches" ou "Clavier" de chaque profil).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X