En tant que rôdeur de longue date sur Stack Exchange, j'ai trouvé des réponses à la plupart de mes problèmes sans avoir à créer un compte. Mais aujourd'hui, je suis complètement perplexe avec ce problème, alors je demande de l'aide.
J'ai récemment découvert Byobu, un frontend pour Tmux qui utilise les touches Fn pour les tâches courantes. C'est une véritable bénédiction pour le multitâche via SSH vers un serveur Linux distant à partir du PC Windows que je dois utiliser au travail.
Actuellement, j'utilise gnome-terminal via un tunnel SSH car PuTTY et MinTTY (le terminal par défaut avec Cygwin) semblent envoyer les mauvais codes de touche pour les touches de fonction.
Je me demandais s'il y avait un moyen de remapper certains codes d'échappement afin qu'au moins un de mes terminaux Windows puisse fonctionner correctement avec Tmux. (Je suppose que je pourrais simplement apprendre les combinaisons de touches Ctrl + b / Ctrl + a, mais effectuer une combinaison de touches suivie d'une autre touche ne me semble pas vraiment ergonomique.)
Dans PuTTY, définir Terminal> Clavier> "Les touches de fonction et le clavier" sur "XtermR6" semble pousser normalement les séquences d'échappement correctes pour les touches Fn, mais les modificateurs Shift et Ctrl sont cassés. Je peux utiliser vim pour déterminer quels codes sont envoyés par chaque terminal. En attendant, je pense que j'ai peut-être recherché la combinaison que tmux recherche dans son code source , mais je ne suis pas sûr:
Key Tmux Expects Gnome-Terminal PuTTY MinTTY
Normal F3: ^[0R ^[0R ^[0R
Ctrl+F3 "\033[13^" ^[01;5R ^[0R ^[[1;5R
Shift+F3 "\033[13$" ^[01;2R ^[[25~ ^[[1;2R
Ctrl+Shift+F3 "\033[13@" ^[01;6R ^[[25~ ^[[1;6R
Jusqu'à présent, MinTTY ressemble au meilleur candidat, mais cela me pose un problème complètement différent où byobu ignore 95% des pressions sur les touches Fn, les transmettant directement à l'application cliente. Je peux exécuter cat -v et envoyer du spam sur la touche F2 (nouvelle fenêtre), et il affichera "^ [0Q" quatre ou cinq fois avant d'apparaître soudainement dans une nouvelle fenêtre.
Si quelqu'un a des conseils, ce serait bienvenu. La plupart des choses que j'ai trouvées sur Internet ont dit de changer le type de terminal, mais j'ai essayé littéralement toutes les combinaisons proposées par chacun des deux programmes.
Merci!
kf3
quel que soit le TERM que vous utilisez lors de la connexion à tmux ) ainsi que les séquences de clés modifiées de style xterm dexterm-keys.c
. Ainsi, les séquences que vous signalez à partir de Gnome-Terminal et MinTTY (bien que les caractères d'échappement + zéros dans vos séquences doivent être escape + letter-ohs (aka SS3) doivent être reconnus par tmux , mais il ne les transmettra que si vous avez lexterm-keys
option activée