integrations.rst 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. :tocdepth: 2
  2. Integrations with other tools
  3. ================================
  4. kitty provides extremely powerful interfaces such as :doc:`remote-control` and
  5. :doc:`kittens/custom` and :doc:`kittens/icat` that allow it to be integrated
  6. with other tools seamlessly.
  7. Image and document viewers
  8. ----------------------------
  9. Powered by kitty's :doc:`graphics-protocol` there exist many tools for viewing
  10. images and other types of documents directly in your terminal, even over SSH.
  11. .. _tool_termpdf:
  12. `termpdf.py <https://github.com/dsanson/termpdf.py>`_
  13. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  14. A terminal PDF/DJVU/CBR viewer
  15. .. _tool_tdf:
  16. `tdf <https://github.com/itsjunetime/tdf>`_
  17. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  18. A terminal PDF viewer
  19. .. _tool_fancy_cat:
  20. `fancy-cat <https://github.com/freref/fancy-cat>`_
  21. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  22. A terminal PDF viewer
  23. .. _tool_meowpdf:
  24. `meowpdf <https://github.com/monoamine11231/meowpdf>`_
  25. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  26. A terminal PDF viewer with GUI-like usage and Vim-like keybindings written in Rust
  27. .. _tool_mcat:
  28. `mcat <https://github.com/Skardyy/mcat>`_
  29. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  30. Display various types of files nicely formatted with images in the terminal
  31. .. _tool_ranger:
  32. `ranger <https://github.com/ranger/ranger>`_
  33. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  34. A terminal file manager, with previews of file contents powered by kitty's
  35. graphics protocol.
  36. .. _tool_nnn:
  37. `nnn <https://github.com/jarun/nnn/>`_
  38. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  39. Another terminal file manager, with previews of file contents powered by kitty's
  40. graphics protocol.
  41. .. _tool_yazi:
  42. `Yazi <https://github.com/sxyazi/yazi>`_
  43. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  44. Blazing fast terminal file manager, with built-in kitty graphics protocol support
  45. (implemented both Classic protocol and Unicode placeholders).
  46. .. _tool_clifm:
  47. `clifm <https://github.com/leo-arch/clifm>`__
  48. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  49. The shell-like, command line terminal file manager, uses the kitty graphics and
  50. keyboard protocols.
  51. .. _tool_hunter:
  52. `hunter <https://github.com/rabite0/hunter>`_
  53. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  54. Another terminal file manager, with previews of file contents powered by kitty's
  55. graphics protocol.
  56. .. _tool_presentterm:
  57. `presenterm <https://github.com/mfontanini/presenterm>`_
  58. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  59. Show markdown based slides with images in your terminal, powered by the
  60. kitty graphics protocol.
  61. .. _tool_term_image:
  62. `term-image <https://github.com/AnonymouX47/term-image>`__
  63. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  64. Tool to browse images in a terminal using kitty's graphics protocol.
  65. .. _tool_koneko:
  66. `koneko <https://github.com/twenty5151/koneko>`_
  67. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  68. Browse images from the pixiv artist community directly in kitty.
  69. .. _tool_viu:
  70. `viu <https://github.com/atanunq/viu>`_
  71. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  72. View images in the terminal, similar to kitty's icat.
  73. .. _tool_nb:
  74. `nb <https://github.com/xwmx/nb>`_
  75. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  76. Command line and local web note-taking, bookmarking, archiving, and knowledge
  77. base application that uses kitty's graphics protocol for images.
  78. .. _tool_w3m:
  79. `w3m <https://github.com/tats/w3m>`_
  80. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  81. A text mode WWW browser that supports kitty's graphics protocol to display
  82. images.
  83. .. _tool_awrit:
  84. `awrit <https://github.com/chase/awrit>`__
  85. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  86. A full Chromium based web browser running in the terminal using kitty's
  87. graphics protocol.
  88. .. _tool_chawan:
  89. `chawan <https://sr.ht/~bptato/chawan/>`__
  90. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  91. A text mode WWW browser that supports kitty's graphics protocol to display
  92. images.
  93. .. _tool_mpv:
  94. `mpv <https://github.com/mpv-player/mpv/commit/874e28f4a41a916bb567a882063dd2589e9234e1>`_
  95. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  96. A video player that can play videos in the terminal.
  97. .. _tool_timg:
  98. `timg <https://github.com/hzeller/timg>`_
  99. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  100. A terminal image and video viewer, that displays static and animated images or
  101. plays videos. Fast multi-threaded loading, JPEG exif rotation, grid view and
  102. connecting to the webcam make it a versatile terminal utility.
  103. System and data visualisation tools
  104. ---------------------------------------
  105. .. _tool_neofetch:
  106. `neofetch <https://github.com/dylanaraps/neofetch>`_
  107. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  108. A command line system information tool that shows images using kitty's graphics
  109. protocol
  110. .. _tool_matplotlib:
  111. matplotlib
  112. ^^^^^^^^^^^^^^
  113. There exist multiple backends for matplotlib to draw images directly in kitty.
  114. * `matplotlib-backend-kitty <https://github.com/jktr/matplotlib-backend-kitty>`__
  115. * `kitcat <https://github.com/mil-ad/kitcat>`__
  116. .. _tool_KittyTerminalImage:
  117. `KittyTerminalImages.jl <https://github.com/simonschoelly/KittyTerminalImages.jl>`_
  118. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  119. Show images from Julia directly in kitty
  120. .. _tool_euporie:
  121. `euporie <https://github.com/joouha/euporie>`_
  122. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  123. A text-based user interface for running and editing Jupyter notebooks, powered
  124. by kitty's graphics protocol for displaying plots
  125. .. _tool_gnuplot:
  126. `gnuplot <http://www.gnuplot.info/>`_
  127. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  128. A graphing and data visualization tool that can be made to display its output in
  129. kitty with the following bash snippet:
  130. .. code-block:: sh
  131. function iplot {
  132. cat <<EOF | gnuplot
  133. set terminal pngcairo enhanced font 'Fira Sans,10'
  134. set autoscale
  135. set samples 1000
  136. set output '|kitten icat --stdin yes'
  137. set object 1 rectangle from screen 0,0 to screen 1,1 fillcolor rgb"#fdf6e3" behind
  138. plot $@
  139. set output '/dev/null'
  140. EOF
  141. }
  142. Add this to bashrc and then to plot a function, simply do:
  143. .. code-block:: sh
  144. iplot 'sin(x*3)*exp(x*.2)'
  145. .. _tool_k-nine:
  146. `k-nine <https://github.com/talwrii/kitty-plotnine>`_
  147. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  148. A wrapper around the :code:`plotnine` library which lets you plot data from the command-line with bash one-liners.
  149. .. tool_tgutui:
  150. `tgutui <https://github.com/tgu-ltd/tgutui>`_
  151. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  152. A Terminal Operating Test hardware equipment
  153. .. tool_onefetch:
  154. `onefetch <https://github.com/o2sh/onefetch>`_
  155. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  156. A tool to fetch information about your git repositories
  157. .. tool_patat:
  158. `patat <https://github.com/jaspervdj/patat>`_
  159. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  160. Terminal based presentations using pandoc and kitty's image protocol for
  161. images
  162. .. tool_wttr:
  163. `wttr.in <https://github.com/chubin/wttr.in>`_
  164. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  165. A tool to display weather information in your terminal with curl
  166. .. tool_wl_clipboard:
  167. `wl-clipboard-manager <https://github.com/maximbaz/wl-clipboard-manager>`_
  168. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  169. View and manage the system clipboard under Wayland in your kitty terminal
  170. .. tool_nemu:
  171. `NEMU <https://github.com/nemuTUI/nemu>`__
  172. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  173. TUI for QEMU used to manage virtual machines, can display the Virtual Machine
  174. in the terminal using the kitty graphics protocol.
  175. Editor integration
  176. -----------------------
  177. |kitty| can be integrated into many different terminal based text editors to add
  178. features such a split windows, previews, REPLs etc.
  179. .. tool_kakoune:
  180. `kakoune <https://kakoune.org/>`_
  181. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  182. Integrates with kitty to use native kitty windows for its windows/panels and
  183. REPLs.
  184. .. tool_vim_slime:
  185. `vim-slime <https://github.com/jpalardy/vim-slime#kitty>`_
  186. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  187. Uses kitty remote control for a Lisp REPL.
  188. .. tool_vim_kitty_navigator:
  189. `vim-kitty-navigator <https://github.com/knubie/vim-kitty-navigator>`_
  190. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  191. Allows you to navigate seamlessly between vim and kitty splits using a
  192. consistent set of hotkeys.
  193. .. tool_vim_test:
  194. `vim-test <https://github.com/vim-test/vim-test>`_
  195. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  196. Allows easily running tests in a terminal window
  197. .. tool_nvim_image_viewers:
  198. Various image viewing plugins for editors
  199. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  200. * `snacks.nvim <https://github.com/folke/snacks.nvim>`__ - Enables seamless inline images in various file formats within nvim
  201. * `image.nvim <https://github.com/3rd/image.nvim>`_ - Bringing images to neovim
  202. * `image_preview.nvim <https://github.com/adelarsq/image_preview.nvim/>`_ - Image preview for neovim
  203. * `hologram.nvim <https://github.com/edluffy/hologram.nvim>`_ - view images inside nvim
  204. Scrollback manipulation
  205. -------------------------
  206. .. tool_kitty_scrollback_nvim:
  207. `kitty-scrollback.nvim <https://github.com/mikesmithgh/kitty-scrollback.nvim>`_
  208. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  209. Browse the scrollback buffer with Neovim, with simple key actions for efficient
  210. copy/paste and even execution of commands.
  211. .. tool_kitty_search:
  212. `kitty-search <https://github.com/trygveaa/kitty-kitten-search>`_
  213. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  214. Live incremental search of the scrollback buffer.
  215. .. tool_kitty_grab:
  216. `kitty-grab <https://github.com/yurikhan/kitty_grab>`_
  217. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  218. Keyboard based text selection for the kitty scrollback buffer.
  219. Desktop panels
  220. -------------------------
  221. `kitty panel <https://github.com/5hubham5ingh/kitty-panel>`__
  222. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  223. A system panel for Kitty terminal that displays real-time system metrics using terminal-based utilities.
  224. `pawbar <https://github.com/codelif/pawbar>`__
  225. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  226. A kitten-panel based desktop panel for your desktop
  227. Miscellaneous
  228. ------------------
  229. .. tool_gattino:
  230. `gattino <https://github.com/salvozappa/gattino>`__
  231. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  232. Integrate kitty with an LLM to convert plain language prompts into shell
  233. commands.
  234. .. tool_kitty_smart_tab:
  235. `kitty-smart-tab <https://github.com/yurikhan/kitty-smart-tab>`_
  236. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  237. Use keys to either control tabs or pass them onto running applications if no
  238. tabs are present
  239. .. tool_kitty_smart_scroll:
  240. `kitty-smart-scroll <https://github.com/yurikhan/kitty-smart-scroll>`_
  241. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  242. Use keys to either scroll or pass them onto running applications if no
  243. scrollback buffer is present
  244. .. tool_kitti3:
  245. `kitti3 <https://github.com/LandingEllipse/kitti3>`_
  246. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  247. Allow using kitty as a drop-down terminal under the i3 window manager
  248. .. tool_weechat_hints:
  249. `weechat-hints <https://github.com/GermainZ/kitty-weechat-hints>`_
  250. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  251. URL hints kitten for WeeChat that works without having to use WeeChat's
  252. raw-mode.
  253. .. tool_glkitty:
  254. `glkitty <https://github.com/michaeljclark/glkitty>`_
  255. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  256. C library to draw OpenGL shaders in the terminal with a glgears demo