diff --git a/i3/.config/i3/config b/i3/.config/i3/config index 3aa6266..d1cab15 100644 --- a/i3/.config/i3/config +++ b/i3/.config/i3/config @@ -17,7 +17,7 @@ set $down j set $up k set $right l -set $term 'xfce4-terminal' +set $term 'kitty' set $editor 'emacs' set $filemanager 'thunar' set $notification 'dunst' @@ -101,7 +101,7 @@ for_window [class="Authy"] floating enable for_window [class="Termfloat"] floating enable, resize set 960 540 for_window [class="Mpv"] floating enable, resize set 960 540 for_window [class="Spotify"] floating enable, resize set 1280 1024, move scratchpad -for_window [class="xfce4-clipman-history"] floating enable, resize set 960 540 +for_window [class="xfce4-clipman-history"] floating enable # Workspaces assign [class="Emacs"] 2 diff --git a/kitty/.config/kitty/choose_layout.py b/kitty/.config/kitty/choose_layout.py new file mode 100644 index 0000000..711073f --- /dev/null +++ b/kitty/.config/kitty/choose_layout.py @@ -0,0 +1,59 @@ +import tempfile +import os + +from shutil import which +from typing import List +from kitty.boss import Boss + + +ENABLED_LAYOUTS = [ + 'fat', + 'grid', + 'horizontal', + 'splits', + 'stack', + 'tall', + 'vertical', +] + + +def fzf(choices: List[str], delimiter='\n'): + exe = which("fzf") + if not exe: + raise SystemError(f"Cannot find 'fzf' installed on $PATH.") + + shell = which("zsh") or os.environ.get("SHELL") + if not shell: + raise SystemError(f"Cannot find a $SHELL to use.") + + selection = [] + with tempfile.NamedTemporaryFile(delete=True) as input_file: + with tempfile.NamedTemporaryFile(delete=True) as output_file: + input_file.write(delimiter.join(map(str, choices)).encode('utf-8')) + input_file.flush() + os.system(f"{shell} -c '{exe} --reverse < \"{input_file.name}\" > \"{output_file.name}\"'") + for line in output_file: + selection.append(line.strip().decode("utf-8")) + + return selection + + +def main(args: List[str]) -> str: + fzf_path = os.path.join(os.environ["HOME"], ".fzf/bin") + os.environ["PATH"] += f":{fzf_path}" + + result = fzf(ENABLED_LAYOUTS) + if len(result) > 0: + return result[0] + + return "" + + +def handle_result(args: List[str], answer: str, target_window_id: int, boss: Boss) -> None: + try: + window = boss.window_id_map.get(target_window_id) + tab = boss.tab_for_window(window) + tab.goto_layout(answer) + + except Exception: + pass diff --git a/kitty/.config/kitty/kitty.conf b/kitty/.config/kitty/kitty.conf new file mode 100644 index 0000000..afd9516 --- /dev/null +++ b/kitty/.config/kitty/kitty.conf @@ -0,0 +1,89 @@ +# vim:ft=kitty foldmethod=marker + +kitty_mod ctrl+shift + +scrollback_lines 10000 + +# UI {{{1 + +# Theme +#include themes/mocha.conf + +# Window layout +remember_window_size no +initial_window_width 160c +initial_window_height 45c + +# Tab bar +tab_bar_min_tabs 1 +tab_bar_edge bottom +tab_bar_style powerline +tab_powerline_style slanted +tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''} + +# Fonts +font_size 14.0 +font_family 0xProto Nerd Font + +# Cursor +cursor_shape beam +cursor_shape_unfocused hollow +cursor_beam_thickness 3 +cursor_blink_interval 1 +shell_integration no-cursor no-title + +# Color scheme +background_opacity 0.90 +background_blur 64 +background_image none +dynamic_background_opacity yes + +# vim-kitty-navigator {{{1 +allow_remote_control yes +listen_on unix:/tmp/mykitty + +# Keyboard shortcuts + +copy_on_select yes + +macos_option_as_alt yes + +# Zoom on a window just like in tmux +map kitty_mod+a toggle_layout stack + +# Open tabs and windows in the same folder +map kitty_mod+enter new_window_with_cwd +map cmd+enter new_window_with_cwd +map kitty_mod+t new_tab_with_cwd +map cmd+t new_tab_with_cwd + +# Move a window into a new tab +map kitty_mod+x detach_window new-tab + +# tmux {{{1 + +# Jump to tabs +map ctrl+a>1 goto_tab 4 +map ctrl+a>2 goto_tab 2 +map ctrl+a>3 goto_tab 3 +map ctrl+a>4 goto_tab 4 +map ctrl+a>5 goto_tab 5 +map ctrl+a>6 goto_tab 6 +map ctrl+a>7 goto_tab 7 +map ctrl+a>8 goto_tab 8 +map ctrl+a>9 goto_tab 9 +map ctrl+a>0 goto_tab 0 +# Move a window into a new tab +map ctrl+a>! detach_window new-tab +# Open a new window +map ctrl+a>o new_window_with_cwd +# Open a new tab +map ctrl+a>c new_tab_with_cwd +# Zoom on a window +map ctrl+a>z toggle_layout stack +# Change layout +map ctrl+a>space next_layout +# Choose layout +map ctrl+a>l kitten choose_layout.py + +# }}} diff --git a/kitty/.config/kitty/themes/adwaita.conf b/kitty/.config/kitty/themes/adwaita.conf new file mode 100644 index 0000000..cb1502d --- /dev/null +++ b/kitty/.config/kitty/themes/adwaita.conf @@ -0,0 +1,51 @@ +# vim:ft=kitty + +## name: Adwaita dark +## license: MIT +## author: Emil Löfquist (https://github.com/ewal) +## upstream: https://github.com/ewal/kitty-adwaita/blob/main/adwaita_dark.conf +## blurb: Adwaita dark - based on https://github.com/Mofiqul/adwaita.nvim + +background #1d1d1d +foreground #deddda + +selection_background #303030 +selection_foreground #c0bfbc + +url_color #1a5fb4 + +wayland_titlebar_color system +macos_titlebar_color system + +cursor #deddda +cursor_text_color #1d1d1d + +active_border_color #4f4f4f +inactive_border_color #282828 +bell_border_color #ed333b +visual_bell_color none + +active_tab_background #242424 +active_tab_foreground #fcfcfc +inactive_tab_background #303030 +inactive_tab_foreground #b0afac +tab_bar_background none +tab_bar_margin_color none + +color0 #1d1d1d +color1 #ed333b +color2 #57e389 +color3 #ff7800 +color4 #62a0ea +color5 #9141ac +color6 #5bc8af +color7 #deddda + +color8 #9a9996 +color9 #f66151 +color10 #8ff0a4 +color11 #ffa348 +color12 #99c1f1 +color13 #dc8add +color14 #93ddc2 +color15 #f6f5f4 diff --git a/kitty/.config/kitty/themes/frappe.conf b/kitty/.config/kitty/themes/frappe.conf new file mode 100644 index 0000000..a785bce --- /dev/null +++ b/kitty/.config/kitty/themes/frappe.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Kitty Frappé +## author: Catppuccin Org +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/themes/frappe.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #c6d0f5 +background #303446 +selection_foreground #303446 +selection_background #f2d5cf + +# Cursor colors +cursor #f2d5cf +cursor_text_color #303446 + +# URL underline color when hovering with mouse +url_color #f2d5cf + +# Kitty window border colors +active_border_color #babbf1 +inactive_border_color #737994 +bell_border_color #e5c890 + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #232634 +active_tab_background #ca9ee6 +inactive_tab_foreground #c6d0f5 +inactive_tab_background #292c3c +tab_bar_background #232634 + +# Colors for marks (marked text in the terminal) +mark1_foreground #303446 +mark1_background #babbf1 +mark2_foreground #303446 +mark2_background #ca9ee6 +mark3_foreground #303446 +mark3_background #85c1dc + +# The 16 terminal colors + +# black +color0 #51576d +color8 #626880 + +# red +color1 #e78284 +color9 #e78284 + +# green +color2 #a6d189 +color10 #a6d189 + +# yellow +color3 #e5c890 +color11 #e5c890 + +# blue +color4 #8caaee +color12 #8caaee + +# magenta +color5 #f4b8e4 +color13 #f4b8e4 + +# cyan +color6 #81c8be +color14 #81c8be + +# white +color7 #b5bfe2 +color15 #a5adce diff --git a/kitty/.config/kitty/themes/gruvbox_dark.conf b/kitty/.config/kitty/themes/gruvbox_dark.conf new file mode 100644 index 0000000..9d938d2 --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_dark.conf @@ -0,0 +1,55 @@ +# Based on https://github.com/morhetz/gruvbox by morhetz +# Adapted to kitty by wdomitrz + +cursor #928374 +cursor_text_color background + +url_color #83a598 + +visual_bell_color #8ec07c +bell_border_color #8ec07c + +active_border_color #d3869b +inactive_border_color #665c54 + +foreground #ebdbb2 +background #282828 +selection_foreground #928374 +selection_background #ebdbb2 + +active_tab_foreground #fbf1c7 +active_tab_background #665c54 +inactive_tab_foreground #a89984 +inactive_tab_background #3c3836 + +# black (bg3/bg4) +color0 #665c54 +color8 #7c6f64 + +# red +color1 #cc241d +color9 #fb4934 + +#: green +color2 #98971a +color10 #b8bb26 + +# yellow +color3 #d79921 +color11 #fabd2f + +# blue +color4 #458588 +color12 #83a598 + +# purple +color5 #b16286 +color13 #d3869b + +# aqua +color6 #689d6a +color14 #8ec07c + +# white (fg4/fg3) +color7 #a89984 +color15 #bdae93 diff --git a/kitty/.config/kitty/themes/gruvbox_dark_hard.conf b/kitty/.config/kitty/themes/gruvbox_dark_hard.conf new file mode 100644 index 0000000..21c0ddc --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_dark_hard.conf @@ -0,0 +1,3 @@ +include gruvbox_dark.conf + +background #1d2021 diff --git a/kitty/.config/kitty/themes/gruvbox_dark_soft.conf b/kitty/.config/kitty/themes/gruvbox_dark_soft.conf new file mode 100644 index 0000000..f439cf1 --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_dark_soft.conf @@ -0,0 +1,3 @@ +include gruvbox_dark.conf + +background #32302f diff --git a/kitty/.config/kitty/themes/gruvbox_light.conf b/kitty/.config/kitty/themes/gruvbox_light.conf new file mode 100644 index 0000000..e90ca74 --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_light.conf @@ -0,0 +1,55 @@ +# Based on https://github.com/morhetz/gruvbox by morhetz +# Adapted to kitty by wdomitrz + +cursor #928374 +cursor_text_color background + +url_color #458588 + +visual_bell_color #689d6a +bell_border_color #689d6a + +active_border_color #b16286 +inactive_border_color #1d2021 + +foreground #3c3836 +background #fbf1c7 +selection_foreground #928374 +selection_background #3c3836 + +active_tab_foreground #282828 +active_tab_background #928374 +inactive_tab_foreground #7c6f64 +inactive_tab_background #ebdbb2 + +# white (bg3/bg4) +color0 #bdae93 +color8 #a89984 + +# red +color1 #cc241d +color9 #9d0006 + +# green +color2 #98971a +color10 #79740e + +# yellow +color3 #d79921 +color11 #b57614 + +# blue +color4 #458588 +color12 #076678 + +# purple +color5 #b16286 +color13 #8f3f71 + +# aqua +color6 #689d6a +color14 #427b58 + +# black (fg4/fg3) +color7 #7c6f64 +color15 #665c54 diff --git a/kitty/.config/kitty/themes/gruvbox_light_hard.conf b/kitty/.config/kitty/themes/gruvbox_light_hard.conf new file mode 100644 index 0000000..f42e0c3 --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_light_hard.conf @@ -0,0 +1,3 @@ +include gruvbox_light.conf + +background #f9f5d7 diff --git a/kitty/.config/kitty/themes/gruvbox_light_soft.conf b/kitty/.config/kitty/themes/gruvbox_light_soft.conf new file mode 100644 index 0000000..7f8f525 --- /dev/null +++ b/kitty/.config/kitty/themes/gruvbox_light_soft.conf @@ -0,0 +1,3 @@ +include gruvbox_light.conf + +background #f2e5bc diff --git a/kitty/.config/kitty/themes/latte.conf b/kitty/.config/kitty/themes/latte.conf new file mode 100644 index 0000000..31c37bc --- /dev/null +++ b/kitty/.config/kitty/themes/latte.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Kitty Latte +## author: Catppuccin Org +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/themes/latte.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #4c4f69 +background #eff1f5 +selection_foreground #eff1f5 +selection_background #dc8a78 + +# Cursor colors +cursor #dc8a78 +cursor_text_color #eff1f5 + +# URL underline color when hovering with mouse +url_color #dc8a78 + +# Kitty window border colors +active_border_color #7287fd +inactive_border_color #9ca0b0 +bell_border_color #df8e1d + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #eff1f5 +active_tab_background #8839ef +inactive_tab_foreground #4c4f69 +inactive_tab_background #9ca0b0 +tab_bar_background #bcc0cc + +# Colors for marks (marked text in the terminal) +mark1_foreground #eff1f5 +mark1_background #7287fd +mark2_foreground #eff1f5 +mark2_background #8839ef +mark3_foreground #eff1f5 +mark3_background #209fb5 + +# The 16 terminal colors + +# black +color0 #5c5f77 +color8 #6c6f85 + +# red +color1 #d20f39 +color9 #d20f39 + +# green +color2 #40a02b +color10 #40a02b + +# yellow +color3 #df8e1d +color11 #df8e1d + +# blue +color4 #1e66f5 +color12 #1e66f5 + +# magenta +color5 #ea76cb +color13 #ea76cb + +# cyan +color6 #179299 +color14 #179299 + +# white +color7 #acb0be +color15 #bcc0cc diff --git a/kitty/.config/kitty/themes/macchiato.conf b/kitty/.config/kitty/themes/macchiato.conf new file mode 100644 index 0000000..21c31bb --- /dev/null +++ b/kitty/.config/kitty/themes/macchiato.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Kitty Macchiato +## author: Catppuccin Org +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/themes/macchiato.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #cad3f5 +background #24273a +selection_foreground #24273a +selection_background #f4dbd6 + +# Cursor colors +cursor #f4dbd6 +cursor_text_color #24273a + +# URL underline color when hovering with mouse +url_color #f4dbd6 + +# Kitty window border colors +active_border_color #b7bdf8 +inactive_border_color #6e738d +bell_border_color #eed49f + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #181926 +active_tab_background #c6a0f6 +inactive_tab_foreground #cad3f5 +inactive_tab_background #1e2030 +tab_bar_background #181926 + +# Colors for marks (marked text in the terminal) +mark1_foreground #24273a +mark1_background #b7bdf8 +mark2_foreground #24273a +mark2_background #c6a0f6 +mark3_foreground #24273a +mark3_background #7dc4e4 + +# The 16 terminal colors + +# black +color0 #494d64 +color8 #5b6078 + +# red +color1 #ed8796 +color9 #ed8796 + +# green +color2 #a6da95 +color10 #a6da95 + +# yellow +color3 #eed49f +color11 #eed49f + +# blue +color4 #8aadf4 +color12 #8aadf4 + +# magenta +color5 #f5bde6 +color13 #f5bde6 + +# cyan +color6 #8bd5ca +color14 #8bd5ca + +# white +color7 #b8c0e0 +color15 #a5adcb diff --git a/kitty/.config/kitty/themes/mocha.conf b/kitty/.config/kitty/themes/mocha.conf new file mode 100644 index 0000000..f37adf9 --- /dev/null +++ b/kitty/.config/kitty/themes/mocha.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Kitty Mocha +## author: Catppuccin Org +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/themes/mocha.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #cdd6f4 +background #1e1e2e +selection_foreground #1e1e2e +selection_background #f5e0dc + +# Cursor colors +cursor #f5e0dc +cursor_text_color #1e1e2e + +# URL underline color when hovering with mouse +url_color #f5e0dc + +# Kitty window border colors +active_border_color #b4befe +inactive_border_color #6c7086 +bell_border_color #f9e2af + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #11111b +active_tab_background #cba6f7 +inactive_tab_foreground #cdd6f4 +inactive_tab_background #181825 +tab_bar_background #11111b + +# Colors for marks (marked text in the terminal) +mark1_foreground #1e1e2e +mark1_background #b4befe +mark2_foreground #1e1e2e +mark2_background #cba6f7 +mark3_foreground #1e1e2e +mark3_background #74c7ec + +# The 16 terminal colors + +# black +color0 #45475a +color8 #585b70 + +# red +color1 #f38ba8 +color9 #f38ba8 + +# green +color2 #a6e3a1 +color10 #a6e3a1 + +# yellow +color3 #f9e2af +color11 #f9e2af + +# blue +color4 #89b4fa +color12 #89b4fa + +# magenta +color5 #f5c2e7 +color13 #f5c2e7 + +# cyan +color6 #94e2d5 +color14 #94e2d5 + +# white +color7 #bac2de +color15 #a6adc8 diff --git a/rofi/.config/rofi/config.rasi b/rofi/.config/rofi/config.rasi index 04fcb7e..6fc73da 100644 --- a/rofi/.config/rofi/config.rasi +++ b/rofi/.config/rofi/config.rasi @@ -4,7 +4,7 @@ configuration { modi: "drun,window,filebrowser,ssh"; icon-theme: "Papirus"; show-icons: true; - terminal: "alacritty"; + terminal: "kitty"; drun-display-format: "{icon} {name}"; location: 0; disable-history: false;