Update icat kitten docs

This commit is contained in:
Kovid Goyal 2023-01-07 14:37:32 +05:30
parent 41207aa830
commit 1fe84f6057
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -7,6 +7,7 @@ The ``icat`` kitten can be used to display arbitrary images in the |kitty|
terminal. Using it is as simple as:: terminal. Using it is as simple as::
kitty +kitten icat image.jpeg kitty +kitten icat image.jpeg
kitty-tool icat image.jpeg
It supports all image types supported by `ImageMagick It supports all image types supported by `ImageMagick
<https://www.imagemagick.org>`__. It even works over SSH. For details, see the <https://www.imagemagick.org>`__. It even works over SSH. For details, see the
@ -20,8 +21,9 @@ Then you can simply use ``icat image.png`` to view images.
.. note:: .. note::
`ImageMagick <https://www.imagemagick.org>`__ must be installed for icat `ImageMagick <https://www.imagemagick.org>`__ must be installed for the
kitten to work. full range of image types. Without it only PNG/JPG/GIF/BMP/TIFF/WEBP are
supported.
.. note:: .. note::
@ -35,16 +37,15 @@ Then you can simply use ``icat image.png`` to view images.
The ``icat`` kitten has various command line arguments to allow it to be used The ``icat`` kitten has various command line arguments to allow it to be used
from inside other programs to display images. In particular, :option:`--place`, from inside other programs to display images. In particular, :option:`--place`,
:option:`--detect-support`, :option:`--silent` and :option:`--detect-support` and :option:`--print-window-size`.
:option:`--print-window-size`.
If you are trying to integrate icat into a complex program like a file manager If you are trying to integrate icat into a complex program like a file manager
or editor, there are a few things to keep in mind. icat works by communicating or editor, there are a few things to keep in mind. icat works by communicating
over the TTY device, it both writes to and reads from the TTY. So it is over the TTY device, it both writes to and reads from the TTY. So it is
imperative that while it is running the host program does not do any TTY I/O. imperative that while it is running the host program does not do any TTY I/O.
Any key presses or other input from the user on the TTY device will be Any key presses or other input from the user on the TTY device will be
discarded. At a minimum, you should use the :option:`--silent` and discarded. At a minimum, you should use the :option:`--transfer-mode`
:option:`--transfer-mode` command line arguments. To be really robust you should command line arguments. To be really robust you should
consider writing proper support for the :doc:`kitty graphics protocol consider writing proper support for the :doc:`kitty graphics protocol
</graphics-protocol>` in the program instead. Nowadays there are many libraries </graphics-protocol>` in the program instead. Nowadays there are many libraries
that have support for it. that have support for it.