Configuring Kitty Terminal for Claude Code Multi-line Input

By Ryan Schumacher (@ryeyam.bsky.social)
Published:

Claude Code and Kitty Terminal

Getting multi-line input to work properly when using Claude Code in Kitty terminal requires a simple configuration change.

When using Claude Code in Visual Studio Code integrated terminal, it offers the /terminal-setup command which enables pressing shift+enter for a newline character. This happens because VS Code's integrated terminal has built-in handling for multi-line input, while Kitty terminal requires explicit configuration.

Kitty Keypress Mapping

We can add keypress mappings with kitty and use a condition to ensure the mapping only activates when desired, preventing conflicts with other terminal applications.

map --when-focus-on title:claude shift+enter send_text normal,application \\\n

To understand the mapping:

Steps

map --when-focus-on title:claude shift+enter send_text normal,application \\\n

Troubleshooting

If the mapping doesn't work, you can try these alternatives:

map --when-focus-on title:*claude* shift+enter send_text normal,application \\\n

map --when-focus-on cmdline:claude shift+enter send_text normal,application \\\n

For more advanced matching criteria, see the Kitty configuration documentation.