diff --git a/home-profiles/kitty/.config/kitty/kitty.conf b/home-profiles/kitty/.config/kitty/kitty.conf index 20770e98339ad0c2b3d417265c067a610439502a..5c96538f5f0af94b25d7a1133d0d9abb8c985f36 100644 --- a/home-profiles/kitty/.config/kitty/kitty.conf +++ b/home-profiles/kitty/.config/kitty/kitty.conf @@ -1,266 +1,36 @@ # vim:fileencoding=utf-8:ft=conf -# You can include secondary config files via the "include" directive. -# If you use a relative path for include, it is resolved with respect to the -# location of the current config file. Note that environment variables -# are expanded, so ${USER}.conf becomes name.conf if USER=name -# For example: -# include other.conf +font_family PragmataPro Mono Liga -# Fonts {{{ -# Font family. You can also specify different fonts for the -# bold/italic/bold-italic variants. By default they are derived automatically, -# by the OSes font system. Setting them manually is useful for font families -# that have many weight variants like Book, Medium, Thick, etc. For example: -# font_family Operator Mono Book -# bold_font Operator Mono Medium -# italic_font Operator Mono Book Italic -# bold_italic_font Operator Mono Medium Italic -# -# You can get a list of full family names available on your computer by running -# kitty list-fonts -#font_family FiraCode-Retina -#font_family Fura Code Retina Nerd Font Complete Mono -#font_family FuraCode Nerd Font:style=Retina -font_family Fira Code -#font_family Fura Code Retina Nerd Font Complete -italic_font auto -bold_font Fira Code Bold -#bold_font Fura Code Bold Nerd Font Complete -bold_italic_font auto +#font_family Fira Code +#italic_font auto +#bold_font Fira Code Bold +#bold_italic_font auto -# Font size (in pts) -font_size 9.0 +font_size 8.5 -# Adjust the cell dimensions. -# You can use either numbers, which are interpreted as pixels or percentages -# (number followed by %), which are interpreted as percentages of the -# unmodified values. You can use negative pixels or percentages less than -# 100% to reduce sizes (but this might cause rendering artifacts). -adjust_line_height 0 -adjust_column_width 0 - -# Symbol mapping (special font for specified unicode code points). Map the -# specified unicode codepoints to a particular font. Useful if you need special -# rendering for some symbols, such as for Powerline. Avoids the need for -# patched fonts. Each unicode code point is specified in the form U+<code point -# in hexadecimal>. You can specify multiple code points, separated by commas -# and ranges separated by hyphens. symbol_map itself can be specified multiple times. -# Syntax is: -# -# symbol_map codepoints Font Family Name -# -# For example: -# -# symbol_map U+E0A0-U+E0A2,U+E0B0-U+E0B3 PowerlineSymbols - -# Change the sizes of the lines used for the box drawing unicode characters -# These values are in pts. They will be scaled by the monitor DPI to arrive at -# a pixel value. There must be four values corresponding to thin, normal, thick, -# and very thick lines; -box_drawing_scale 0.001, 1, 1.5, 2 -# }}} - - -# Cursor customization {{{ -# The cursor color -cursor #cccccc - -# The cursor shape can be one of (block, beam, underline) -cursor_shape block - -# The interval (in seconds) at which to blink the cursor. Set to zero to -# disable blinking. Note that numbers smaller than repaint_delay will be -# limited to repaint_delay. cursor_blink_interval 0.5 -# Stop blinking cursor after the specified number of seconds of keyboard inactivity. Set to -# zero to never stop blinking. -cursor_stop_blinking_after 5.0 -# }}} +cursor_stop_blinking_after 5 -# Scrollback {{{ -# Number of lines of history to keep in memory for scrolling back scrollback_lines 10000 +scrollback_pager_history_size 10 -# Program with which to view scrollback in a new window. The scrollback buffer is passed as -# STDIN to this program. If you change it, make sure the program you use can -# handle ANSI escape sequences for colors and text formatting. -scrollback_pager less +G -R - -# Wheel scroll multiplier (modify the amount scrolled by the mouse wheel). Use negative -# numbers to change scroll direction. -wheel_scroll_multiplier 5.0 -# }}} - - -# Mouse {{{ -# The color and style for highlighting URLs on mouse-over. url_style can be one of: -# none, single, double, curly -url_color #0087BD -url_style curly - -# The modifier keys to press when clicking with the mouse on URLs to open the URL -open_url_modifiers kitty_mod - -# The program with which to open URLs that are clicked on. The special value "default" means to -# use the operating system's default URL handler. -open_url_with default - -# Copy to clipboard on select. With this enabled, simply selecting text with -# the mouse will cause the text to be copied to clipboard. Useful on platforms -# such as macOS/Wayland that do not have the concept of primary selections. Note -# that this is a security risk, as all programs, including websites open in your -# browser can read the contents of the clipboard. -copy_on_select no - -# The modifiers to use rectangular selection (i.e. to select text in a -# rectangular block with the mouse) -rectangle_select_modifiers ctrl+alt - -# Characters considered part of a word when double clicking. In addition to these characters -# any character that is marked as an alpha-numeric character in the unicode -# database will be matched. -select_by_word_characters :@-./_~?&=%+# - -# The interval between successive clicks to detect double/triple clicks (in seconds) -click_interval 0.5 - -# Hide mouse cursor after the specified number of seconds of the mouse not being used. Set to -# zero to disable mouse cursor hiding. -mouse_hide_wait 3.0 - -# Set the active window to the window under the mouse when moving the mouse around -focus_follows_mouse no -# }}} - - -# Performance tuning {{{ -# Delay (in milliseconds) between screen updates. Decreasing it, increases -# frames-per-second (FPS) at the cost of more CPU usage. The default value -# yields ~100 FPS which is more than sufficient for most uses. Note that to -# actually achieve 100FPS you have to either set sync_to_monitor to no or use a -# monitor with a high refresh rate. -repaint_delay 10 - -# Delay (in milliseconds) before input from the program running in the terminal -# is processed. Note that decreasing it will increase responsiveness, but also -# increase CPU usage and might cause flicker in full screen programs that -# redraw the entire screen on each loop, because kitty is so fast that partial -# screen updates will be drawn. -input_delay 3 - -# Sync screen updates to the refresh rate of the monitor. This prevents -# tearing (https://en.wikipedia.org/wiki/Screen_tearing) when scrolling. However, -# it limits the rendering speed to the refresh rate of your monitor. With a -# very high speed mouse/high keyboard repeat rate, you may notice some slight input latency. -# If so, set this to no. -sync_to_monitor yes -# }}} - - -# Audio/visual bell {{{ -# Visual bell duration. Flash the screen when a bell occurs for the specified number of -# seconds. Set to zero to disable. -visual_bell_duration 0.0 - -# Enable/disable the audio bell. Useful in environments that require silence. -enable_audio_bell yes - -# Request window attention on bell. -# Makes the dock icon bounce on macOS or the taskbar flash on linux. -window_alert_on_bell yes - -# Show a bell symbol on the tab if a bell occurs in one of the windows in the -# tab and the window is not the currently focused window -bell_on_tab yes -# }}} - - -# Window layout {{{ -# If enabled, the window size will be remembered so that new instances of kitty will have the same -# size as the previous instance. If disabled, the window will initially have size configured -# by initial_window_width/height, in pixels. -remember_window_size yes -initial_window_width 640 -initial_window_height 400 - -# The enabled window layouts. A comma separated list of layout names. The special value * means -# all layouts. The first listed layout will be used as the startup layout. -# For a list of available layouts, see the README. -enabled_layouts * - -# The step size (in units of cell width/cell height) to use when resizing -# windows. The cells value is used for horizontal resizing and the lines value -# for vertical resizing. -window_resize_step_cells 2 -window_resize_step_lines 2 - -# The width (in pts) of window borders. Will be rounded to the nearest number of pixels based on screen resolution. -# Note that borders are displayed only when more than one window is visible. They are meant to separate multiple windows. -window_border_width 1 - -# The window margin (in pts) (blank area outside the border) -window_margin_width 0 - -# The window padding (in pts) (blank area between the text and the window border) -window_padding_width 0 - -# The color for the border of the active window -active_border_color #00ff00 - -# The color for the border of inactive windows -inactive_border_color #cccccc - -# The color for the border of inactive windows in which a bell has occurred -bell_border_color #ff5a00 - -# Fade the text in inactive windows by the specified amount (a number between -# zero and one, with 0 being fully faded). -inactive_text_alpha 1.0 -# }}} - - -# Tab bar {{{ -# Which edge to show the tab bar on, top or bottom -tab_bar_edge bottom +scrollback_fill_enlarged_window yes -# The separator between tabs in the tab bar -tab_separator " ┇" +mouse_hide_wait -3 -# Tab bar colors and styles -active_tab_foreground #000 -active_tab_background #eee -active_tab_font_style bold-italic -inactive_tab_foreground #444 -inactive_tab_background #999 -inactive_tab_font_style normal -# }}} +enable_audio_bell no +visual_bell_duration 0.05 -# Color scheme {{{ -# The opacity of the background. A number between 0 and 1, where 1 is opaque and 0 is fully transparent. -# This will only work if supported by the OS (for instance, when using a compositor under X11). Note -# that it only sets the default background color's opacity. This is so that -# things like the status bar in vim, powerline prompts, etc. still look good. -# But it means that if you use a color theme with a background color in your -# editor, it will not be rendered as transparent. Instead you should change the -# default background color in your kitty config and not use a background color -# in the editor color scheme. Or use the escape codes to set the terminals -# default colors in a shell script to launch your editor. -# Be aware that using a value less than 1.0 is a (possibly significant) performance hit. -background_opacity 1.0 - -# The foreground for selections selection_foreground #000000 - -# The background for selections selection_background #FFFACD background #1d2021 -#background #000000 foreground #ebdbb2 + # Black + DarkGrey color0 #282828 color8 #928374 @@ -285,253 +55,14 @@ color14 #8ec07c # LightGrey + White color7 #a89984 color15 #ebdbb2 -# }}} - - -# Advanced {{{ - -# The shell program to execute. The default value of . means -# to use whatever shell is set as the default shell for the current user. -# Note that on macOS if you change this, you might need to add --login to -# ensure that the shell starts in interactive mode and reads its startup rc files. -shell . - -# Close the window when the child process (shell) exits. If no (the default), -# the terminal will remain open when the child exits as long as there are still -# processes outputting to the terminal (for example disowned or backgrounded -# processes). If yes, the window will close as soon as the child process exits. -# Note that setting it to yes means that any background processes still using -# the terminal can fail silently because their stdout/stderr/stdin no longer -# work. -close_on_child_death no - -# Allow other programs to control kitty. If you turn this on other programs can -# control all aspects of kitty, including sending text to kitty windows, -# opening new windows, closing windows, reading the content of windows, etc. -# Note that this even works over ssh connections. -allow_remote_control no - -# Allow programs running in kitty to read and write from the clipboard. You can -# control exactly which actions are allowed. The set of possible actions is: -# write-clipboard read-clipboard write-primary read-primary -# The default is to allow writing to the clipboard and primary selection. Note -# that enabling the read functionality is a security risk as it means that any -# program, even one running on a remote server via SSH can read your clipboard. -clipboard_control write-clipboard write-primary - -# The value of the TERM environment variable to set. Changing this can break -# many terminal programs, only change it if you know what you are doing, not -# because you read some advice on Stack Overflow to change it. -term xterm-kitty - - -# }}} - - -# Keyboard shortcuts {{{ -# For a list of key names, see: http://www.glfw.org/docs/latest/group__keys.html -# For a list of modifier names, see: http://www.glfw.org/docs/latest/group__mods.html - -# The value of kitty_mod is used as the modifier for all default shortcuts, you -# can change it in your kitty.conf to change the modifiers for all the default -# shortcuts. -kitty_mod ctrl+shift -# -# You can use the special action no_op to unmap a keyboard shortcut that is -# assigned in the default configuration. -# -# You can combine multiple actions to be triggered by a single shortcut, using the -# syntax below: -# map key combine <separator> action1 <separator> action2 <separator> action3 ... -# For example: -# map kitty_mod+e combine : new_window : next_layout -# this will create a new window and switch to the next available layout -# -# You can use multi-key shortcuts using the syntax shown below: -# map key1>key2>key3 action -# For example: -# map ctrl+f>2 set_font_size 20 -# this will change the font size to 20 points when you press ctrl+f and then 2 - -# Clipboard {{{ -map kitty_mod+v paste_from_clipboard -map kitty_mod+s paste_from_selection -map kitty_mod+c copy_to_clipboard -map shift+insert paste_from_selection -# You can also pass the contents of the current selection to any program using -# pass_selection_to_program. By default, the system's open program is used, but -# you can specify your own, for example: -# map kitty_mod+o pass_selection_to_program firefox -map kitty_mod+o pass_selection_to_program -# }}} - -# Scrolling {{{ -map kitty_mod+up scroll_line_up -map kitty_mod+down scroll_line_down -map kitty_mod+k scroll_line_up -map kitty_mod+j scroll_line_down -map kitty_mod+page_up scroll_page_up -map kitty_mod+page_down scroll_page_down -map kitty_mod+home scroll_home -map kitty_mod+end scroll_end -map kitty_mod+h show_scrollback -# }}} - -# Window management {{{ -map kitty_mod+enter new_window -map kitty_mod+n new_os_window -map kitty_mod+w close_window -map kitty_mod+] next_window -map kitty_mod+[ previous_window -#map kitty_mod+f move_window_forward -#map kitty_mod+b move_window_backward -map kitty_mod+` move_window_to_top -map kitty_mod+r start_resizing_window -# Switching to a particular window -map kitty_mod+1 first_window -map kitty_mod+2 second_window -map kitty_mod+3 third_window -map kitty_mod+4 fourth_window -map kitty_mod+5 fifth_window -map kitty_mod+6 sixth_window -map kitty_mod+7 seventh_window -map kitty_mod+8 eighth_window -map kitty_mod+9 ninth_window -map kitty_mod+0 tenth_window -# You can open a new window running an arbitrary program, for example: -# map kitty_mod+y new_window mutt -# -# You can pass the current selection to the new program by using the @selection placeholder -# map kitty_mod+y new_window less @selection -# -# You can even send the contents of the current screen + history buffer as stdin using -# the placeholders @text (which is the plain text) and @ansi (which includes text styling escape codes). -# For only the current screen, use @screen or @ansi_screen. -# For example, the following command opens the scrollback buffer in less in a new window. -# map kitty_mod+y new_window @ansi less +G -R -# -# You can open a new window with the current working directory set to the -# working directory of the current window using -# map ctrl+alt+enter new_window_with_cwd -# }}} - -# Tab management {{{ -map kitty_mod+right next_tab -map kitty_mod+left previous_tab -map kitty_mod+t new_tab -map kitty_mod+q close_tab -map kitty_mod+l next_layout -map kitty_mod+. move_tab_forward -map kitty_mod+, move_tab_backward -map kitty_mod+alt+t set_tab_title -# You can also create shortcuts to go to specific tabs, with 1 being the first tab -# map ctrl+alt+1 goto_tab 1 -# map ctrl+alt+2 goto_tab 2 -# Just as with new_window above, you can also pass the name of arbitrary -# commands to run when using new_tab and use new_tab_with_cwd. -# }}} +update_check_interval 0 -# Layout management {{{ -# You can create shortcuts to switch to specific layouts -# map ctrl+alt+1 goto_layout tall -# map ctrl+alt+2 goto_layout stack -# }}} -# Font sizes {{{ -map kitty_mod+equal change_font_size current +1 -map kitty_mod+minus change_font_size current -1 +map kitty_mod+plus change_font_size current +0.5 +map kitty_mod+minus change_font_size current -0.5 map kitty_mod+backspace restore_font_size -# To setup shortcuts for specific font sizes, follow the example below: -# map kitty_mod+f6 set_font_size 10.0 -# map kitty_mod+f7 set_font_size 20.5 -# }}} - -# Select and act on visible text {{{ -# Use the hints kitten to select text and either pass it to an external program or -# insert it into the terminal or copy it to the clipboard. -# -# Open a currently visible URL using the keyboard. The program used to open the -# URL is specified in open_url_with. -map kitty_mod+e run_kitten text hints -map kitty_mod+f run_kitten text hints - -# Select a path/filename and insert it into the terminal. Useful, for instance to -# run git commands on a filename output from a previous git command. -map kitty_mod+p>f run_kitten text hints --type path --program - - -# Select a path/filename and open it with the default open program. -map kitty_mod+p>shift+f run_kitten text hints --type path - -# Select a line of text and insert it into the terminal. Use for the -# output of things like: ls -1 -map kitty_mod+p>l run_kitten text hints --type line --program - - -# Select words and insert into terminal. -map kitty_mod+p>w run_kitten text hints --type word --program - - -# The hints kitten has many more modes of operation that you can map to different -# shortcuts. For a full description run: kitty +kitten hints --help -# }}} - -# Miscellaneous {{{ -map kitty_mod+f11 toggle_fullscreen -map kitty_mod+u input_unicode_character -map kitty_mod+f2 edit_config_file -# Open the kitty shell in a new window/tab/overlay/os_window to control kitty using commands. -map kitty_mod+escape kitty_shell window - -# Sending arbitrary text on shortcut key presses -# You can tell kitty to send arbitrary (UTF-8) encoded text to -# the client program when pressing specified shortcut keys. For example: -# map ctrl+alt+a send_text all Special text -# This will send "Special text" when you press the Ctrl+Alt+a key combination. -# The text to be sent is a python string literal so you can use escapes like -# \x1b to send control codes or \u21fb to send unicode characters (or you can -# just input the unicode characters directly as UTF-8 text). The first argument -# to send_text is the keyboard modes in which to activate the shortcut. The possible -# values are normal or application or kitty or a comma separated combination of them. -# The special keyword all means all modes. The modes normal and application refer to -# the DECCKM cursor key mode for terminals, and kitty refers to the special kitty -# extended keyboard protocol. Another example, that outputs a word and then moves the cursor -# to the start of the line (same as pressing the Home key): -# map ctrl+alt+a send_text normal Word\x1b[H -# map ctrl+alt+a send_text application Word\x1bOH -# }}} - -# You can have kitty remove all shortcut definition seen up to this point. Useful, for -# instance, to remove the default shortcuts. -clear_all_shortcuts no -# }}} +map kitty_mod+´ set_font_size 10 - -# OS specific tweaks {{{ - -# Change the color of the kitty window's titlebar on macOS. A value of "system" -# means to use the default system color, a value of "background" means to use -# the background color of the currently active window and finally you can use -# an arbitrary color, such as #12af59 or "red". WARNING: This option works by -# using a hack, as there is no proper Cocoa API for it. It sets the background -# color of the entire window and makes the titlebar transparent. As such it is -# incompatible with background_opacity. If you want to use both, you are -# probably better off just hiding the titlebar with macos_hide_titlebar. -macos_titlebar_color system - -# Hide the kitty window's title bar on macOS. -macos_hide_titlebar no - -# Use the option key as an alt key. With this set to no, kitty will use -# the macOS native Option+Key = unicode character behavior. This will -# break any Alt+key keyboard shortcuts in your terminal programs, but you -# can use the macOS unicode input technique. -macos_option_as_alt yes - -# Hide the kitty window from running tasks (alt-tab) on macOS. -macos_hide_from_tasks no -# }}} - - -# My config - -# Disable update check -update_check_interval 0 +map kitty_mod+f run_kitten text hints +map kitty_mod+u input_unicode_character