Configuración, personalización, ajustes de plataforma y referencias de API para Pi.

tmux Configuración

Pi funciona dentro de tmux, pero tmux elimina la información modificadora de ciertas teclas de forma predeterminada. Sin configuración, Shift+Enter y Ctrl+Enter suelen ser indistinguibles del Enter simple.

Configuración recomendada

Añadir a ~/.tmux.conf:

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

Luego reinicie tmux completamente:

tmux kill-server
tmux

Pi solicita informes de teclas extendidos automáticamente cuando el protocolo de teclado Kitty no está disponible. Con extended-keys-format csi-u, tmux reenvía claves modificadas en formato CSI-u, que es la configuración más confiable. La opción extended-keys-format requiere tmux 3.5 o posterior.

Por qué se recomienda csi-u

Con solo:

set -g extended-keys on

tmux por defecto es extended-keys-format xterm. Cuando una aplicación solicita informes de claves ampliados, las claves modificadas se reenvían en formato xterm modifyOtherKeys, como por ejemplo:

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

Con extended-keys-format csi-u, se reenvían las mismas claves que:

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

Pi admite ambos formatos, pero csi-u es la configuración tmux recomendada.

Lo que esto soluciona

Sin las teclas extendidas tmux, las teclas Enter modificadas colapsan en secuencias heredadas:

Llave Sin teclas externas Con csi-u
Ingresar \r \r
Mayús+Entrar \r \x1b[13;2u
Ctrl+Entrar \r \x1b[13;5u
Alt/Opción+Intro \x1b\r \x1b[13;3u

Esto afecta las combinaciones de teclas predeterminadas (Enter para enviar, Shift+Enter para nueva línea) y cualquier combinación de teclas personalizada que utilice Enter modificado.

Requisitos

  • tmux 3.5 o posterior para extended-keys-format csi-u (ejecute tmux -V para verificar)
  • Un emulador de terminal que admite claves extendidas (Ghostty, Kitty, iTerm2, WezTerm, Windows Terminal)

Con tmux 3.2 a 3.4, omita extended-keys-format csi-u; Pi todavía admite el formato xterm modifyOtherKeys predeterminado de tmux.