1KITTY.CONF(5)                        kitty                       KITTY.CONF(5)
2
3
4

NAME

6       kitty.conf - kitty.conf Documentation
7
8       kitty  is  highly  customizable, everything from keyboard shortcuts, to
9       rendering frames-per-second. See below for  an  overview  of  all  cus‐
10       tomization possibilities.
11
12       You  can  open  the  config file within kitty by pressing ctrl+shift+f2
13       (⌘+, on macOS). A kitty.conf with commented default configurations  and
14       descriptions  will  be  created  if  the  file does not exist.  You can
15       reload the config file within kitty by pressing ctrl+shift+f5 (⌃+⌘+, on
16       macOS)  or  sending kitty the SIGUSR1 signal.  You can also display the
17       current configuration by pressing ctrl+shift+f6 (⌥+⌘+, on macOS).
18
19       kitty looks for a config file in the  OS  config  directories  (usually
20       ~/.config/kitty/kitty.conf)  but  you  can pass a specific path via the
21       kitty --config option or  use  the  KITTY_CONFIG_DIRECTORY  environment
22       variable. See kitty --config for full details.
23
24       Comments  can  be added to the config file as lines starting with the #
25       character. This works only if the # character is the first character in
26       the line.
27
28       You  can  include secondary config files via the include directive.  If
29       you use a relative path for include, it is resolved with respect to the
30       location  of  the  current config file. Note that environment variables
31       are expanded, so ${USER}.conf becomes name.conf if USER=name. Also, you
32       can  use globinclude to include files matching a shell glob pattern and
33       envinclude to include configuration from environment variables. For ex‐
34       ample:
35
36          include other.conf
37          # Include *.conf files from all subdirs of kitty.d inside the kitty config dir
38          globinclude kitty.d/**/*.conf
39          # Include the *contents* of all env vars starting with KITTY_CONF_
40          envinclude KITTY_CONF_*
41
42       NOTE:
43          Syntax   highlighting   for  kitty.conf  in  vim  is  available  via
44          vim-kitty.
45
46       kitty has very powerful font management. You can  configure  individual
47       font faces and even specify special fonts for particular characters.
48
49       font_family, bold_font, italic_font, bold_italic_font
50
51          font_family      monospace
52          bold_font        auto
53          italic_font      auto
54          bold_italic_font auto
55
56       You  can  specify different fonts for the bold/italic/bold-italic vari‐
57       ants.  To get a full list of supported fonts use the kitty  +list-fonts
58       command.   By  default they are derived automatically, by the OSes font
59       system. When bold_font or bold_italic_font is set to auto on macOS, the
60       priority of bold fonts is semi-bold, bold, heavy. Setting them manually
61       is useful for font families that have many weight variants  like  Book,
62       Medium, Thick, etc.  For example:
63
64          font_family      Operator Mono Book
65          bold_font        Operator Mono Medium
66          italic_font      Operator Mono Book Italic
67          bold_italic_font Operator Mono Medium Italic
68
69       font_size
70
71          font_size 11.0
72
73       Font size (in pts)
74
75       force_ltr
76
77          force_ltr no
78
79       kitty  does  not  support  BIDI  (bidirectional text), however, for RTL
80       scripts, words are automatically displayed in RTL. That is to  say,  in
81       an  RTL  script,  the  words  "HELLO  WORLD" display in kitty as "WORLD
82       HELLO", and if you try to select a substring of an  RTL-shaped  string,
83       you  will get the character that would be there had the the string been
84       LTR. For example, assuming the Hebrew word ירושלים, selecting the char‐
85       acter  that  on the screen appears to be ם actually writes into the se‐
86       lection buffer the character י.  kitty's default behavior is useful  in
87       conjunction  with  a  filter to reverse the word order, however, if you
88       wish to manipulate RTL glyphs, it can be very challenging to work with,
89       so this option is provided to turn it off. Furthermore, this option can
90       be used with the command line program GNU FriBidi to get BIDI  support,
91       because  it  will  force  kitty  to always treat the text as LTR, which
92       FriBidi expects for terminals.
93
94       adjust_line_height, adjust_column_width
95
96          adjust_line_height  0
97          adjust_column_width 0
98
99       Change the size of each character cell kitty renders. You can  use  ei‐
100       ther  numbers,  which  are interpreted as pixels or percentages (number
101       followed by %), which are interpreted as percentages of the  unmodified
102       values.  You  can  use negative pixels or percentages less than 100% to
103       reduce sizes (but this might cause rendering artifacts).
104
105       adjust_baseline
106
107          adjust_baseline 0
108
109       Adjust the vertical alignment of text (the height in the cell at  which
110       text  is positioned). You can use either numbers, which are interpreted
111       as pixels or percentages (number followed by %), which are  interpreted
112       as  the percentage of the line height. A positive value moves the base‐
113       line up, and a negative  value  moves  them  down.  The  underline  and
114       strikethrough positions are adjusted accordingly.
115
116       symbol_map
117
118          symbol_map U+E0A0-U+E0A3,U+E0C0-U+E0C7 PowerlineSymbols
119
120       Map  the  specified  Unicode codepoints to a particular font. Useful if
121       you need special rendering for some symbols,  such  as  for  Powerline.
122       Avoids the need for patched fonts. Each Unicode code point is specified
123       in the form U+<code point in hexadecimal>.  You  can  specify  multiple
124       code  points, separated by commas and ranges separated by hyphens. This
125       option can be specified multiple times. The syntax is:
126
127          symbol_map codepoints Font Family Name
128
129       narrow_symbols
130
131          narrow_symbols U+E0A0-U+E0A3,U+E0C0-U+E0C7 1
132
133       Usually, for Private Use Unicode  characters  and  some  symbol/dingbat
134       characters,  if  the character is followed by one or more spaces, kitty
135       will use those extra cells to render the character larger, if the char‐
136       acter  in  the  font has a wide aspect ratio. Using this option you can
137       force kitty to restrict the specified code  points  to  render  in  the
138       specified number of cells (defaulting to one cell).  This option can be
139       specified multiple times. The syntax is:
140
141          narrow_symbols codepoints [optionally the number of cells]
142
143       disable_ligatures
144
145          disable_ligatures never
146
147       Choose how you want to handle multi-character ligatures. The default is
148       to  always  render them. You can tell kitty to not render them when the
149       cursor is over them by using cursor to make  editing  easier,  or  have
150       kitty never render them at all by using always, if you don't like them.
151       The ligature strategy can be set per-window either using the kitty  re‐
152       mote  control  facility  or by defining shortcuts for it in kitty.conf,
153       for example:
154
155          map alt+1 disable_ligatures_in active always
156          map alt+2 disable_ligatures_in all never
157          map alt+3 disable_ligatures_in tab cursor
158
159       Note that this refers to programming ligatures,  typically  implemented
160       using  the  calt OpenType feature. For disabling general ligatures, use
161       the font_features option.
162
163       font_features
164
165          font_features none
166
167       Choose exactly which OpenType features to enable or  disable.  This  is
168       useful  as some fonts might have features worthwhile in a terminal. For
169       example, Fira Code includes a discretionary  feature,  zero,  which  in
170       that  font changes the appearance of the zero (0), to make it more eas‐
171       ily distinguishable from Ø. Fira Code also includes other discretionary
172       features known as Stylistic Sets which have the tags ss01 through ss20.
173
174       For  the  exact syntax to use for individual features, see the HarfBuzz
175       documentation.
176
177       Note that this code is indexed by PostScript name,  and  not  the  font
178       family.  This  allows you to define very precise feature settings; e.g.
179       you can disable a feature in the italic font but  not  in  the  regular
180       font.
181
182       On Linux, font features are first read from the FontConfig database and
183       then this option is applied, so they can be  configured  in  a  single,
184       central place.
185
186       To get the PostScript name for a font, use kitty +list-fonts --psnames:
187
188          $ kitty +list-fonts --psnames | grep Fira
189          Fira Code
190          Fira Code Bold (FiraCode-Bold)
191          Fira Code Light (FiraCode-Light)
192          Fira Code Medium (FiraCode-Medium)
193          Fira Code Regular (FiraCode-Regular)
194          Fira Code Retina (FiraCode-Retina)
195
196       The part in brackets is the PostScript name.
197
198       Enable alternate zero and oldstyle numerals:
199
200          font_features FiraCode-Retina +zero +onum
201
202       Enable only alternate zero in the bold font:
203
204          font_features FiraCode-Bold +zero
205
206       Disable  the normal ligatures, but keep the calt feature which (in this
207       font) breaks up monotony:
208
209          font_features TT2020StyleB-Regular -liga +calt
210
211       In conjunction with force_ltr, you may want to disable  Arabic  shaping
212       entirely,  and  only  look at their isolated forms if they show up in a
213       document.  You can do this with e.g.:
214
215          font_features UnifontMedium +isol -medi -fina -init
216
217       box_drawing_scale
218
219          box_drawing_scale 0.001, 1, 1.5, 2
220
221       The sizes of the lines used for the  box  drawing  Unicode  characters.
222       These  values are in pts. They will be scaled by the monitor DPI to ar‐
223       rive at a pixel value.  There must  be  four  values  corresponding  to
224       thin, normal, thick, and very thick lines.
225
226       cursor
227
228          cursor #cccccc
229
230       Default  cursor color. If set to the special value none the cursor will
231       be rendered with a "reverse video" effect. It's color will be the color
232       of  the  text in the cell it is over and the text will be rendered with
233       the background color of the cell. Note that if the program  running  in
234       the terminal sets a cursor color, this takes precedence. Also, the cur‐
235       sor colors are modified if the cell background  and  foreground  colors
236       have very low contrast.
237
238       cursor_text_color
239
240          cursor_text_color #111111
241
242       The  color  of  text under the cursor. If you want it rendered with the
243       background color of the cell underneath instead, use the  special  key‐
244       word:  background.  Note that if cursor is set to none then this option
245       is ignored.
246
247       cursor_shape
248
249          cursor_shape block
250
251       The cursor shape can be one of block, beam, underline.  Note that  when
252       reloading  the config this will be changed only if the cursor shape has
253       not been set by the program running in the terminal. This sets the  de‐
254       fault  cursor  shape, applications running in the terminal can override
255       it. In particular, shell integration in kitty sets the cursor shape  to
256       beam  at shell prompts. You can avoid this by setting shell_integration
257       to no-cursor.
258
259       cursor_beam_thickness
260
261          cursor_beam_thickness 1.5
262
263       The thickness of the beam cursor (in pts).
264
265       cursor_underline_thickness
266
267          cursor_underline_thickness 2.0
268
269       The thickness of the underline cursor (in pts).
270
271       cursor_blink_interval
272
273          cursor_blink_interval -1
274
275       The interval to blink the cursor (in seconds). Set to zero  to  disable
276       blinking.  Negative values mean use system default. Note that the mini‐
277       mum interval will be limited to repaint_delay.
278
279       cursor_stop_blinking_after
280
281          cursor_stop_blinking_after 15.0
282
283       Stop blinking cursor after the specified number of seconds of  keyboard
284       inactivity. Set to zero to never stop blinking.
285
286       scrollback_lines
287
288          scrollback_lines 2000
289
290       Number of lines of history to keep in memory for scrolling back. Memory
291       is allocated on demand. Negative  numbers  are  (effectively)  infinite
292       scrollback.   Note  that using very large scrollback is not recommended
293       as it can slow down performance of the  terminal  and  also  use  large
294       amounts  of RAM. Instead, consider using scrollback_pager_history_size.
295       Note that on config reload if this is changed it will only affect newly
296       created windows, not existing ones.
297
298       scrollback_pager
299
300          scrollback_pager less --chop-long-lines --RAW-CONTROL-CHARS +INPUT_LINE_NUMBER
301
302       Program  with  which to view scrollback in a new window. The scrollback
303       buffer is passed as STDIN to this program. If you change it, make  sure
304       the  program  you  use  can handle ANSI escape sequences for colors and
305       text formatting.  INPUT_LINE_NUMBER in the command line above  will  be
306       replaced  by an integer representing which line should be at the top of
307       the screen. Similarly CURSOR_LINE and CURSOR_COLUMN will be replaced by
308       the  current cursor position or set to 0 if there is no cursor, for ex‐
309       ample, when showing the last command output.
310
311       scrollback_pager_history_size
312
313          scrollback_pager_history_size 0
314
315       Separate scrollback history size (in MB), used only  for  browsing  the
316       scrollback buffer with pager. This separate buffer is not available for
317       interactive scrolling but will be piped to the pager program when view‐
318       ing  scrollback buffer in a separate window. The current implementation
319       stores the data in UTF-8, so approximatively 10000 lines  per  megabyte
320       at  100  chars  per  line, for pure ASCII, unformatted text. A value of
321       zero or less disables this feature. The maximum allowed  size  is  4GB.
322       Note that on config reload if this is changed it will only affect newly
323       created windows, not existing ones.
324
325       scrollback_fill_enlarged_window
326
327          scrollback_fill_enlarged_window no
328
329       Fill new space with lines from the scrollback buffer after enlarging  a
330       window.
331
332       wheel_scroll_multiplier
333
334          wheel_scroll_multiplier 5.0
335
336       Multiplier  for  the  number of lines scrolled by the mouse wheel. Note
337       that this is only used for low precision  scrolling  devices,  not  for
338       high  precision  scrolling  devices on platforms such as macOS and Way‐
339       land. Use  negative  numbers  to  change  scroll  direction.  See  also
340       wheel_scroll_min_lines.
341
342       wheel_scroll_min_lines
343
344          wheel_scroll_min_lines 1
345
346       The  minimum  number  of  lines scrolled by the mouse wheel. The scroll
347       multiplier only takes effect after it reaches this  number.  Note  that
348       this  is  only used for low precision scrolling devices like wheel mice
349       that scroll by very small amounts when using the wheel. With a negative
350       number, the minimum number of lines will always be added.
351
352       touch_scroll_multiplier
353
354          touch_scroll_multiplier 1.0
355
356       Multiplier  for  the  number of lines scrolled by a touchpad. Note that
357       this is only used for high precision  scrolling  devices  on  platforms
358       such as macOS and Wayland. Use negative numbers to change scroll direc‐
359       tion.
360
361       mouse_hide_wait
362
363          mouse_hide_wait 3.0
364
365       Hide mouse cursor after the specified number of seconds  of  the  mouse
366       not  being  used.  Set to zero to disable mouse cursor hiding. Set to a
367       negative value to hide the mouse cursor immediately when  typing  text.
368       Disabled  by  default  on macOS as getting it to work robustly with the
369       ever-changing sea of bugs that is Cocoa is too much effort.
370
371       url_color, url_style
372
373          url_color #0087bd
374          url_style curly
375
376       The color and style for highlighting URLs on mouse-over. url_style  can
377       be one of: none, straight, double, curly, dotted, dashed.
378
379       open_url_with
380
381          open_url_with default
382
383       The  program  to  open clicked URLs. The special value default means to
384       use the operating system's default  URL  handler  (open  on  macOS  and
385       xdg-open on Linux).
386
387       url_prefixes
388
389          url_prefixes file ftp ftps gemini git gopher http https irc ircs kitty mailto news sftp ssh
390
391       The  set  of  URL  prefixes  to look for when detecting a URL under the
392       mouse cursor.
393
394       detect_urls
395
396          detect_urls yes
397
398       Detect URLs under the mouse. Detected URLs are highlighted with an  un‐
399       derline and the mouse cursor becomes a hand over them. Even if this op‐
400       tion is disabled, URLs are still clickable.
401
402       url_excluded_characters
403
404          url_excluded_characters
405
406       Additional characters to be disallowed from URLs, when  detecting  URLs
407       under  the  mouse  cursor. By default, all characters that are legal in
408       URLs are allowed.
409
410       copy_on_select
411
412          copy_on_select no
413
414       Copy to clipboard or a private buffer on select. With this set to clip‐
415       board,  selecting  text with the mouse will cause the text to be copied
416       to clipboard. Useful on platforms such as macOS that do  not  have  the
417       concept of primary selection. You can instead specify a name such as a1
418       to  copy  to  a  private  kitty  buffer.  Map  a  shortcut   with   the
419       paste_from_buffer  action to paste from this private buffer.  For exam‐
420       ple:
421
422          copy_on_select a1
423          map shift+cmd+v paste_from_buffer a1
424
425       Note that copying to the clipboard is a security risk, as all programs,
426       including  websites  open  in your browser can read the contents of the
427       system clipboard.
428
429       paste_actions
430
431          paste_actions quote-urls-at-prompt
432
433       A comma separated list of actions to take when pasting  text  into  the
434       terminal.  The supported paste actions are:
435
436       quote-urls-at-prompt:
437              If  the  text being pasted is a URL and the cursor is at a shell
438              prompt, automatically quote the URL (needs shell_integration).
439
440       confirm:
441              Confirm the paste if bracketed paste mode is not active or there
442              is more a large amount of text being pasted.
443
444       filter:
445              Run  the  filter_paste() function from the file paste-actions.py
446              in the kitty config directory on the pasted text. The  text  re‐
447              turned by the function will be actually pasted.
448
449       strip_trailing_spaces
450
451          strip_trailing_spaces never
452
453       Remove spaces at the end of lines when copying to clipboard. A value of
454       smart will do it when using normal selections, but not rectangle selec‐
455       tions. A value of always will always do it.
456
457       select_by_word_characters
458
459          select_by_word_characters @-./_~?&=%+#
460
461       Characters  considered part of a word when double clicking. In addition
462       to these characters any character that is  marked  as  an  alphanumeric
463       character in the Unicode database will be matched.
464
465       select_by_word_characters_forward
466
467          select_by_word_characters_forward
468
469       Characters  considered part of a word when extending the selection for‐
470       ward on double clicking. In addition to these characters any  character
471       that  is  marked  as  an alphanumeric character in the Unicode database
472       will be matched.
473
474       If empty (default) select_by_word_characters will be used for both  di‐
475       rections.
476
477       click_interval
478
479          click_interval -1.0
480
481       The  interval  between successive clicks to detect double/triple clicks
482       (in seconds). Negative numbers will use the system default instead,  if
483       available, or fallback to 0.5.
484
485       focus_follows_mouse
486
487          focus_follows_mouse no
488
489       Set  the  active  window  to the window under the mouse when moving the
490       mouse around.
491
492       pointer_shape_when_grabbed
493
494          pointer_shape_when_grabbed arrow
495
496       The shape of the mouse pointer when the program running in the terminal
497       grabs the mouse. Valid values are: arrow, beam and hand.
498
499       default_pointer_shape
500
501          default_pointer_shape beam
502
503       The  default  shape of the mouse pointer. Valid values are: arrow, beam
504       and hand.
505
506       pointer_shape_when_dragging
507
508          pointer_shape_when_dragging beam
509
510       The default shape of the mouse pointer when dragging across text. Valid
511       values are: arrow, beam and hand.
512

MOUSE ACTIONS

514       Mouse  buttons  can  be mapped to perform arbitrary actions. The syntax
515       is:
516
517          mouse_map button-name event-type modes action
518
519       Where button-name is one of left, middle, right, b1 ... b8  with  added
520       keyboard  modifiers. For example: ctrl+shift+left refers to holding the
521       Ctrl+Shift keys while clicking with the left mouse button. The value b1
522       ... b8 can be used to refer to up to eight buttons on a mouse.
523
524       event-type  is  one of press, release, doublepress, triplepress, click,
525       doubleclick.  modes indicates whether the action is performed when  the
526       mouse  is  grabbed  by the program running in the terminal, or not. The
527       values are grabbed or ungrabbed or a  comma  separated  combination  of
528       them.   grabbed  refers to when the program running in the terminal has
529       requested mouse events. Note that the click  and  double  click  events
530       have  a  delay of click_interval to disambiguate from double and triple
531       presses.
532
533       You can run kitty with the kitty --debug-input command line  option  to
534       see  mouse events. See the builtin actions below to get a sense of what
535       is possible.
536
537       If you want to unmap an action, map it to no_op. For example,  to  dis‐
538       able opening of URLs with a plain click:
539
540          mouse_map left click ungrabbed no_op
541
542       See all the mappable actions including mouse actions here.
543
544       NOTE:
545          Once  a  selection  is started, releasing the button that started it
546          will automatically end it and no release event will be dispatched.
547
548       clear_all_mouse_actions
549
550          clear_all_mouse_actions no
551
552       Remove all mouse action definitions up to this point. Useful,  for  in‐
553       stance, to remove the default mouse actions.
554
555       Click the link under the mouse or move the cursor
556
557          mouse_map left click ungrabbed mouse_handle_click selection link prompt
558
559       First  check  for  a selection and if one exists do nothing. Then check
560       for a link under the mouse cursor and if one exists, click it.  Finally
561       check if the click happened at the current shell prompt and if so, move
562       the cursor to the click location. Note that this requires  shell  inte‐
563       gration to work.
564
565       Click the link under the mouse or move the cursor even when grabbed
566
567          mouse_map shift+left click grabbed,ungrabbed mouse_handle_click selection link prompt
568
569       Same  as above, except that the action is performed even when the mouse
570       is grabbed by the program running in the terminal.
571
572       Click the link under the mouse cursor
573
574          mouse_map ctrl+shift+left release grabbed,ungrabbed mouse_handle_click link
575
576       Variant with Ctrl+Shift is present because the simple click based  ver‐
577       sion has an unavoidable delay of click_interval, to disambiguate clicks
578       from double clicks.
579
580       Discard press event for link click
581
582          mouse_map ctrl+shift+left press grabbed discard_event
583
584       Prevent this press event from  being  sent  to  the  program  that  has
585       grabbed the mouse, as the corresponding release event is used to open a
586       URL.
587
588       Paste from the primary selection
589
590          mouse_map middle release ungrabbed paste_from_selection
591
592       Start selecting text
593
594          mouse_map left press ungrabbed mouse_selection normal
595
596       Start selecting text in a rectangle
597
598          mouse_map ctrl+alt+left press ungrabbed mouse_selection rectangle
599
600       Select a word
601
602          mouse_map left doublepress ungrabbed mouse_selection word
603
604       Select a line
605
606          mouse_map left triplepress ungrabbed mouse_selection line
607
608       Select line from point
609
610          mouse_map ctrl+alt+left triplepress ungrabbed mouse_selection line_from_point
611
612       Select from the clicked point to the end of the line.
613
614       Extend the current selection
615
616          mouse_map right press ungrabbed mouse_selection extend
617
618       If you want only the end of the selection to be moved  instead  of  the
619       nearest boundary, use move-end instead of extend.
620
621       Paste from the primary selection even when grabbed
622
623          mouse_map shift+middle release ungrabbed,grabbed paste_selection
624          mouse_map shift+middle press grabbed discard_event
625
626       Start selecting text even when grabbed
627
628          mouse_map shift+left press ungrabbed,grabbed mouse_selection normal
629
630       Start selecting text in a rectangle even when grabbed
631
632          mouse_map ctrl+shift+alt+left press ungrabbed,grabbed mouse_selection rectangle
633
634       Select a word even when grabbed
635
636          mouse_map shift+left doublepress ungrabbed,grabbed mouse_selection word
637
638       Select a line even when grabbed
639
640          mouse_map shift+left triplepress ungrabbed,grabbed mouse_selection line
641
642       Select line from point even when grabbed
643
644          mouse_map ctrl+shift+alt+left triplepress ungrabbed,grabbed mouse_selection line_from_point
645
646       Select from the clicked point to the end of the line even when grabbed.
647
648       Extend the current selection even when grabbed
649
650          mouse_map shift+right press ungrabbed,grabbed mouse_selection extend
651
652       Show clicked command output in pager
653
654          mouse_map ctrl+shift+right press ungrabbed mouse_show_command_output
655
656       Requires shell integration to work.
657
658       repaint_delay
659
660          repaint_delay 10
661
662       Delay  between  screen  updates  (in  milliseconds). Decreasing it, in‐
663       creases frames-per-second (FPS) at the cost of more CPU usage. The  de‐
664       fault  value  yields  ~100  FPS  which is more than sufficient for most
665       uses. Note that to actually achieve 100 FPS, you  have  to  either  set
666       sync_to_monitor  to no or use a monitor with a high refresh rate. Also,
667       to minimize latency when there is pending input to be  processed,  this
668       option is ignored.
669
670       input_delay
671
672          input_delay 3
673
674       Delay  before  input  from  the program running in the terminal is pro‐
675       cessed (in milliseconds). Note that decreasing it will increase respon‐
676       siveness,  but  also increase CPU usage and might cause flicker in full
677       screen programs that redraw the entire screen  on  each  loop,  because
678       kitty is so fast that partial screen updates will be drawn.
679
680       sync_to_monitor
681
682          sync_to_monitor yes
683
684       Sync  screen  updates to the refresh rate of the monitor. This prevents
685       screen tearing when scrolling. However, it limits the  rendering  speed
686       to  the refresh rate of your monitor. With a very high speed mouse/high
687       keyboard repeat rate, you may notice some slight input latency. If  so,
688       set this to no.
689
690       enable_audio_bell
691
692          enable_audio_bell yes
693
694       The  audio  bell. Useful to disable it in environments that require si‐
695       lence.
696
697       visual_bell_duration
698
699          visual_bell_duration 0.0
700
701       The visual bell duration (in seconds). Flash the screen when a bell oc‐
702       curs for the specified number of seconds. Set to zero to disable.
703
704       visual_bell_color
705
706          visual_bell_color none
707
708       The  color used by visual bell. Set to none will fall back to selection
709       background color. If you feel that the visual bell is too  bright,  you
710       can set it to a darker color.
711
712       window_alert_on_bell
713
714          window_alert_on_bell yes
715
716       Request  window  attention on bell. Makes the dock icon bounce on macOS
717       or the taskbar flash on linux.
718
719       bell_on_tab
720
721          bell_on_tab "🔔 "
722
723       Some text or a Unicode symbol to show on the tab if a window in the tab
724       that  does  not  have  focus  has a bell. If you want to use leading or
725       trailing spaces, surround the text with quotes. See  tab_title_template
726       for how this is rendered.
727
728       For backwards compatibility, values of yes, y and true are converted to
729       the default bell symbol and no, n, false and none are converted to  the
730       empty string.
731
732       command_on_bell
733
734          command_on_bell none
735
736       Program   to   run   when  a  bell  occurs.  The  environment  variable
737       KITTY_CHILD_CMDLINE can be used to get the program running in the  win‐
738       dow in which the bell occurred.
739
740       bell_path
741
742          bell_path none
743
744       Path  to  a  sound  file to play as the bell sound. If set to none, the
745       system default bell sound is used. Must be in a format supported by the
746       operating  systems sound API, such as WAV or OGA on Linux (libcanberra)
747       or AIFF, MP3 or WAV on macOS (NSSound)
748
749       remember_window_size, initial_window_width, initial_window_height
750
751          remember_window_size  yes
752          initial_window_width  640
753          initial_window_height 400
754
755       If enabled, the window size will be remembered so that new instances of
756       kitty  will  have  the same size as the previous instance. If disabled,
757       the  window  will  initially  have  size  configured  by   initial_win‐
758       dow_width/height,  in  pixels.  You  can  use  a  suffix  of "c" on the
759       width/height values to have them interpreted as number of cells instead
760       of pixels.
761
762       enabled_layouts
763
764          enabled_layouts *
765
766       The enabled window layouts. A comma separated list of layout names. The
767       special value all means all layouts. The first listed  layout  will  be
768       used as the startup layout. Default configuration is all layouts in al‐
769       phabetical order. For a list of available layouts, see the Layouts.
770
771       window_resize_step_cells, window_resize_step_lines
772
773          window_resize_step_cells 2
774          window_resize_step_lines 2
775
776       The step size (in units of cell width/cell height) to use when resizing
777       kitty  windows  in  a  layout with the shortcut ctrl+shift+r. The cells
778       value is used for horizontal resizing, and the lines value is used  for
779       vertical resizing.
780
781       window_border_width
782
783          window_border_width 0.5pt
784
785       The  width of window borders. Can be either in pixels (px) or pts (pt).
786       Values in pts will be rounded to the nearest number of pixels based  on
787       screen  resolution.   If  not specified, the unit is assumed to be pts.
788       Note that borders are displayed only when more than one window is visi‐
789       ble. They are meant to separate multiple windows.
790
791       draw_minimal_borders
792
793          draw_minimal_borders yes
794
795       Draw  only the minimum borders needed. This means that only the borders
796       that separate the inactive window from a neighbor are drawn. Note  that
797       setting  a  non-zero  window_margin_width overrides this and causes all
798       borders to be drawn.
799
800       window_margin_width
801
802          window_margin_width 0
803
804       The window margin (in pts) (blank area outside the  border).  A  single
805       value  sets  all four sides. Two values set the vertical and horizontal
806       sides. Three values set top, horizontal and  bottom.  Four  values  set
807       top, right, bottom and left.
808
809       single_window_margin_width
810
811          single_window_margin_width -1
812
813       The window margin to use when only a single window is visible (in pts).
814       Negative values will cause the value of window_margin_width to be  used
815       instead.  A single value sets all four sides. Two values set the verti‐
816       cal and horizontal sides. Three values set top, horizontal and  bottom.
817       Four values set top, right, bottom and left.
818
819       window_padding_width
820
821          window_padding_width 0
822
823       The window padding (in pts) (blank area between the text and the window
824       border).  A single value sets all four sides. Two values set the verti‐
825       cal  and horizontal sides. Three values set top, horizontal and bottom.
826       Four values set top, right, bottom and left.
827
828       placement_strategy
829
830          placement_strategy center
831
832       When the window size is not an exact multiple of  the  cell  size,  the
833       cell  area  of  the terminal window will have some extra padding on the
834       sides. You can control how that padding is distributed  with  this  op‐
835       tion.  Using  a value of center means the cell area will be placed cen‐
836       trally. A value of top-left means the padding will be only at the  bot‐
837       tom and right edges.
838
839       active_border_color
840
841          active_border_color #00ff00
842
843       The  color for the border of the active window. Set this to none to not
844       draw borders around the active window.
845
846       inactive_border_color
847
848          inactive_border_color #cccccc
849
850       The color for the border of inactive windows.
851
852       bell_border_color
853
854          bell_border_color #ff5a00
855
856       The color for the border of inactive windows in which a  bell  has  oc‐
857       curred.
858
859       inactive_text_alpha
860
861          inactive_text_alpha 1.0
862
863       Fade the text in inactive windows by the specified amount (a number be‐
864       tween zero and one, with zero being fully faded).
865
866       hide_window_decorations
867
868          hide_window_decorations no
869
870       Hide the window decorations (title-bar and window borders) with yes. On
871       macOS,  titlebar-only  can  be  used to only hide the titlebar. Whether
872       this works and exactly what effect it has depends on  the  window  man‐
873       ager/operating  system.  Note  that the effects of changing this option
874       when reloading config are undefined.
875
876       window_logo_path
877
878          window_logo_path none
879
880       Path to a logo image. Must be in PNG format. Relative paths are  inter‐
881       preted relative to the kitty config directory. The logo is displayed in
882       a  corner  of  every  kitty  window.  The  position  is  controlled  by
883       window_logo_position.   Individual  windows  can  be configured to have
884       different logos either using the launch action or  the  remote  control
885       facility.
886
887       window_logo_position
888
889          window_logo_position bottom-right
890
891       Where  to  position the window logo in the window. The value can be one
892       of: top-left, top, top-right, left, center, right, bottom-left, bottom,
893       bottom-right.
894
895       window_logo_alpha
896
897          window_logo_alpha 0.5
898
899       The  amount the logo should be faded into the background. With zero be‐
900       ing fully faded and one being fully opaque.
901
902       resize_debounce_time
903
904          resize_debounce_time 0.1
905
906       The time to wait before redrawing the screen when a resize event is re‐
907       ceived  (in  seconds).  On platforms such as macOS, where the operating
908       system sends events corresponding to the start and  end  of  a  resize,
909       this number is ignored.
910
911       resize_draw_strategy
912
913          resize_draw_strategy static
914
915       Choose  how kitty draws a window while a resize is in progress. A value
916       of static means draw the current window contents, mostly  unchanged.  A
917       value  of  scale means draw the current window contents scaled. A value
918       of blank means draw a blank window. A value of size means show the win‐
919       dow size in cells.
920
921       resize_in_steps
922
923          resize_in_steps no
924
925       Resize  the  OS  window in steps as large as the cells, instead of with
926       the  usual  pixel  accuracy.  Combined  with  initial_window_width  and
927       initial_window_height  in  number  of cells, this option can be used to
928       keep the margins as small as possible when resizing the OS window. Note
929       that this does not currently work on Wayland.
930
931       visual_window_select_characters
932
933          visual_window_select_characters 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ
934
935       The  list  of  characters for visual window selection. For example, for
936       selecting a window to focus on with ctrl+shift+f7. The value should  be
937       a series of unique numbers or alphabets, case insensitive, from the set
938       [0-9A-Z].  Specify your preference as a string of characters.
939
940       confirm_os_window_close
941
942          confirm_os_window_close -1
943
944       Ask for confirmation when closing an OS window or a tab with  at  least
945       this number of kitty windows in it by window manager (e.g. clicking the
946       window close button or pressing the operating system shortcut to  close
947       windows) or by the close_tab action. A value of zero disables confirma‐
948       tion. This confirmation also applies to requests to quit the entire ap‐
949       plication  (all  OS  windows, via the quit action). Negative values are
950       converted to positive ones, however,  with  shell_integration  enabled,
951       using  negative  values means windows sitting at a shell prompt are not
952       counted, only windows where some command  is  currently  running.  Note
953       that  if you want confirmation when closing individual windows, you can
954       map the close_window_with_confirmation action.
955
956       tab_bar_edge
957
958          tab_bar_edge bottom
959
960       The edge to show the tab bar on, top or bottom.
961
962       tab_bar_margin_width
963
964          tab_bar_margin_width 0.0
965
966       The margin to the left and right of the tab bar (in pts).
967
968       tab_bar_margin_height
969
970          tab_bar_margin_height 0.0 0.0
971
972       The margin above and below the tab bar (in pts). The  first  number  is
973       the  margin between the edge of the OS Window and the tab bar. The sec‐
974       ond number is the margin between the tab bar and the  contents  of  the
975       current tab.
976
977       tab_bar_style
978
979          tab_bar_style fade
980
981       The tab bar style, can be one of:
982
983       fade   Each  tab's  edges  fade  into  the  background color. (See also
984              tab_fade)
985
986       slant  Tabs look like the tabs in a physical file.
987
988       separator
989              Tabs are  separated  by  a  configurable  separator.  (See  also
990              tab_separator)
991
992       powerline
993              Tabs  are  shown  as  a continuous line with "fancy" separators.
994              (See also tab_powerline_style)
995
996       custom A user-supplied Python function called draw_tab is  loaded  from
997              the  file tab_bar.py in the kitty config directory. For examples
998              of how to  write  such  a  function,  see  the  functions  named
999              draw_tab_with_*  in  kitty's  source code: kitty/tab_bar.py. See
1000              also this discussion for examples from kitty users.
1001
1002       hidden The tab bar is hidden. If you use this, you might want to create
1003              a  mapping  for  the select_tab action which presents you with a
1004              list of tabs and allows for easy switching to a tab.
1005
1006       tab_bar_align
1007
1008          tab_bar_align left
1009
1010       The horizontal alignment of the tab bar, can be one of:  left,  center,
1011       right.
1012
1013       tab_bar_min_tabs
1014
1015          tab_bar_min_tabs 2
1016
1017       The minimum number of tabs that must exist before the tab bar is shown.
1018
1019       tab_switch_strategy
1020
1021          tab_switch_strategy previous
1022
1023       The  algorithm  to  use when switching to a tab when the current tab is
1024       closed. The default of previous will switch to the  last  used  tab.  A
1025       value  of  left will switch to the tab to the left of the closed tab. A
1026       value of right will switch to the tab to the right of the closed tab. A
1027       value of last will switch to the right-most tab.
1028
1029       tab_fade
1030
1031          tab_fade 0.25 0.5 0.75 1
1032
1033       Control  how each tab fades into the background when using fade for the
1034       tab_bar_style. Each number is an alpha (between zero and one) that con‐
1035       trols  how  much the corresponding cell fades into the background, with
1036       zero being no fade and one being full fade. You can change  the  number
1037       of cells used by adding/removing entries to this list.
1038
1039       tab_separator
1040
1041          tab_separator " ┇"
1042
1043       The  separator  between tabs in the tab bar when using separator as the
1044       tab_bar_style.
1045
1046       tab_powerline_style
1047
1048          tab_powerline_style angled
1049
1050       The powerline separator style between tabs in the tab  bar  when  using
1051       powerline as the tab_bar_style, can be one of: angled, slanted, round.
1052
1053       tab_activity_symbol
1054
1055          tab_activity_symbol none
1056
1057       Some text or a Unicode symbol to show on the tab if a window in the tab
1058       that does not have focus has some activity. If you want to use  leading
1059       or    trailing   spaces,   surround   the   text   with   quotes.   See
1060       tab_title_template for how this is rendered.
1061
1062       tab_title_template
1063
1064          tab_title_template "{fmt.fg.red}{bell_symbol}{activity_symbol}{fmt.fg.tab}{title}"
1065
1066       A template to render the tab title. The default just renders the  title
1067       with optional symbols for bell and activity. If you wish to include the
1068       tab-index as well, use something like: {index}:{title}. Useful  if  you
1069       have shortcuts mapped for goto_tab N. If you prefer to see the index as
1070       a superscript, use {sup.index}. In addition you can  use  {layout_name}
1071       for the current layout name, {num_windows} for the number of windows in
1072       the tab and {num_window_groups} for the number of  window  groups  (not
1073       counting  overlay  windows) in the tab. Note that formatting is done by
1074       Python's string formatting machinery, so you  can  use,  for  instance,
1075       {layout_name[:2].upper()}  to  show  only  the first two letters of the
1076       layout name, upper-cased. If you want to style the text,  you  can  use
1077       styling   directives,   for   example:  {fmt.fg.red}red{fmt.fg.tab}nor‐
1078       mal{fmt.bg._00FF00}greenbg{fmt.bg.tab}.   Similarly,   for   bold   and
1079       italic:                                  {fmt.bold}bold{fmt.nobold}nor‐
1080       mal{fmt.italic}italic{fmt.noitalic}.  Note that for  backward  compati‐
1081       bility,  if  {bell_symbol}  or {activity_symbol} are not present in the
1082       template, they are prepended to it.
1083
1084       active_tab_title_template
1085
1086          active_tab_title_template none
1087
1088       Template to use for  active  tabs.  If  not  specified  falls  back  to
1089       tab_title_template.
1090
1091       active_tab_foreground,   active_tab_background,  active_tab_font_style,
1092       inactive_tab_foreground,         inactive_tab_background,         inac‐
1093       tive_tab_font_style
1094
1095          active_tab_foreground   #000
1096          active_tab_background   #eee
1097          active_tab_font_style   bold-italic
1098          inactive_tab_foreground #444
1099          inactive_tab_background #999
1100          inactive_tab_font_style normal
1101
1102       Tab bar colors and styles.
1103
1104       tab_bar_background
1105
1106          tab_bar_background none
1107
1108       Background  color for the tab bar. Defaults to using the terminal back‐
1109       ground color.
1110
1111       tab_bar_margin_color
1112
1113          tab_bar_margin_color none
1114
1115       Color for the tab bar margin area. Defaults to using the terminal back‐
1116       ground color.
1117
1118       foreground, background
1119
1120          foreground #dddddd
1121          background #000000
1122
1123       The foreground and background colors.
1124
1125       background_opacity
1126
1127          background_opacity 1.0
1128
1129       The opacity of the background. A number between zero and one, where one
1130       is opaque and zero is fully transparent. This will only  work  if  sup‐
1131       ported  by  the  OS  (for instance, when using a compositor under X11).
1132       Note that it only sets the background color's  opacity  in  cells  that
1133       have  the  same background color as the default terminal background, so
1134       that things like the status bar in vim, powerline prompts,  etc.  still
1135       look good. But it means that if you use a color theme with a background
1136       color in your editor, it will not be rendered as  transparent.  Instead
1137       you should change the default background color in your kitty config and
1138       not use a background color in the editor color scheme. Or use  the  es‐
1139       cape  codes  to  set  the terminals default colors in a shell script to
1140       launch your editor. Be aware that using a value  less  than  1.0  is  a
1141       (possibly  significant)  performance  hit.  If  you want to dynamically
1142       change transparency of windows, set dynamic_background_opacity  to  yes
1143       (this  is  off  by default as it has a performance cost). Changing this
1144       option   when   reloading   the    config    will    only    work    if
1145       dynamic_background_opacity was enabled in the original config.
1146
1147       background_image
1148
1149          background_image none
1150
1151       Path to a background image. Must be in PNG format.
1152
1153       background_image_layout
1154
1155          background_image_layout tiled
1156
1157       Whether  to tile, scale or clamp the background image. The value can be
1158       one of tiled, mirror-tiled, scaled, clamped.
1159
1160       background_image_linear
1161
1162          background_image_linear no
1163
1164       When background image is scaled, whether linear interpolation should be
1165       used.
1166
1167       dynamic_background_opacity
1168
1169          dynamic_background_opacity no
1170
1171       Allow changing of the background_opacity dynamically, using either key‐
1172       board shortcuts (ctrl+shift+a>m and ctrl+shift+a>l) or the remote  con‐
1173       trol facility. Changing this option by reloading the config is not sup‐
1174       ported.
1175
1176       background_tint
1177
1178          background_tint 0.0
1179
1180       How much to tint the background image by the background color. The tint
1181       is  applied  only  under the text area, not margin/borders. This option
1182       makes it easier to read the text. Tinting is  done  using  the  current
1183       background   color  for  each  window.  This  option  applies  only  if
1184       background_opacity is set and  transparent  windows  are  supported  or
1185       background_image is set.
1186
1187       dim_opacity
1188
1189          dim_opacity 0.75
1190
1191       How much to dim text that has the DIM/FAINT attribute set. One means no
1192       dimming and zero means fully dimmed (i.e. invisible).
1193
1194       selection_foreground, selection_background
1195
1196          selection_foreground #000000
1197          selection_background #fffacd
1198
1199       The foreground and background colors for text selected with the  mouse.
1200       Setting  both  of these to none will cause a "reverse video" effect for
1201       selections, where the selection will be the cell  text  color  and  the
1202       text  will  become  the  cell  background  color.  Setting  only selec‐
1203       tion_foreground to none will cause the foreground color to be used  un‐
1204       changed.  Note  that these colors can be overridden by the program run‐
1205       ning in the terminal.
1206

THE COLOR TABLE

1208       The 256 terminal colors. There are 8 basic colors,  each  color  has  a
1209       dull  and  bright version, for the first 16 colors. You can set the re‐
1210       maining 240 colors as color16 to color255.
1211
1212       color0, color8
1213
1214          color0 #000000
1215          color8 #767676
1216
1217       black
1218
1219       color1, color9
1220
1221          color1 #cc0403
1222          color9 #f2201f
1223
1224       red
1225
1226       color2, color10
1227
1228          color2  #19cb00
1229          color10 #23fd00
1230
1231       green
1232
1233       color3, color11
1234
1235          color3  #cecb00
1236          color11 #fffd00
1237
1238       yellow
1239
1240       color4, color12
1241
1242          color4  #0d73cc
1243          color12 #1a8fff
1244
1245       blue
1246
1247       color5, color13
1248
1249          color5  #cb1ed1
1250          color13 #fd28ff
1251
1252       magenta
1253
1254       color6, color14
1255
1256          color6  #0dcdcd
1257          color14 #14ffff
1258
1259       cyan
1260
1261       color7, color15
1262
1263          color7  #dddddd
1264          color15 #ffffff
1265
1266       white
1267
1268       mark1_foreground
1269
1270          mark1_foreground black
1271
1272       Color for marks of type 1
1273
1274       mark1_background
1275
1276          mark1_background #98d3cb
1277
1278       Color for marks of type 1 (light steel blue)
1279
1280       mark2_foreground
1281
1282          mark2_foreground black
1283
1284       Color for marks of type 2
1285
1286       mark2_background
1287
1288          mark2_background #f2dcd3
1289
1290       Color for marks of type 1 (beige)
1291
1292       mark3_foreground
1293
1294          mark3_foreground black
1295
1296       Color for marks of type 3
1297
1298       mark3_background
1299
1300          mark3_background #f274bc
1301
1302       Color for marks of type 3 (violet)
1303
1304       shell
1305
1306          shell .
1307
1308       The shell program to execute. The default value of . means to use what‐
1309       ever  shell is set as the default shell for the current user. Note that
1310       on macOS if you change this, you might need to add --login and --inter‐
1311       active  to  ensure  that the shell starts in interactive mode and reads
1312       its startup rc files.
1313
1314       editor
1315
1316          editor .
1317
1318       The terminal based text editor (such as vim or nano) to use when  edit‐
1319       ing the kitty config file or similar tasks.
1320
1321       The  default  value  of . means to use the environment variables VISUAL
1322       and EDITOR in that order. If these variables aren't set, kitty will run
1323       your  shell ($SHELL -l -i -c env) to see if your shell startup rc files
1324       set VISUAL or EDITOR. If that doesn't work, kitty  will  cycle  through
1325       various  known  editors  (vim, emacs, etc.) and take the first one that
1326       exists on your system.
1327
1328       close_on_child_death
1329
1330          close_on_child_death no
1331
1332       Close the window when the child process (shell) exits. With the default
1333       value no, the terminal will remain open when the child exits as long as
1334       there are still processes outputting to the terminal (for example  dis‐
1335       owned  or  backgrounded  processes).  When enabled with yes, the window
1336       will close as soon as the child process exits. Note that setting it  to
1337       yes  means  that  any background processes still using the terminal can
1338       fail silently because their stdout/stderr/stdin no longer work.
1339
1340       allow_remote_control
1341
1342          allow_remote_control no
1343
1344       Allow other programs to control kitty. If you turn this on, other  pro‐
1345       grams can control all aspects of kitty, including sending text to kitty
1346       windows, opening new windows, closing windows, reading the  content  of
1347       windows,  etc.  Note that this even works over SSH connections. You can
1348       choose to either allow any program running within kitty to  control  it
1349       with  yes, or only allow programs that connect to the socket (specified
1350       with the listen_on config option or kitty --listen-on command line  op‐
1351       tion)  with  the value socket-only. The latter is useful if you want to
1352       prevent programs running on a remote computer over SSH from controlling
1353       kitty. Reloading the config will not affect this option.
1354
1355       listen_on
1356
1357          listen_on none
1358
1359       Listen  to  the  specified  UNIX socket for remote control connections.
1360       Note that this will apply to all kitty instances. It can be  overridden
1361       by  the kitty --listen-on command line option, which supports listening
1362       on  TCP  socket.  This  option  accepts  only  UNIX  sockets,  such  as
1363       unix:${TEMP}/mykitty or unix:@mykitty (on Linux). Environment variables
1364       are expanded and relative paths are resolved with respect to the tempo‐
1365       rary  directory.  If {kitty_pid} is present, then it is replaced by the
1366       PID of the kitty process, otherwise the PID of the kitty process is ap‐
1367       pended  to  the value, with a hyphen. This option is ignored unless you
1368       also set allow_remote_control to enable remote control.  See  the  help
1369       for kitty --listen-on for more details. Changing this option by reload‐
1370       ing the config is not supported.
1371
1372       env
1373
1374          env
1375
1376       Specify the environment variables to be set in all child processes. Us‐
1377       ing  the  name  with  an  equal sign (e.g. env VAR=) will set it to the
1378       empty string.  Specifying only the name (e.g. env VAR) will remove  the
1379       variable  from  the  child  process' environment. Note that environment
1380       variables are expanded recursively, for example:
1381
1382          env VAR1=a
1383          env VAR2=${HOME}/${VAR1}/b
1384
1385       The value of VAR2 will be <path to home directory>/a/b.
1386
1387       watcher
1388
1389          watcher
1390
1391       Path to python file which will be loaded for Watching launched windows.
1392       Can be specified more than once to load multiple watchers. The watchers
1393       will be added to every kitty window. Relative paths are resolved  rela‐
1394       tive to the kitty config directory. Note that reloading the config will
1395       only affect windows created after the reload.
1396
1397       exe_search_path
1398
1399          exe_search_path
1400
1401       Control where kitty finds the programs to run. The default search order
1402       is:  First search the system wide PATH, then ~/.local/bin and ~/bin. If
1403       still not found, the PATH defined in the login shell after sourcing all
1404       its  startup files is tried. Finally, if present, the PATH specified by
1405       the env option is tried.
1406
1407       This option allows you to prepend, append, or remove  paths  from  this
1408       search  order. It can be specified multiple times for multiple paths. A
1409       simple path will be prepended to the search order. A path  that  starts
1410       with  the + sign will be append to the search order, after ~/bin above.
1411       A path that starts with the - sign will  be  removed  from  the  entire
1412       search order.  For example:
1413
1414          exe_search_path /some/prepended/path
1415          exe_search_path +/some/appended/path
1416          exe_search_path -/some/excluded/path
1417
1418       update_check_interval
1419
1420          update_check_interval 24
1421
1422       The  interval  to periodically check if an update to kitty is available
1423       (in hours). If an update is found, a system notification  is  displayed
1424       informing you of the available update. The default is to check every 24
1425       hours, set to zero to disable. Update checking is only done by the  of‐
1426       ficial binary builds. Distro packages or source builds do not do update
1427       checking. Changing this option by reloading  the  config  is  not  sup‐
1428       ported.
1429
1430       startup_session
1431
1432          startup_session none
1433
1434       Path  to a session file to use for all kitty instances. Can be overrid‐
1435       den by using the kitty --session command line option for individual in‐
1436       stances.  See  Startup Sessions in the kitty documentation for details.
1437       Note that relative paths are interpreted with respect to the kitty con‐
1438       fig  directory.  Environment variables in the path are expanded. Chang‐
1439       ing this option by reloading the config is not supported.
1440
1441       clipboard_control
1442
1443          clipboard_control write-clipboard write-primary read-clipboard-ask read-primary-ask
1444
1445       Allow programs running in kitty to read and write from  the  clipboard.
1446       You can control exactly which actions are allowed. The possible actions
1447       are:  write-clipboard,  read-clipboard,  write-primary,   read-primary,
1448       read-clipboard-ask,  read-primary-ask.  The default is to allow writing
1449       to the clipboard and primary selection and to ask for permission when a
1450       program  tries to read from the clipboard. Note that disabling the read
1451       confirmation is a security risk as it means that any program, even  the
1452       ones  running  on  a remote server via SSH can read your clipboard. See
1453       also clipboard_max_size.
1454
1455       clipboard_max_size
1456
1457          clipboard_max_size 64
1458
1459       The maximum size (in MB) of data from programs running  in  kitty  that
1460       will  be  stored  for  writing to the system clipboard. A value of zero
1461       means no size limit is applied. See also clipboard_control.
1462
1463       file_transfer_confirmation_bypass
1464
1465          file_transfer_confirmation_bypass
1466
1467       The password that can be supplied to the file transfer kitten  to  skip
1468       the  transfer confirmation prompt. This should only be used when initi‐
1469       ating transfers from trusted computers, over trusted  networks  or  en‐
1470       crypted transports, as it allows any programs running on the remote ma‐
1471       chine to read/write to the local filesystem, without permission.
1472
1473       allow_hyperlinks
1474
1475          allow_hyperlinks yes
1476
1477       Process hyperlink escape sequences (OSC 8). If disabled  OSC  8  escape
1478       sequences  are ignored. Otherwise they become clickable links, that you
1479       can click with the mouse or by using the  hints  kitten.   The  special
1480       value  of  ask  means  that kitty will ask before opening the link when
1481       clicked.
1482
1483       shell_integration
1484
1485          shell_integration enabled
1486
1487       Enable shell integration on supported  shells.  This  enables  features
1488       such  as jumping to previous prompts, browsing the output of the previ‐
1489       ous command in a pager, etc. on supported shells. Set  to  disabled  to
1490       turn  off shell integration, completely. It is also possible to disable
1491       individual features, set to a space separated  list  of  these  values:
1492       no-rc,  no-cursor,  no-title, no-cwd, no-prompt-mark, no-complete.  See
1493       Shell integration for details.
1494
1495       allow_cloning
1496
1497          allow_cloning ask
1498
1499       Control whether programs running in the terminal can request  new  win‐
1500       dows  to  be  created.  The canonical example is clone-in-kitty. By de‐
1501       fault, kitty will ask for permission for each clone  request.  Allowing
1502       cloning unconditionally gives programs running in the terminal (includ‐
1503       ing over SSH) permission to execute arbitrary code, as the user who  is
1504       running the terminal, on the computer that the terminal is running on.
1505
1506       clone_source_strategies
1507
1508          clone_source_strategies venv,conda,env_var,path
1509
1510       Control  what  shell code is sourced when running clone-in-kitty in the
1511       newly cloned window. The supported strategies are:
1512
1513       venv   Source the file $VIRTUAL_ENV/bin/activate. This is used  by  the
1514              Python  stdlib  venv  module  and allows cloning venvs automati‐
1515              cally.
1516
1517       conda  Run conda activate $CONDA_DEFAULT_ENV. This supports the virtual
1518              environments created by conda.
1519
1520       env_var
1521              Execute    the    contents    of    the   environment   variable
1522              KITTY_CLONE_SOURCE_CODE with eval.
1523
1524       path   Source  the  file  pointed  to  by  the   environment   variable
1525              KITTY_CLONE_SOURCE_PATH.
1526
1527       This  option  must  be a comma separated list of the above values. This
1528       only source the first valid one in the above order.
1529
1530       term
1531
1532          term xterm-kitty
1533
1534       The value of the TERM environment variable to set.  Changing  this  can
1535       break  many  terminal programs, only change it if you know what you are
1536       doing, not because you read some advice on "Stack Overflow"  to  change
1537       it.  The  TERM  variable is used by various programs to get information
1538       about the capabilities and behavior of the terminal. If you change  it,
1539       depending  on what programs you run, and how different the terminal you
1540       are changing it to is, various things from key-presses, to  colors,  to
1541       various advanced features may not work. Changing this option by reload‐
1542       ing the config will only affect newly created windows.
1543
1544       wayland_titlebar_color
1545
1546          wayland_titlebar_color system
1547
1548       The color of the kitty window's titlebar on Wayland systems with client
1549       side  window  decorations such as GNOME. A value of system means to use
1550       the default system color, a value of background means to use the  back‐
1551       ground  color of the currently active window and finally you can use an
1552       arbitrary color, such as #12af59 or red.
1553
1554       macos_titlebar_color
1555
1556          macos_titlebar_color system
1557
1558       The color of the kitty window's titlebar on macOS. A  value  of  system
1559       means  to  use the default system color, light or dark can also be used
1560       to set it explicitly. A value of background means to use the background
1561       color  of  the currently active window and finally you can use an arbi‐
1562       trary color, such as #12af59 or red. WARNING: This option works by  us‐
1563       ing a hack when arbitrary color (or background) is configured, as there
1564       is no proper Cocoa API for it. It sets the background color of the  en‐
1565       tire window and makes the titlebar transparent. As such it is incompat‐
1566       ible with background_opacity. If you want to use both, you are probably
1567       better off just hiding the titlebar with hide_window_decorations.
1568
1569       macos_option_as_alt
1570
1571          macos_option_as_alt no
1572
1573       Use  the  Option key as an Alt key on macOS. With this set to no, kitty
1574       will use the macOS native Option+Key to enter Unicode character  behav‐
1575       ior.  This  will  break any Alt+Key keyboard shortcuts in your terminal
1576       programs, but you can use the macOS Unicode input  technique.  You  can
1577       use the values: left, right or both to use only the left, right or both
1578       Option keys as Alt, instead. Note that kitty itself always  treats  Op‐
1579       tion  the same as Alt. This means you cannot use this option to config‐
1580       ure different kitty shortcuts for Option+Key  vs.  Alt+Key.  Also,  any
1581       kitty  shortcuts  using  Option/Alt+Key will take priority, so that any
1582       such key presses will not be passed to terminal programs running inside
1583       kitty. Changing this option by reloading the config is not supported.
1584
1585       macos_hide_from_tasks
1586
1587          macos_hide_from_tasks no
1588
1589       Hide the kitty window from running tasks on macOS (⌘+Tab and the Dock).
1590       Changing this option by reloading the config is not supported.
1591
1592       macos_quit_when_last_window_closed
1593
1594          macos_quit_when_last_window_closed no
1595
1596       Have kitty quit when all the top-level windows are closed on macOS.  By
1597       default,  kitty will stay running, even with no open windows, as is the
1598       expected behavior on macOS.
1599
1600       macos_window_resizable
1601
1602          macos_window_resizable yes
1603
1604       Disable this if you want kitty top-level OS windows to not be resizable
1605       on macOS. Changing this option by reloading the config will only affect
1606       newly created OS windows.
1607
1608       macos_thicken_font
1609
1610          macos_thicken_font 0
1611
1612       Draw an extra border around the font with the given width, to  increase
1613       legibility  at  small font sizes on macOS. For example, a value of 0.75
1614       will result in rendering that looks similar to  sub-pixel  antialiasing
1615       at common font sizes.
1616
1617       macos_traditional_fullscreen
1618
1619          macos_traditional_fullscreen no
1620
1621       Use  the  macOS traditional full-screen transition, that is faster, but
1622       less pretty.
1623
1624       macos_show_window_title_in
1625
1626          macos_show_window_title_in all
1627
1628       Control where the window title is displayed on macOS. A value of window
1629       will  show  the  title of the currently active window at the top of the
1630       macOS window. A value of menubar will show the title of  the  currently
1631       active  window  in  the  macOS global menu bar, making use of otherwise
1632       wasted space. A value of all will show the title in  both  places,  and
1633       none  hides  the  title.  See macos_menubar_title_max_length for how to
1634       control the length of the title in the menu bar.
1635
1636       macos_menubar_title_max_length
1637
1638          macos_menubar_title_max_length 0
1639
1640       The maximum number of characters from the window title to show  in  the
1641       macOS global menu bar. Values less than one means that there is no max‐
1642       imum limit.
1643
1644       macos_custom_beam_cursor
1645
1646          macos_custom_beam_cursor no
1647
1648       Use a custom mouse cursor for macOS that is easier to see on both light
1649       and  dark backgrounds. Nowadays, the default macOS cursor already comes
1650       with a white border. WARNING: this might make your mouse cursor invisi‐
1651       ble  on dual GPU machines. Changing this option by reloading the config
1652       is not supported.
1653
1654       macos_colorspace
1655
1656          macos_colorspace srgb
1657
1658       The colorspace in which to interpret terminal colors.  The  default  of
1659       srgb  will  cause colors to match those seen in web browsers. The value
1660       of default will use whatever the native colorspace of the  display  is.
1661       The  value  of  displayp3 will use Apple's special snowflake display P3
1662       color space, which will result in over saturated (brighter) colors with
1663       some  color  shift. Reloading configuration will change this value only
1664       for newly created OS windows.
1665
1666       linux_display_server
1667
1668          linux_display_server auto
1669
1670       Choose between Wayland and X11 backends.  By  default,  an  appropriate
1671       backend  based  on  the system state is chosen automatically. Set it to
1672       x11 or wayland to force the choice. Changing this option  by  reloading
1673       the config is not supported.
1674
1675       Keys  are  identified simply by their lowercase Unicode characters. For
1676       example: a for the A key, [ for the left square bracket key, etc.   For
1677       functional  keys,  such  as  Enter  or Escape, the names are present at
1678       Functional key definitions. For modifier keys, the names are ctrl (con‐
1679       trol,  ),  shift  (),  alt (opt, option, ), super (cmd, command, ).
1680       See also: GLFW mods
1681
1682       On Linux you can also use XKB key names to bind keys that are not  sup‐
1683       ported  by  GLFW. See XKB keys for a list of key names. The name to use
1684       is the part after the XKB_KEY_ prefix. Note that you can  only  use  an
1685       XKB key name for keys that are not known as GLFW keys.
1686
1687       Finally,  you  can use raw system key codes to map keys, again only for
1688       keys that are not known as GLFW keys. To see the system key code for  a
1689       key, start kitty with the kitty --debug-input option, kitty will output
1690       some debug text for every key event. In that text look for native_code,
1691       the value of that becomes the key name in the shortcut. For example:
1692
1693          on_key_input: glfw key: 0x61 native_code: 0x61 action: PRESS mods: none text: 'a'
1694
1695       Here, the key name for the A key is 0x61 and you can use it with:
1696
1697          map ctrl+0x61 something
1698
1699       to map Ctrl+A to something.
1700
1701       You  can use the special action no_op to unmap a keyboard shortcut that
1702       is assigned in the default configuration:
1703
1704          map kitty_mod+space no_op
1705
1706       If you would like kitty to completely ignore  a  key  event,  not  even
1707       sending  it  to  the  program  running  in  the  terminal,  map  it  to
1708       discard_event:
1709
1710          map kitty_mod+f1 discard_event
1711
1712       You can combine multiple actions to be triggered by a  single  shortcut
1713       with combine action, using the syntax below:
1714
1715          map key combine <separator> action1 <separator> action2 <separator> action3 ...
1716
1717       For example:
1718
1719          map kitty_mod+e combine : new_window : next_layout
1720
1721       This will create a new window and switch to the next available layout.
1722
1723       You can use multi-key shortcuts with the syntax shown below:
1724
1725          map key1>key2>key3 action
1726
1727       For example:
1728
1729          map ctrl+f>2 set_font_size 20
1730
1731       The full list of actions that can be mapped to key presses is available
1732       here.
1733
1734       kitty_mod
1735
1736          kitty_mod ctrl+shift
1737
1738       Special modifier key alias for default shortcuts. You  can  change  the
1739       value of this option to alter all default shortcuts that use kitty_mod.
1740
1741       clear_all_shortcuts
1742
1743          clear_all_shortcuts no
1744
1745       Remove all shortcut definitions up to this point. Useful, for instance,
1746       to remove the default shortcuts.
1747
1748       action_alias
1749
1750          action_alias launch_tab launch --type=tab --cwd=current
1751
1752       Define action aliases to avoid repeating the same options  in  multiple
1753       mappings.   Aliases  can be defined for any action and will be expanded
1754       recursively. For example, the above alias allows you to create mappings
1755       to  launch  a new tab in the current working directory without duplica‐
1756       tion:
1757
1758          map f1 launch_tab vim
1759          map f2 launch_tab emacs
1760
1761       Similarly, to alias kitten invocation:
1762
1763          action_alias hints kitten hints --hints-offset=0
1764
1765       kitten_alias
1766
1767          kitten_alias hints hints --hints-offset=0
1768
1769       Like action_alias above, but specifically for kittens. Generally,  pre‐
1770       fer  to  use action_alias. This option is a legacy version, present for
1771       backwards compatibility. It causes all invocations of the aliased  kit‐
1772       ten  to be substituted. So the example above will cause all invocations
1773       of the hints kitten to have the --hints-offset=0 option applied.
1774

CLIPBOARD

1776       Copy to clipboard
1777
1778          map ctrl+shift+c copy_to_clipboard
1779          map cmd+c copy_to_clipboard 🍎
1780
1781       There is also a copy_or_interrupt action that can be optionally  mapped
1782       to Ctrl+C. It will copy only if there is a selection and send an inter‐
1783       rupt otherwise. Similarly, copy_and_clear_or_interrupt  will  copy  and
1784       clear the selection or send an interrupt if there is no selection.
1785
1786       Paste from clipboard
1787
1788          map ctrl+shift+v paste_from_clipboard
1789          map cmd+v paste_from_clipboard 🍎
1790
1791       Paste from selection
1792
1793          map ctrl+shift+s paste_from_selection
1794          map shift+insert paste_from_selection
1795
1796       Pass selection to program
1797
1798          map ctrl+shift+o pass_selection_to_program
1799
1800       You  can also pass the contents of the current selection to any program
1801       with pass_selection_to_program. By default, the system's  open  program
1802       is  used, but you can specify your own, the selection will be passed as
1803       a command line argument to the program. For example:
1804
1805          map kitty_mod+o pass_selection_to_program firefox
1806
1807       You can pass the current selection to a terminal program running  in  a
1808       new kitty window, by using the @selection placeholder:
1809
1810          map kitty_mod+y new_window less @selection
1811

SCROLLING

1813       Scroll line up
1814
1815          map ctrl+shift+up scroll_line_up
1816          map ctrl+shift+k scroll_line_up
1817          map opt+cmd+page_up scroll_line_up 🍎
1818          map cmd+up scroll_line_up 🍎
1819
1820       Scroll line down
1821
1822          map ctrl+shift+down scroll_line_down
1823          map ctrl+shift+j scroll_line_down
1824          map opt+cmd+page_down scroll_line_down 🍎
1825          map cmd+down scroll_line_down 🍎
1826
1827       Scroll page up
1828
1829          map ctrl+shift+page_up scroll_page_up
1830          map cmd+page_up scroll_page_up 🍎
1831
1832       Scroll page down
1833
1834          map ctrl+shift+page_down scroll_page_down
1835          map cmd+page_down scroll_page_down 🍎
1836
1837       Scroll to top
1838
1839          map ctrl+shift+home scroll_home
1840          map cmd+home scroll_home 🍎
1841
1842       Scroll to bottom
1843
1844          map ctrl+shift+end scroll_end
1845          map cmd+end scroll_end 🍎
1846
1847       Scroll to previous shell prompt
1848
1849          map ctrl+shift+z scroll_to_prompt -1
1850
1851       Use  a parameter of 0 for scroll_to_prompt to scroll to the last jumped
1852       to or the last clicked position. Requires shell integration to work.
1853
1854       Scroll to next shell prompt
1855
1856          map ctrl+shift+x scroll_to_prompt 1
1857
1858       Browse scrollback buffer in pager
1859
1860          map ctrl+shift+h show_scrollback
1861
1862       You can pipe the contents of the current screen and history  buffer  as
1863       STDIN  to  an arbitrary program using launch --stdin-source.  For exam‐
1864       ple, the following opens the scrollback buffer in less  in  an  overlay
1865       window:
1866
1867          map f1 launch --stdin-source=@screen_scrollback --stdin-add-formatting --type=overlay less +G -R
1868
1869       For  more details on piping screen and buffer contents to external pro‐
1870       grams, see The launch command.
1871
1872       Browse output of the last shell command in pager
1873
1874          map ctrl+shift+g show_last_command_output
1875
1876       You can also define additional shortcuts to  get  the  command  output.
1877       For example, to get the first command output on screen:
1878
1879          map f1 show_first_command_output_on_screen
1880
1881       To  get  the command output that was last accessed by a keyboard action
1882       or mouse action:
1883
1884          map f1 show_last_visited_command_output
1885
1886       You can pipe the output of the last command run in the shell using  the
1887       launch  action.  For example, the following opens the output in less in
1888       an overlay window:
1889
1890          map f1 launch --stdin-source=@last_cmd_output --stdin-add-formatting --type=overlay less +G -R
1891
1892       To  get  the  output  of  the  first  command  on   the   screen,   use
1893       @first_cmd_output_on_screen.   To  get the output of the last jumped to
1894       command, use @last_visited_cmd_output.
1895
1896       Requires shell integration to work.
1897

WINDOW MANAGEMENT

1899       New window
1900
1901          map ctrl+shift+enter new_window
1902          map cmd+enter new_window 🍎
1903
1904       You can open a new kitty window running an arbitrary program, for exam‐
1905       ple:
1906
1907          map kitty_mod+y launch mutt
1908
1909       You can open a new window with the current working directory set to the
1910       working directory of the current window using:
1911
1912          map ctrl+alt+enter launch --cwd=current
1913
1914       You can open a new window that is allowed  to  control  kitty  via  the
1915       kitty  remote control facility with launch --allow-remote-control.  Any
1916       programs running in that window will be allowed to control kitty.   For
1917       example:
1918
1919          map ctrl+enter launch --allow-remote-control some_program
1920
1921       You can open a new window next to the currently active window or as the
1922       first window, with:
1923
1924          map ctrl+n launch --location=neighbor
1925          map ctrl+f launch --location=first
1926
1927       For more details, see The launch command.
1928
1929       New OS window
1930
1931          map ctrl+shift+n new_os_window
1932          map cmd+n new_os_window 🍎
1933
1934       Works like new_window above, except that it opens a top-level  OS  win‐
1935       dow.  In particular you can use new_os_window_with_cwd to open a window
1936       with the current working directory.
1937
1938       Close window
1939
1940          map ctrl+shift+w close_window
1941          map shift+cmd+d close_window 🍎
1942
1943       Next window
1944
1945          map ctrl+shift+] next_window
1946
1947       Previous window
1948
1949          map ctrl+shift+[ previous_window
1950
1951       Move window forward
1952
1953          map ctrl+shift+f move_window_forward
1954
1955       Move window backward
1956
1957          map ctrl+shift+b move_window_backward
1958
1959       Move window to top
1960
1961          map ctrl+shift+` move_window_to_top
1962
1963       Start resizing window
1964
1965          map ctrl+shift+r start_resizing_window
1966          map cmd+r start_resizing_window 🍎
1967
1968       First window
1969
1970          map ctrl+shift+1 first_window
1971          map cmd+1 first_window 🍎
1972
1973       Second window
1974
1975          map ctrl+shift+2 second_window
1976          map cmd+2 second_window 🍎
1977
1978       Third window
1979
1980          map ctrl+shift+3 third_window
1981          map cmd+3 third_window 🍎
1982
1983       Fourth window
1984
1985          map ctrl+shift+4 fourth_window
1986          map cmd+4 fourth_window 🍎
1987
1988       Fifth window
1989
1990          map ctrl+shift+5 fifth_window
1991          map cmd+5 fifth_window 🍎
1992
1993       Sixth window
1994
1995          map ctrl+shift+6 sixth_window
1996          map cmd+6 sixth_window 🍎
1997
1998       Seventh window
1999
2000          map ctrl+shift+7 seventh_window
2001          map cmd+7 seventh_window 🍎
2002
2003       Eight window
2004
2005          map ctrl+shift+8 eighth_window
2006          map cmd+8 eighth_window 🍎
2007
2008       Ninth window
2009
2010          map ctrl+shift+9 ninth_window
2011          map cmd+9 ninth_window 🍎
2012
2013       Tenth window
2014
2015          map ctrl+shift+0 tenth_window
2016
2017       Visually select and focus window
2018
2019          map ctrl+shift+f7 focus_visible_window
2020
2021       Display overlay numbers and alphabets on the window, and switch the fo‐
2022       cus  to the window when you press the key. When there are only two win‐
2023       dows, the focus will be switched directly without displaying the  over‐
2024       lay.  You can change the overlay characters and their order with option
2025       visual_window_select_characters.
2026
2027       Visually swap window with another
2028
2029          map ctrl+shift+f8 swap_with_window
2030
2031       Works like focus_visible_window above, but swaps the window.
2032

TAB MANAGEMENT

2034       Next tab
2035
2036          map ctrl+shift+right next_tab
2037          map shift+cmd+] next_tab 🍎
2038          map ctrl+tab next_tab
2039
2040       Previous tab
2041
2042          map ctrl+shift+left previous_tab
2043          map shift+cmd+[ previous_tab 🍎
2044          map ctrl+shift+tab previous_tab
2045
2046       New tab
2047
2048          map ctrl+shift+t new_tab
2049          map cmd+t new_tab 🍎
2050
2051       Close tab
2052
2053          map ctrl+shift+q close_tab
2054          map cmd+w close_tab 🍎
2055
2056       Close OS window
2057
2058          map shift+cmd+w close_os_window 🍎
2059
2060       Move tab forward
2061
2062          map ctrl+shift+. move_tab_forward
2063
2064       Move tab backward
2065
2066          map ctrl+shift+, move_tab_backward
2067
2068       Set tab title
2069
2070          map ctrl+shift+alt+t set_tab_title
2071          map shift+cmd+i set_tab_title 🍎
2072
2073       You can also create shortcuts to go to specific tabs, with 1 being  the
2074       first tab, 2 the second tab and -1 being the previously active tab, and
2075       any number larger than the last tab being the last tab:
2076
2077          map ctrl+alt+1 goto_tab 1
2078          map ctrl+alt+2 goto_tab 2
2079
2080       Just as with new_window above, you can also pass the name of  arbitrary
2081       commands  to  run  when using new_tab and new_tab_with_cwd. Finally, if
2082       you want the new tab to open next to the current tab rather than at the
2083       end of the tabs list, use:
2084
2085          map ctrl+t new_tab !neighbor [optional cmd to run]
2086

LAYOUT MANAGEMENT

2088       Next layout
2089
2090          map ctrl+shift+l next_layout
2091
2092       You can also create shortcuts to switch to specific layouts:
2093
2094          map ctrl+alt+t goto_layout tall
2095          map ctrl+alt+s goto_layout stack
2096
2097       Similarly, to switch back to the previous layout:
2098
2099          map ctrl+alt+p last_used_layout
2100
2101       There  is also a toggle_layout action that switches to the named layout
2102       or back to the previous layout if in the named layout. Useful to tempo‐
2103       rarily "zoom" the active window by switching to the stack layout:
2104
2105          map ctrl+alt+z toggle_layout stack
2106

FONT SIZES

2108       You  can  change  the font size for all top-level kitty OS windows at a
2109       time or only the current one.
2110
2111       Increase font size
2112
2113          map ctrl+shift+equal change_font_size all +2.0
2114          map ctrl+shift+plus change_font_size all +2.0
2115          map ctrl+shift+kp_add change_font_size all +2.0
2116          map cmd+plus change_font_size all +2.0 🍎
2117          map cmd+equal change_font_size all +2.0 🍎
2118          map shift+cmd+equal change_font_size all +2.0 🍎
2119
2120       Decrease font size
2121
2122          map ctrl+shift+minus change_font_size all -2.0
2123          map ctrl+shift+kp_subtract change_font_size all -2.0
2124          map cmd+minus change_font_size all -2.0 🍎
2125          map shift+cmd+minus change_font_size all -2.0 🍎
2126
2127       Reset font size
2128
2129          map ctrl+shift+backspace change_font_size all 0
2130          map cmd+0 change_font_size all 0 🍎
2131
2132       To setup shortcuts for specific font sizes:
2133
2134          map kitty_mod+f6 change_font_size all 10.0
2135
2136       To setup shortcuts to change only the current OS window's font size:
2137
2138          map kitty_mod+f6 change_font_size current 10.0
2139

SELECT AND ACT ON VISIBLE TEXT

2141       Use the hints kitten to select text and either pass it to  an  external
2142       program or insert it into the terminal or copy it to the clipboard.
2143
2144       Open URL
2145
2146          map ctrl+shift+e open_url_with_hints
2147
2148       Open  a  currently  visible URL using the keyboard. The program used to
2149       open the URL is specified in open_url_with.
2150
2151       Insert selected path
2152
2153          map ctrl+shift+p>f kitten hints --type path --program -
2154
2155       Select a path/filename and insert it into the terminal. Useful, for in‐
2156       stance  to  run  git  commands on a filename output from a previous git
2157       command.
2158
2159       Open selected path
2160
2161          map ctrl+shift+p>shift+f kitten hints --type path
2162
2163       Select a path/filename and open it with the default open program.
2164
2165       Insert selected line
2166
2167          map ctrl+shift+p>l kitten hints --type line --program -
2168
2169       Select a line of text and insert it into the terminal. Useful  for  the
2170       output of things like: ls -1.
2171
2172       Insert selected word
2173
2174          map ctrl+shift+p>w kitten hints --type word --program -
2175
2176       Select words and insert into terminal.
2177
2178       Insert selected hash
2179
2180          map ctrl+shift+p>h kitten hints --type hash --program -
2181
2182       Select  something  that looks like a hash and insert it into the termi‐
2183       nal. Useful with git, which uses SHA1 hashes to identify commits.
2184
2185       Open the selected file at the selected line
2186
2187          map ctrl+shift+p>n kitten hints --type linenum
2188
2189       Select something that looks like filename:linenum and open it in vim at
2190       the specified line number.
2191
2192       Open the selected hyperlink
2193
2194          map ctrl+shift+p>y kitten hints --type hyperlink
2195
2196       Select a hyperlink (i.e. a URL that has been marked as such by the ter‐
2197       minal program, for example, by ls --hyperlink=auto).
2198
2199       The hints kitten has many more modes of operation that you can  map  to
2200       different shortcuts. For a full description see hints kitten.
2201

MISCELLANEOUS

2203       Toggle fullscreen
2204
2205          map ctrl+shift+f11 toggle_fullscreen
2206          map ctrl+cmd+f toggle_fullscreen 🍎
2207
2208       Toggle maximized
2209
2210          map ctrl+shift+f10 toggle_maximized
2211
2212       Toggle macOS secure keyboard entry
2213
2214          map opt+cmd+s toggle_macos_secure_keyboard_entry 🍎
2215
2216       Unicode input
2217
2218          map ctrl+shift+u kitten unicode_input
2219          map ctrl+cmd+space kitten unicode_input 🍎
2220
2221       Edit config file
2222
2223          map ctrl+shift+f2 edit_config_file
2224          map cmd+, edit_config_file 🍎
2225
2226       Open the kitty command shell
2227
2228          map ctrl+shift+escape kitty_shell window
2229
2230       Open  the  kitty  shell  in a new window / tab / overlay / os_window to
2231       control kitty using commands.
2232
2233       Increase background opacity
2234
2235          map ctrl+shift+a>m set_background_opacity +0.1
2236
2237       Decrease background opacity
2238
2239          map ctrl+shift+a>l set_background_opacity -0.1
2240
2241       Make background fully opaque
2242
2243          map ctrl+shift+a>1 set_background_opacity 1
2244
2245       Reset background opacity
2246
2247          map ctrl+shift+a>d set_background_opacity default
2248
2249       Reset the terminal
2250
2251          map ctrl+shift+delete clear_terminal reset active
2252          map opt+cmd+r clear_terminal reset active 🍎
2253
2254       You can create shortcuts to clear/reset the terminal. For example:
2255
2256          # Reset the terminal
2257          map f1 clear_terminal reset active
2258          # Clear the terminal screen by erasing all contents
2259          map f1 clear_terminal clear active
2260          # Clear the terminal scrollback by erasing it
2261          map f1 clear_terminal scrollback active
2262          # Scroll the contents of the screen into the scrollback
2263          map f1 clear_terminal scroll active
2264          # Clear everything up to the line with the cursor
2265          map f1 clear_terminal to_cursor active
2266
2267       If you want to operate on all kitty windows instead of just the current
2268       one, use all instead of active.
2269
2270       It  is  also possible to remap Ctrl+L to both scroll the current screen
2271       contents into the scrollback buffer and clear the  screen,  instead  of
2272       just  clearing  the  screen,  for example, for ZSH add the following to
2273       ~/.zshrc:
2274
2275          scroll-and-clear-screen() {
2276              printf '\n%.0s' {1..$LINES}
2277              zle clear-screen
2278          }
2279          zle -N scroll-and-clear-screen
2280          bindkey '^l' scroll-and-clear-screen
2281
2282       Clear up to cursor line
2283
2284          map cmd+k clear_terminal to_cursor active 🍎
2285
2286       Reload kitty.conf
2287
2288          map ctrl+shift+f5 load_config_file
2289          map ctrl+cmd+, load_config_file 🍎
2290
2291       Reload kitty.conf, applying any changes since  the  last  time  it  was
2292       loaded.  Note  that  a handful of options cannot be dynamically changed
2293       and require a full restart of kitty. Particularly, when changing short‐
2294       cuts  for  actions located on the macOS global menu bar, a full restart
2295       is needed. You can also map a keybinding to  load  a  different  config
2296       file, for example:
2297
2298          map f5 load_config /path/to/alternative/kitty.conf
2299
2300       Note  that  all  options from the original kitty.conf are discarded, in
2301       other words the new configuration replace the old ones.
2302
2303       Debug kitty configuration
2304
2305          map ctrl+shift+f6 debug_config
2306          map opt+cmd+, debug_config 🍎
2307
2308       Show details about exactly what configuration kitty is running with and
2309       its host environment. Useful for debugging issues.
2310
2311       Send arbitrary text on key presses
2312
2313       You can tell kitty to send arbitrary (UTF-8) encoded text to the client
2314       program when pressing specified shortcut keys. For example:
2315
2316          map ctrl+alt+a send_text all Special text
2317
2318       This will send "Special text" when you press the Ctrl+Alt+A key  combi‐
2319       nation.  The  text to be sent is a python string literal so you can use
2320       escapes like x1b to send control codes or u21fb to send Unicode charac‐
2321       ters  (or  you  can just input the Unicode characters directly as UTF-8
2322       text). You can use kitty +kitten show_key to get the key  escape  codes
2323       you want to emulate.
2324
2325       The first argument to send_text is the keyboard modes in which to acti‐
2326       vate the shortcut. The possible values are normal,  application,  kitty
2327       or  a comma separated combination of them.  The modes normal and appli‐
2328       cation refer to the DECCKM cursor key mode  for  terminals,  and  kitty
2329       refers  to  the kitty extended keyboard protocol. The special value all
2330       means all of them.
2331
2332       Some more examples:
2333
2334          # Output a word and move the cursor to the start of the line (like typing and pressing Home)
2335          map ctrl+alt+a send_text normal Word\x1b[H
2336          map ctrl+alt+a send_text application Word\x1bOH
2337          # Run a command at a shell prompt (like typing the command and pressing Enter)
2338          map ctrl+alt+a send_text normal,application some command with arguments\r
2339
2340       Open kitty Website
2341
2342          map shift+cmd+/ open_url https://sw.kovidgoyal.net/kitty/ 🍎
2343
2344       You can edit a  fully  commented  sample  kitty.conf  by  pressing  the
2345       ctrl+shift+f2  shortcut in kitty. This will generate a config file with
2346       full documentation and all  settings  commented  out.  If  you  have  a
2347       pre-existing  kitty.conf,  then that will be used instead, delete it to
2348       see the sample file.
2349
2350       See the list of all the things you can make kitty can do.
2351

MAPPABLE ACTIONS

2353       The actions described below can be mapped to any key press or mouse ac‐
2354       tion using the map and mouse_map directives in kitty.conf. For configu‐
2355       ration examples, see the default shortcut links for each action.
2356

COPY/PASTE

2358       clear_selection
2359
2360       Clear the current selection
2361
2362       copy_and_clear_or_interrupt
2363
2364       Copy the selected text from the active  window  to  the  clipboard  and
2365       clear selection, if no selection, send SIGINT (aka ctrl+c)
2366
2367       copy_ansi_to_clipboard
2368
2369       Copy  the  selected  text  from the active window to the clipboard with
2370       ANSI formatting codes
2371
2372       copy_or_interrupt
2373
2374       Copy the selected text from the active window to the clipboard,  if  no
2375       selection, send SIGINT (aka ctrl+c)
2376
2377       copy_to_clipboard
2378
2379       Copy the selected text from the active window to the clipboard
2380
2381       Default shortcuts using this action: ctrl+shift+c
2382
2383       pass_selection_to_program
2384
2385       Pass the selected text from the active window to the specified program
2386
2387       Default shortcuts using this action: ctrl+shift+o
2388
2389       paste
2390
2391       Paste the specified text into the current window
2392
2393       show_first_command_output_on_screen
2394
2395       Show output from the first shell command on screen in a pager like less
2396
2397       Requires Shell integration to work
2398
2399       show_last_command_output
2400
2401       Show output from the last shell command in a pager like less
2402
2403       Requires Shell integration to work
2404
2405       Default shortcuts using this action: ctrl+shift+g
2406
2407       show_last_non_empty_command_output
2408
2409       Show  the  last  non-empty  output from a shell command in a pager like
2410       less
2411
2412       Requires Shell integration to work
2413
2414       show_last_visited_command_output
2415
2416       Show the first command output below  the  last  scrolled  position  via
2417       scroll_to_prompt
2418
2419       or the last mouse clicked command output in a pager like less
2420
2421       Requires Shell integration to work
2422
2423       show_scrollback
2424
2425       Show scrollback in a pager like less
2426
2427       Default shortcuts using this action: ctrl+shift+h
2428
2429       copy_to_buffer
2430
2431       Copy the selection from the active window to the specified buffer
2432
2433       See Multiple copy/paste buffers for details.
2434
2435       paste_from_buffer
2436
2437       Paste from the specified buffer to the active window
2438
2439       See Multiple copy/paste buffers for details.
2440
2441       paste_from_clipboard
2442
2443       Paste from the clipboard to the active window
2444
2445       Default shortcuts using this action: ctrl+shift+v
2446
2447       paste_from_selection
2448
2449       Paste  from  the primary selection, if present, otherwise the clipboard
2450       to the active window
2451
2452       Default shortcuts using this action: ctrl+shift+s
2453

DEBUGGING

2455       dump_lines_with_attrs
2456
2457       Show a dump of the current lines in the scrollback + screen with  their
2458       line attributes
2459
2460       close_shared_ssh_connections
2461
2462       Close all shared SSH connections
2463
2464       See share_connections for details.
2465
2466       debug_config
2467
2468       Show the effective configuration kitty is running with
2469
2470       Default shortcuts using this action: ctrl+shift+f6
2471
2472       show_kitty_env_vars
2473
2474       Show the environment variables that the kitty process sees
2475

LAYOUTS

2477       goto_layout
2478
2479       Switch to the named layout
2480
2481       For example:
2482
2483          map f1 goto_layout tall
2484
2485       last_used_layout
2486
2487       Go to the previously used layout
2488
2489       layout_action
2490
2491       Perform a layout specific action. See Arrange windows for details
2492
2493       next_layout
2494
2495       Go to the next enabled layout
2496
2497       Default shortcuts using this action: ctrl+shift+l
2498
2499       toggle_layout
2500
2501       Toggle the named layout
2502
2503       Switches  to  the  named layout if another layout is current, otherwise
2504       switches to the last used layout. Useful to "zoom" a window temporarily
2505       by switching to the stack layout. For example:
2506
2507          map f1 toggle_layout stack
2508

MARKS

2510       remove_marker
2511
2512       Remove a previously created marker
2513
2514       scroll_to_mark
2515
2516       Scroll to the next or previous mark of the specified type
2517
2518       toggle_marker
2519
2520       Toggle the current marker on/off
2521
2522       create_marker
2523
2524       Create a new marker
2525

MISCELLANEOUS

2527       send_text
2528
2529       Send the specified text to the active window
2530
2531       See send_text for details.
2532
2533       Default shortcuts using this action: ctrl+shift+alt+h
2534
2535       signal_child
2536
2537       Send  the specified SIGNAL to the foreground process in the active win‐
2538       dow
2539
2540       For example:
2541
2542          map F1 signal_child SIGTERM
2543
2544       clear_terminal
2545
2546       Clear the terminal
2547
2548       See reset_terminal for details. For example:
2549
2550          # Reset the terminal
2551          map f1 clear_terminal reset active
2552          # Clear the terminal screen by erasing all contents
2553          map f1 clear_terminal clear active
2554          # Clear the terminal scrollback by erasing it
2555          map f1 clear_terminal scrollback active
2556          # Scroll the contents of the screen into the scrollback
2557          map f1 clear_terminal scroll active
2558          # Clear everything up to the line with the cursor
2559          map f1 clear_terminal to_cursor active
2560
2561       Default shortcuts using this action: cmd+k, ctrl+shift+delete
2562
2563       combine
2564
2565       Combine multiple actions and map to a single keypress
2566
2567       The syntax is:
2568
2569          map key combine <separator> action1 <separator> action2 <separator> action3 ...
2570
2571       For example:
2572
2573          map kitty_mod+e combine : new_window : next_layout
2574
2575       disable_ligatures_in
2576
2577       Turn on/off ligatures in the specified window
2578
2579       See disable_ligatures for details
2580
2581       discard_event
2582
2583       Discard this event completely ignoring it
2584
2585       edit_config_file
2586
2587       Edit the kitty.conf config file in your favorite text editor
2588
2589       Default shortcuts using this action: ctrl+shift+f2
2590
2591       input_unicode_character
2592
2593       Input an arbitrary unicode character. See Unicode input for details.
2594
2595       kitten
2596
2597       Run the specified kitten. See Custom kittens for details
2598
2599       Default shortcuts using this action:
2600
2601Hints - ctrl+shift+p>h Insert selected hash
2602
2603Hints - ctrl+shift+p>l Insert selected line
2604
2605Hints - ctrl+shift+p>f Insert selected path
2606
2607Hints - ctrl+shift+p>w Insert selected word
2608
2609Hints - ctrl+shift+p>shift+f Open selected path
2610
2611Hints - ctrl+shift+p>n Open the selected file at the selected line
2612
2613Hints - ctrl+shift+p>y Open the selected hyperlink
2614
2615Unicode input - ctrl+shift+u Unicode input
2616
2617       kitty_shell
2618
2619       Run the kitty shell to control kitty with commands
2620
2621       Default shortcuts using this action: ctrl+shift+escape
2622
2623       launch
2624
2625       Launch the specified program in a new window/tab/etc.
2626
2627       See The launch command for details
2628
2629       load_config_file
2630
2631       Reload the config file
2632
2633       If mapped without arguments reloads the default config file,  otherwise
2634       loads  the  specified config files, in order. Loading a config file re‐
2635       places all config options. For example:
2636
2637          map f5 load_config_file /path/to/some/kitty.conf
2638
2639       Default shortcuts using this action: ctrl+shift+f5
2640
2641       open_url
2642
2643       Open the specified URL
2644
2645       Default shortcuts using this action: shift+cmd+/
2646
2647       open_url_with_hints
2648
2649       Click a URL using the keyboard
2650
2651       Default shortcuts using this action: ctrl+shift+e
2652
2653       remote_control
2654
2655       Run a remote control command
2656
2657       For example:
2658
2659          map F1 remote_control set-spacing margin=30
2660
2661       See Mapping key presses to remote control commands for details.
2662
2663       set_colors
2664
2665       Change colors in the specified windows
2666
2667       For details, see kitty @ set-colors. For example:
2668
2669          map f5 set_colors --configured /path/to/some/config/file/colors.conf
2670
2671       toggle_macos_secure_keyboard_entry
2672
2673       Toggle macOS secure keyboard entry
2674
2675       Default shortcuts using this action: opt+cmd+s
2676
2677       no_op
2678
2679       Unbind a shortcut
2680
2681       Mapping a shortcut to no_op causes  kitty  to  not  intercept  the  key
2682       stroke anymore, instead passing it to the program running inside it.
2683

MOUSE ACTIONS

2685       mouse_click_url
2686
2687       Click the URL under the mouse
2688
2689       mouse_click_url_or_select
2690
2691       Click the URL under the mouse only if the screen has no selection
2692
2693       mouse_handle_click
2694
2695       Handle a mouse click
2696
2697       Try  to  perform  the specified actions one after the other till one of
2698       them is successful.  Supported actions are:
2699
2700          selection - check for a selection and if one exists abort processing
2701          link - if a link exists under the mouse, click it
2702          prompt - if the mouse click happens at a shell prompt move the cursor to the mouse location
2703
2704       For examples, see Mouse actions
2705
2706       mouse_select_command_output
2707
2708       Select clicked command output
2709
2710       Requires Shell integration to work
2711
2712       mouse_selection
2713
2714       Manipulate the selection based on the current mouse position
2715
2716       For examples, see Mouse actions
2717
2718       mouse_show_command_output
2719
2720       Show clicked command output in a pager like less
2721
2722       Requires Shell integration to work
2723
2724       paste_selection
2725
2726       Paste the current primary selection
2727
2728       paste_selection_or_clipboard
2729
2730       Paste the current primary selection or the clipboard if no selection is
2731       present
2732

SCROLLING

2734       scroll_end
2735
2736       Scroll to the bottom of the scrollback buffer
2737
2738       Default shortcuts using this action: ctrl+shift+end
2739
2740       scroll_home
2741
2742       Scroll to the top of the scrollback buffer
2743
2744       Default shortcuts using this action: ctrl+shift+home
2745
2746       scroll_line_down
2747
2748       Scroll down by one line
2749
2750       Default shortcuts using this action: ctrl+shift+down
2751
2752       scroll_line_up
2753
2754       Scroll up by one line
2755
2756       Default shortcuts using this action: ctrl+shift+up
2757
2758       scroll_page_down
2759
2760       Scroll down by one page
2761
2762       Default shortcuts using this action: ctrl+shift+page_down
2763
2764       scroll_page_up
2765
2766       Scroll up by one page
2767
2768       Default shortcuts using this action: ctrl+shift+page_up
2769
2770       scroll_prompt_to_bottom
2771
2772       Scroll  prompt to the bottom of the screen, filling in extra lines from
2773       the scrollback buffer
2774
2775       scroll_prompt_to_top
2776
2777       Scroll prompt to the top of the screen, filling screen with empty lines
2778
2779       scroll_to_prompt
2780
2781       Scroll to the previous/next shell command prompt
2782
2783       Allows easy jumping from one command  to  the  next.  Requires  working
2784       Shell  integration.  Takes a single, optional, number as argument which
2785       is the number of prompts to jump, negative values jump up and  positive
2786       values jump down.  A value of zero will jump to the last prompt visited
2787       by this action.  For example:
2788
2789          map ctrl+p scroll_to_prompt -1  # jump to previous
2790          map ctrl+n scroll_to_prompt 1   # jump to next
2791          map ctrl+o scroll_to_prompt 0   # jump to last visited
2792
2793       Default shortcuts using this action: ctrl+shift+x, ctrl+shift+z
2794

TAB MANAGEMENT

2796       close_other_tabs_in_os_window
2797
2798       Close all the tabs in the current OS window other  than  the  currently
2799       active tab
2800
2801       close_tab
2802
2803       Close the current tab
2804
2805       Default shortcuts using this action: ctrl+shift+q
2806
2807       detach_tab
2808
2809       Detach a tab, moving it to another OS Window
2810
2811       See detaching windows for details.
2812
2813       goto_tab
2814
2815       Go to the specified tab, by number, starting with 1
2816
2817       Zero and negative numbers go to previously active tabs
2818
2819       move_tab_backward
2820
2821       Move the active tab backward
2822
2823       Default shortcuts using this action: ctrl+shift+,
2824
2825       move_tab_forward
2826
2827       Move the active tab forward
2828
2829       Default shortcuts using this action: ctrl+shift+.
2830
2831       new_tab
2832
2833       Create a new tab
2834
2835       Default shortcuts using this action: ctrl+shift+t
2836
2837       new_tab_with_cwd
2838
2839       Create a new tab with working directory for the window in it set to the
2840       same as the active window
2841
2842       next_tab
2843
2844       Make the next tab active
2845
2846       Default shortcuts using this action: ctrl+shift+right
2847
2848       previous_tab
2849
2850       Make the previous tab active
2851
2852       Default shortcuts using this action: ctrl+shift+left
2853
2854       select_tab
2855
2856       Interactively select a tab to switch to
2857
2858       set_tab_title
2859
2860       Change the title of the active tab
2861
2862       Default shortcuts using this action: ctrl+shift+alt+t
2863

WINDOW MANAGEMENT

2865       close_other_windows_in_tab
2866
2867       Close all windows in the tab other than the currently active window
2868
2869       eighth_window
2870
2871       Focus the eighth window
2872
2873       Default shortcuts using this action: ctrl+shift+8
2874
2875       fifth_window
2876
2877       Focus the fifth window
2878
2879       Default shortcuts using this action: ctrl+shift+5
2880
2881       first_window
2882
2883       Focus the first window
2884
2885       Default shortcuts using this action: ctrl+shift+1
2886
2887       focus_visible_window
2888
2889       Focus a visible window by pressing the number  of  the  window.  Window
2890       numbers are displayed
2891
2892       over   the   windows   for   easy   selection   in   this   mode.   See
2893       visual_window_select_characters.
2894
2895       Default shortcuts using this action: ctrl+shift+f7
2896
2897       fourth_window
2898
2899       Focus the fourth window
2900
2901       Default shortcuts using this action: ctrl+shift+4
2902
2903       move_window
2904
2905       Move the window in the specified direction
2906
2907       For example:
2908
2909          map ctrl+left move_window left
2910          map ctrl+down move_window bottom
2911
2912       move_window_backward
2913
2914       Move active window backward (swap it with the previous window)
2915
2916       Default shortcuts using this action: ctrl+shift+b
2917
2918       move_window_forward
2919
2920       Move active window forward (swap it with the next window)
2921
2922       Default shortcuts using this action: ctrl+shift+f
2923
2924       move_window_to_top
2925
2926       Move active window to the top (make it the first window)
2927
2928       Default shortcuts using this action: ctrl+shift+`
2929
2930       neighboring_window
2931
2932       Focus the neighboring window in the current tab
2933
2934       For example:
2935
2936          map ctrl+left neighboring_window left
2937          map ctrl+down neighboring_window bottom
2938
2939       next_window
2940
2941       Focus the next window in the current tab
2942
2943       Default shortcuts using this action: ctrl+shift+]
2944
2945       ninth_window
2946
2947       Focus the ninth window
2948
2949       Default shortcuts using this action: ctrl+shift+9
2950
2951       nth_window
2952
2953       Focus the nth window if positive or the previously  active  windows  if
2954       negative. When the number is larger
2955
2956       than the number of windows focus the last window. For example:
2957
2958          # focus the previously active window
2959          map ctrl+p nth_window -1
2960          # focus the first window
2961          map ctrl+1 nth_window 0
2962
2963       previous_window
2964
2965       Focus the previous window in the current tab
2966
2967       Default shortcuts using this action: ctrl+shift+[
2968
2969       reset_window_sizes
2970
2971       Reset window sizes undoing any dynamic resizing of windows
2972
2973       resize_window
2974
2975       Resize the active window by the specified amount
2976
2977       See Resizing windows for details.
2978
2979       second_window
2980
2981       Focus the second window
2982
2983       Default shortcuts using this action: ctrl+shift+2
2984
2985       seventh_window
2986
2987       Focus the seventh window
2988
2989       Default shortcuts using this action: ctrl+shift+7
2990
2991       sixth_window
2992
2993       Focus the sixth window
2994
2995       Default shortcuts using this action: ctrl+shift+6
2996
2997       swap_with_window
2998
2999       Swap  the  current  window  with another window in the current tab, se‐
3000       lected visually. See visual_window_select_characters
3001
3002       Default shortcuts using this action: ctrl+shift+f8
3003
3004       tenth_window
3005
3006       Focus the tenth window
3007
3008       Default shortcuts using this action: ctrl+shift+0
3009
3010       third_window
3011
3012       Focus the third window
3013
3014       Default shortcuts using this action: ctrl+shift+3
3015
3016       change_font_size
3017
3018       Change the font size for the current or all OS Windows
3019
3020       See Font sizes for details.
3021
3022       Default    shortcuts    using    this     action:     ctrl+shift+minus,
3023       ctrl+shift+equal, ctrl+shift+backspace
3024
3025       close_os_window
3026
3027       Close the currently active OS Window
3028
3029       Default shortcuts using this action: shift+cmd+w
3030
3031       close_window
3032
3033       Close the currently active window
3034
3035       Default shortcuts using this action: ctrl+shift+w
3036
3037       close_window_with_confirmation
3038
3039       Close window with confirmation
3040
3041       Asks  for confirmation before closing the window. If you don't want the
3042       confirmation when the window is sitting at  a  shell  prompt  (requires
3043       Shell integration), use:
3044
3045          map f1 close_window_with_confirmation ignore-shell
3046
3047       detach_window
3048
3049       Detach a window, moving it to another tab or OS Window
3050
3051       See detaching windows for details.
3052
3053       new_os_window
3054
3055       New OS Window
3056
3057       Default shortcuts using this action: ctrl+shift+n
3058
3059       new_os_window_with_cwd
3060
3061       New  OS  Window with the same working directory as the currently active
3062       window
3063
3064       new_window
3065
3066       Create a new window
3067
3068       Default shortcuts using this action: ctrl+shift+enter
3069
3070       new_window_with_cwd
3071
3072       Create a new window with working directory same as that of  the  active
3073       window
3074
3075       nth_os_window
3076
3077       Focus the nth OS window
3078
3079       quit
3080
3081       Quit, closing all windows
3082
3083       set_background_opacity
3084
3085       Set the background opacity for the active OS Window
3086
3087       For example:
3088
3089          map f1 set_background_opacity +0.1
3090          map f2 set_background_opacity -0.1
3091          map f3 set_background_opacity 0.5
3092
3093       Default  shortcuts  using  this action: ctrl+shift+a>l, ctrl+shift+a>1,
3094       ctrl+shift+a>m, ctrl+shift+a>d
3095
3096       start_resizing_window
3097
3098       Resize the active window interactively
3099
3100       See Resizing windows for details.
3101
3102       Default shortcuts using this action: ctrl+shift+r
3103
3104       toggle_fullscreen
3105
3106       Toggle the fullscreen status of the active OS Window
3107
3108       Default shortcuts using this action: ctrl+shift+f11
3109
3110       toggle_maximized
3111
3112       Toggle the maximized status of the active OS Window
3113
3114       Default shortcuts using this action: ctrl+shift+f10
3115

AUTHOR

3117       Kovid Goyal
3118
3120       2022, Kovid Goyal
3121
3122
3123
3124
31250.25.2                           Jun 07, 2022                    KITTY.CONF(5)
Impressum