kitten-query-terminal(1)

Name
kitten-query-terminal - Query the terminal for various capabilities

Overview

This kitten is used to query kitty from terminal programs about version, values of various runtime options controlling its features, etc.

The querying is done using the (semi) standard XTGETTCAP escape sequence pioneered by xterm, so it works over SSH as well. The downside is that it is slow, since it requires a roundtrip to the terminal emulator and back.

If you want to do some of the same querying in your terminal program without depending on the kitten, you can do so, by processing the same escape codes. Search this page for XTGETTCAP to see the syntax for the escape code and read the source of this kitten to find the values of the keys for the various queries.

Source code for query_terminal

The source code for this kitten is available on GitHub.

Command line interface

kitty +kitten query_terminal [options] [query1 query2 ...]

Query the terminal this kitten is run in for various capabilities. This sends escape codes to the terminal and based on its response prints out data about supported capabilities. Note that this is a blocking operation, since it has to wait for a response from the terminal. You can control the maximum wait time via the --wait-for option.

The output is lines of the form:

query: data

If a particular query is unsupported by the running kitty version, the data will be blank.

Note that when calling this from another program, be very careful not to perform any I/O on the terminal device until this kitten exits.

Available queries are:

name:
    Terminal name (e.g. xterm-kitty)

version:
    Terminal version (e.g. 0.34.1)

allow_hyperlinks:
    The config option allow_hyperlinks in kitty.conf for allowing hyperlinks can be yes, no or ask

font_family:
    The current font's PostScript name

bold_font:
    The current bold font's PostScript name

italic_font:
    The current italic font's PostScript name

bold_italic_font:
    The current bold-italic font's PostScript name

font_size:
    The current overall font size (individual windows can have different per window font sizes)

clipboard_control:
    The config option clipboard_control in kitty.conf for allowing reads/writes to/from the clipboard

  Options

--wait-for <WAIT_FOR>
    The amount of time (in seconds) to wait for a response from the terminal, after querying it. Default: 10

Author
Kovid Goyal

Copyright
2024, Kovid Goyal