Configuration, personnalisation, paramètres de plateforme et références API pour Pi.

tmux Configuration

Pi fonctionne à l'intérieur de tmux, mais tmux supprime par défaut les informations de modificateur de certaines touches. Sans configuration, Shift+Enter et Ctrl+Enter sont généralement impossibles à distinguer du simple Enter.

Configuration recommandée

Ajouter à ~/.tmux.conf:

set -g extended-keys on
set -g extended-keys-format csi-u

Puis redémarrez complètement tmux:

tmux kill-server
tmux

Pi demande automatiquement des rapports de touches étendus lorsque le protocole du clavier Kitty n'est pas disponible. Avec extended-keys-format csi-u, tmux transmet les clés modifiées au format CSI-u, qui est la configuration la plus fiable. L'option extended-keys-format nécessite tmux 3.5 ou version ultérieure.

Pourquoi csi-u est recommandé

Avec seulement:

set -g extended-keys on

tmux est par défaut extended-keys-format xterm. Lorsqu'une application demande un rapport de clé étendu, les clés modifiées sont transmises au format xterm modifyOtherKeys tel que:

  • Ctrl+C\x1b[27;5;99~
  • Ctrl+D\x1b[27;5;100~
  • Ctrl+Enter\x1b[27;5;13~

Avec extended-keys-format csi-u, les mêmes clés sont transmises comme:

  • Ctrl+C\x1b[99;5u
  • Ctrl+D\x1b[100;5u
  • Ctrl+Enter\x1b[13;5u

Pi prend en charge les deux formats, mais csi-u est la configuration tmux recommandée.

Ce que cela corrige

Sans les touches étendues tmux, les touches Entrée modifiées se réduisent aux séquences héritées:

Clé Sans clés externes Avec csi-u
Entrer \r \r
Maj+Entrée \r \x1b[13;2u
Ctrl+Entrée \r \x1b[13;5u
Alt/Option+Entrée \x1b\r \x1b[13;3u

Cela affecte les raccourcis clavier par défaut (Enter pour soumettre, Shift+Enter pour une nouvelle ligne) et tous les raccourcis clavier personnalisés utilisant Entrée modifiée.

Exigences

  • tmux 3.5 ou version ultérieure pour extended-keys-format csi-u (exécutez tmux -V pour vérifier)
  • Un émulateur de terminal prenant en charge les clés étendues (Ghostty, Kitty, iTerm2, WezTerm, Windows Terminal)

Avec tmux 3.2 à 3.4, omettez extended-keys-format csi-u; Pi prend toujours en charge le format xterm modifyOtherKeys par défaut de tmux.