tmux Setup

Pi works inside tmux, but tmux strips modifier information from certain keys by default. Without configuration, Shift+Enter and Ctrl+Enter are usually indistinguishable from plain Enter.

Add to ~/.tmux.conf:

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

Then restart tmux fully:

tmux kill-server
tmux

Pi requests extended key reporting automatically when Kitty keyboard protocol is not available. With extended-keys-format csi-u, tmux forwards modified keys in CSI-u format, which is the most reliable configuration. The extended-keys-format option requires tmux 3.5 or later.

With only:

set -g extended-keys on

tmux defaults to extended-keys-format xterm. When an application requests extended key reporting, modified keys are forwarded in xterm modifyOtherKeys format such as:

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

With extended-keys-format csi-u, the same keys are forwarded as:

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

Pi supports both formats, but csi-u is the recommended tmux setup.

What This Fixes

Without tmux extended keys, modified Enter keys collapse to legacy sequences:

KeyWithout extkeysWith csi-u
Enter\r\r
Shift+Enter\r\x1b[13;2u
Ctrl+Enter\r\x1b[13;5u
Alt/Option+Enter\x1b\r\x1b[13;3u

This affects the default keybindings (Enter to submit, Shift+Enter for newline) and any custom keybindings using modified Enter.

Requirements

  • tmux 3.5 or later for extended-keys-format csi-u (run tmux -V to check)
  • A terminal emulator that supports extended keys (Ghostty, Kitty, iTerm2, WezTerm, Windows Terminal)

With tmux 3.2 through 3.4, omit extended-keys-format csi-u; Pi still supports tmux's default xterm modifyOtherKeys format.

This was unofficially built for personal use. No JavaScript is required, page loads are faster, and the styling is plain for better readability. For the official documentation, visit https://pi.dev/docs. The content of the docs is from the Pi repository and is licensed under the MIT License.