aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIndrajith K L2024-06-27 17:51:18 +0530
committerIndrajith K L2024-06-27 17:51:18 +0530
commit57eb70137b5bbcdabdc0f02eea5477b3e5f845a1 (patch)
treee78187146c506d5a640545dee99cc3e9860e25dc
downloaddots-57eb70137b5bbcdabdc0f02eea5477b3e5f845a1.tar.gz
dots-57eb70137b5bbcdabdc0f02eea5477b3e5f845a1.tar.bz2
dots-57eb70137b5bbcdabdc0f02eea5477b3e5f845a1.zip
Adds Arch Linux dotfiles
-rw-r--r--.gitignore19
-rw-r--r--fish/completions/fisher.fish7
-rw-r--r--fish/completions/fzf_configure_bindings.fish8
-rw-r--r--fish/completions/nvm.fish21
-rw-r--r--fish/conf.d/fzf.fish28
-rw-r--r--fish/conf.d/nvm.fish28
-rw-r--r--fish/conf.d/rustup.fish1
-rw-r--r--fish/config.fish5
-rw-r--r--fish/fish_plugins3
-rw-r--r--fish/fish_variables36
-rw-r--r--fish/functions/_fzf_configure_bindings_help.fish43
-rw-r--r--fish/functions/_fzf_extract_var_info.fish15
-rw-r--r--fish/functions/_fzf_preview_changed_file.fish49
-rw-r--r--fish/functions/_fzf_preview_file.fish43
-rw-r--r--fish/functions/_fzf_report_diff_type.fish18
-rw-r--r--fish/functions/_fzf_report_file_type.fish6
-rw-r--r--fish/functions/_fzf_search_directory.fish33
-rw-r--r--fish/functions/_fzf_search_git_log.fish36
-rw-r--r--fish/functions/_fzf_search_git_status.fish41
-rw-r--r--fish/functions/_fzf_search_history.fish39
-rw-r--r--fish/functions/_fzf_search_processes.fish32
-rw-r--r--fish/functions/_fzf_search_variables.fish47
-rw-r--r--fish/functions/_fzf_wrapper.fish21
-rw-r--r--fish/functions/_nvm_index_update.fish20
-rw-r--r--fish/functions/_nvm_list.fish11
-rw-r--r--fish/functions/_nvm_version_activate.fish4
-rw-r--r--fish/functions/_nvm_version_deactivate.fish5
-rw-r--r--fish/functions/fisher.fish240
-rw-r--r--fish/functions/fzf_configure_bindings.fish46
-rw-r--r--fish/functions/nvm.fish234
-rw-r--r--foot/catppuccin-frappe.ini30
-rw-r--r--foot/catppuccin-latte.ini30
-rw-r--r--foot/catppuccin-macchiato.ini30
-rw-r--r--foot/catppuccin-mocha.ini30
-rw-r--r--foot/foot.ini14
-rw-r--r--gtk-3.0/assets/close-active.svg39
-rw-r--r--gtk-3.0/assets/close-backdrop-active.svg39
-rw-r--r--gtk-3.0/assets/close-backdrop-hover.svg39
-rw-r--r--gtk-3.0/assets/close-backdrop-normal.svg27
-rw-r--r--gtk-3.0/assets/close-hover.svg39
-rw-r--r--gtk-3.0/assets/close-normal.svg27
-rw-r--r--gtk-3.0/assets/maximize-active.svg33
-rw-r--r--gtk-3.0/assets/maximize-backdrop-active.svg33
-rw-r--r--gtk-3.0/assets/maximize-backdrop-hover.svg33
-rw-r--r--gtk-3.0/assets/maximize-backdrop-normal.svg27
-rw-r--r--gtk-3.0/assets/maximize-hover.svg33
-rw-r--r--gtk-3.0/assets/maximize-normal.svg27
-rw-r--r--gtk-3.0/assets/maximized-active.svg33
-rw-r--r--gtk-3.0/assets/maximized-backdrop-active.svg33
-rw-r--r--gtk-3.0/assets/maximized-backdrop-hover.svg33
-rw-r--r--gtk-3.0/assets/maximized-backdrop-normal.svg27
-rw-r--r--gtk-3.0/assets/maximized-hover.svg33
-rw-r--r--gtk-3.0/assets/maximized-normal.svg27
-rw-r--r--gtk-3.0/assets/minimize-active.svg33
-rw-r--r--gtk-3.0/assets/minimize-backdrop-active.svg33
-rw-r--r--gtk-3.0/assets/minimize-backdrop-hover.svg33
-rw-r--r--gtk-3.0/assets/minimize-backdrop-normal.svg27
-rw-r--r--gtk-3.0/assets/minimize-hover.svg33
-rw-r--r--gtk-3.0/assets/minimize-normal.svg27
-rw-r--r--gtk-3.0/bookmarks4
-rw-r--r--gtk-3.0/colors.css84
-rw-r--r--gtk-3.0/gtk.css37
-rw-r--r--gtk-3.0/settings.ini16
-rw-r--r--gtk-3.0/window_decorations.css71
-rw-r--r--gtk-4.0/colors.css84
-rw-r--r--gtk-4.0/gtk.css1
-rw-r--r--gtk-4.0/settings.ini12
-rw-r--r--gtk-4.0/window_decorations.css71
-rw-r--r--gtkrc6
-rw-r--r--gtkrc-2.05
-rw-r--r--hypr/hypridle.conf11
-rw-r--r--hypr/hyprland.conf265
-rw-r--r--hypr/hyprlock.conf86
-rw-r--r--hypr/hyprpaper.conf4
-rwxr-xr-xhypr/scripts/browser.sh1
-rwxr-xr-xhypr/scripts/filemanager.sh1
-rw-r--r--kitty/current-theme.conf21
-rw-r--r--kitty/kitty-themes/.all-contributorsrc111
-rw-r--r--kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md10
-rw-r--r--kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md9
-rw-r--r--kitty/kitty-themes/.github/kitty-themes.jpgbin0 -> 157126 bytes
-rw-r--r--kitty/kitty-themes/.tools/README.md9
-rwxr-xr-xkitty/kitty-themes/.tools/color_table.sh26
-rw-r--r--kitty/kitty-themes/.tools/convert.py30
-rwxr-xr-xkitty/kitty-themes/.tools/convert_conf.swift57
-rwxr-xr-xkitty/kitty-themes/.tools/extract-vscode.sh5
-rwxr-xr-xkitty/kitty-themes/.tools/generate_conf.sh10
-rwxr-xr-xkitty/kitty-themes/.tools/generate_theme_preview.sh22
-rwxr-xr-xkitty/kitty-themes/.tools/generate_themes_previews.sh32
-rwxr-xr-xkitty/kitty-themes/.tools/libcapture.sh23
-rwxr-xr-xkitty/kitty-themes/.tools/markdown.sh15
-rw-r--r--kitty/kitty-themes/.tools/palette.py91
-rw-r--r--kitty/kitty-themes/.tools/preview.py136
-rwxr-xr-xkitty/kitty-themes/.tools/previews.sh24
-rw-r--r--kitty/kitty-themes/.tools/template.conf37
-rw-r--r--kitty/kitty-themes/.tools/template.conf.j291
-rwxr-xr-xkitty/kitty-themes/.tools/windowid.swift20
-rw-r--r--kitty/kitty-themes/CONTRIBUTING.md8
-rw-r--r--kitty/kitty-themes/LICENSE.md21
-rw-r--r--kitty/kitty-themes/README.md465
-rw-r--r--kitty/kitty-themes/themes/3024_Day.conf21
-rw-r--r--kitty/kitty-themes/themes/3024_Night.conf21
-rw-r--r--kitty/kitty-themes/themes/AdventureTime.conf21
-rw-r--r--kitty/kitty-themes/themes/Afterglow.conf21
-rw-r--r--kitty/kitty-themes/themes/AlienBlood.conf21
-rw-r--r--kitty/kitty-themes/themes/Alucard.conf21
-rw-r--r--kitty/kitty-themes/themes/Apprentice.conf26
-rw-r--r--kitty/kitty-themes/themes/Argonaut.conf21
-rw-r--r--kitty/kitty-themes/themes/Arthur.conf21
-rw-r--r--kitty/kitty-themes/themes/AtelierSulphurpool.conf21
-rw-r--r--kitty/kitty-themes/themes/Atom.conf21
-rw-r--r--kitty/kitty-themes/themes/AtomOneLight.conf21
-rw-r--r--kitty/kitty-themes/themes/Batman.conf21
-rw-r--r--kitty/kitty-themes/themes/Belafonte_Day.conf21
-rw-r--r--kitty/kitty-themes/themes/Belafonte_Night.conf21
-rw-r--r--kitty/kitty-themes/themes/BirdsOfParadise.conf21
-rw-r--r--kitty/kitty-themes/themes/Blazer.conf21
-rw-r--r--kitty/kitty-themes/themes/Borland.conf21
-rw-r--r--kitty/kitty-themes/themes/Bright_Lights.conf21
-rw-r--r--kitty/kitty-themes/themes/Broadcast.conf21
-rw-r--r--kitty/kitty-themes/themes/Brogrammer.conf21
-rw-r--r--kitty/kitty-themes/themes/C64.conf21
-rw-r--r--kitty/kitty-themes/themes/CLRS.conf21
-rw-r--r--kitty/kitty-themes/themes/Chalk.conf21
-rw-r--r--kitty/kitty-themes/themes/Chalkboard.conf21
-rw-r--r--kitty/kitty-themes/themes/Ciapre.conf21
-rw-r--r--kitty/kitty-themes/themes/Cobalt2.conf21
-rw-r--r--kitty/kitty-themes/themes/Cobalt_Neon.conf21
-rw-r--r--kitty/kitty-themes/themes/CrayonPonyFish.conf21
-rw-r--r--kitty/kitty-themes/themes/Dark_Pastel.conf21
-rw-r--r--kitty/kitty-themes/themes/Darkside.conf21
-rw-r--r--kitty/kitty-themes/themes/Desert.conf21
-rw-r--r--kitty/kitty-themes/themes/DimmedMonokai.conf21
-rw-r--r--kitty/kitty-themes/themes/DotGov.conf21
-rw-r--r--kitty/kitty-themes/themes/Dracula.conf21
-rw-r--r--kitty/kitty-themes/themes/Dumbledore.conf21
-rw-r--r--kitty/kitty-themes/themes/Duotone_Dark.conf21
-rw-r--r--kitty/kitty-themes/themes/ENCOM.conf21
-rw-r--r--kitty/kitty-themes/themes/Earthsong.conf21
-rw-r--r--kitty/kitty-themes/themes/Elemental.conf21
-rw-r--r--kitty/kitty-themes/themes/Espresso.conf27
-rw-r--r--kitty/kitty-themes/themes/Espresso_Libre.conf21
-rw-r--r--kitty/kitty-themes/themes/Fideloper.conf21
-rw-r--r--kitty/kitty-themes/themes/FishTank.conf21
-rw-r--r--kitty/kitty-themes/themes/Flat.conf21
-rw-r--r--kitty/kitty-themes/themes/Flatland.conf21
-rw-r--r--kitty/kitty-themes/themes/Floraverse.conf21
-rw-r--r--kitty/kitty-themes/themes/FrontEndDelight.conf21
-rw-r--r--kitty/kitty-themes/themes/FunForrest.conf21
-rw-r--r--kitty/kitty-themes/themes/Galaxy.conf21
-rw-r--r--kitty/kitty-themes/themes/Github.conf21
-rw-r--r--kitty/kitty-themes/themes/Glacier.conf21
-rw-r--r--kitty/kitty-themes/themes/GoaBase.conf21
-rw-r--r--kitty/kitty-themes/themes/Grape.conf21
-rw-r--r--kitty/kitty-themes/themes/Grass.conf23
-rw-r--r--kitty/kitty-themes/themes/Hardcore.conf21
-rw-r--r--kitty/kitty-themes/themes/Harper.conf21
-rw-r--r--kitty/kitty-themes/themes/Highway.conf21
-rw-r--r--kitty/kitty-themes/themes/Hipster_Green.conf21
-rw-r--r--kitty/kitty-themes/themes/Homebrew.conf23
-rw-r--r--kitty/kitty-themes/themes/Hurtado.conf21
-rw-r--r--kitty/kitty-themes/themes/Hybrid.conf21
-rw-r--r--kitty/kitty-themes/themes/IC_Green_PPL.conf21
-rw-r--r--kitty/kitty-themes/themes/IC_Orange_PPL.conf21
-rw-r--r--kitty/kitty-themes/themes/IR_Black.conf21
-rw-r--r--kitty/kitty-themes/themes/Jackie_Brown.conf21
-rw-r--r--kitty/kitty-themes/themes/Japanesque.conf21
-rw-r--r--kitty/kitty-themes/themes/Jellybeans.conf21
-rw-r--r--kitty/kitty-themes/themes/JetBrains_Darcula.conf21
-rw-r--r--kitty/kitty-themes/themes/Kibble.conf21
-rw-r--r--kitty/kitty-themes/themes/Later_This_Evening.conf21
-rw-r--r--kitty/kitty-themes/themes/Lavandula.conf21
-rw-r--r--kitty/kitty-themes/themes/LiquidCarbon.conf21
-rw-r--r--kitty/kitty-themes/themes/LiquidCarbonTransparent.conf21
-rw-r--r--kitty/kitty-themes/themes/LiquidCarbonTransparentInverse.conf21
-rw-r--r--kitty/kitty-themes/themes/Man_Page.conf23
-rw-r--r--kitty/kitty-themes/themes/Material.conf21
-rw-r--r--kitty/kitty-themes/themes/MaterialDark.conf21
-rw-r--r--kitty/kitty-themes/themes/Mathias.conf21
-rw-r--r--kitty/kitty-themes/themes/Medallion.conf21
-rw-r--r--kitty/kitty-themes/themes/Misterioso.conf21
-rw-r--r--kitty/kitty-themes/themes/Molokai.conf21
-rw-r--r--kitty/kitty-themes/themes/MonaLisa.conf21
-rw-r--r--kitty/kitty-themes/themes/Monokai.conf41
-rw-r--r--kitty/kitty-themes/themes/Monokai_Classic.conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Pro.conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Pro_(Filter_Machine).conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Pro_(Filter_Octagon).conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Pro_(Filter_Ristretto).conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Pro_(Filter_Spectrum).conf47
-rw-r--r--kitty/kitty-themes/themes/Monokai_Soda.conf21
-rw-r--r--kitty/kitty-themes/themes/N0tch2k.conf21
-rw-r--r--kitty/kitty-themes/themes/Neopolitan.conf21
-rw-r--r--kitty/kitty-themes/themes/Neutron.conf21
-rw-r--r--kitty/kitty-themes/themes/NightLion_v1.conf21
-rw-r--r--kitty/kitty-themes/themes/NightLion_v2.conf21
-rw-r--r--kitty/kitty-themes/themes/Nova.conf21
-rw-r--r--kitty/kitty-themes/themes/Novel.conf23
-rw-r--r--kitty/kitty-themes/themes/Obsidian.conf21
-rw-r--r--kitty/kitty-themes/themes/Ocean.conf23
-rw-r--r--kitty/kitty-themes/themes/OceanicMaterial.conf21
-rw-r--r--kitty/kitty-themes/themes/Ollie.conf21
-rw-r--r--kitty/kitty-themes/themes/OneDark.conf25
-rw-r--r--kitty/kitty-themes/themes/Parasio_Dark.conf21
-rw-r--r--kitty/kitty-themes/themes/PaulMillr.conf21
-rw-r--r--kitty/kitty-themes/themes/PencilDark.conf21
-rw-r--r--kitty/kitty-themes/themes/PencilLight.conf21
-rw-r--r--kitty/kitty-themes/themes/Piatto_Light.conf21
-rw-r--r--kitty/kitty-themes/themes/Pnevma.conf21
-rw-r--r--kitty/kitty-themes/themes/Pro.conf23
-rw-r--r--kitty/kitty-themes/themes/Red_Alert.conf21
-rw-r--r--kitty/kitty-themes/themes/Red_Sands.conf23
-rw-r--r--kitty/kitty-themes/themes/Relaxed_Afterglow.conf25
-rw-r--r--kitty/kitty-themes/themes/Renault_Style.conf22
-rw-r--r--kitty/kitty-themes/themes/Renault_Style_Light.conf21
-rw-r--r--kitty/kitty-themes/themes/Rippedcasts.conf21
-rw-r--r--kitty/kitty-themes/themes/Royal.conf21
-rw-r--r--kitty/kitty-themes/themes/SeaShells.conf21
-rw-r--r--kitty/kitty-themes/themes/Seafoam_Pastel.conf21
-rw-r--r--kitty/kitty-themes/themes/Seti.conf21
-rw-r--r--kitty/kitty-themes/themes/Shaman.conf21
-rw-r--r--kitty/kitty-themes/themes/Slate.conf21
-rw-r--r--kitty/kitty-themes/themes/Smyck.conf21
-rw-r--r--kitty/kitty-themes/themes/SoftServer.conf21
-rw-r--r--kitty/kitty-themes/themes/Solarized_Darcula.conf21
-rw-r--r--kitty/kitty-themes/themes/Solarized_Dark.conf21
-rw-r--r--kitty/kitty-themes/themes/Solarized_Dark_-_Patched.conf21
-rw-r--r--kitty/kitty-themes/themes/Solarized_Dark_Higher_Contrast.conf21
-rw-r--r--kitty/kitty-themes/themes/Solarized_Light.conf21
-rw-r--r--kitty/kitty-themes/themes/Source_Code_X.conf21
-rw-r--r--kitty/kitty-themes/themes/SpaceGray.conf21
-rw-r--r--kitty/kitty-themes/themes/SpaceGray_Eighties.conf21
-rw-r--r--kitty/kitty-themes/themes/SpaceGray_Eighties_Dull.conf21
-rw-r--r--kitty/kitty-themes/themes/Spacedust.conf21
-rw-r--r--kitty/kitty-themes/themes/Spiderman.conf21
-rw-r--r--kitty/kitty-themes/themes/Spring.conf21
-rw-r--r--kitty/kitty-themes/themes/Square.conf21
-rw-r--r--kitty/kitty-themes/themes/Sundried.conf21
-rw-r--r--kitty/kitty-themes/themes/Symfonic.conf21
-rw-r--r--kitty/kitty-themes/themes/Tango_Dark.conf21
-rw-r--r--kitty/kitty-themes/themes/Tango_Light.conf21
-rw-r--r--kitty/kitty-themes/themes/Teerb.conf21
-rw-r--r--kitty/kitty-themes/themes/Thayer_Bright.conf21
-rw-r--r--kitty/kitty-themes/themes/The_Hulk.conf21
-rw-r--r--kitty/kitty-themes/themes/Tomorrow.conf21
-rw-r--r--kitty/kitty-themes/themes/Tomorrow_Night.conf21
-rw-r--r--kitty/kitty-themes/themes/Tomorrow_Night_Blue.conf21
-rw-r--r--kitty/kitty-themes/themes/Tomorrow_Night_Bright.conf21
-rw-r--r--kitty/kitty-themes/themes/Tomorrow_Night_Eighties.conf21
-rw-r--r--kitty/kitty-themes/themes/ToyChest.conf21
-rw-r--r--kitty/kitty-themes/themes/Treehouse.conf21
-rw-r--r--kitty/kitty-themes/themes/Twilight.conf21
-rw-r--r--kitty/kitty-themes/themes/Ubuntu.conf21
-rw-r--r--kitty/kitty-themes/themes/Urple.conf21
-rw-r--r--kitty/kitty-themes/themes/Vaughn.conf21
-rw-r--r--kitty/kitty-themes/themes/VibrantInk.conf21
-rw-r--r--kitty/kitty-themes/themes/WarmNeon.conf21
-rw-r--r--kitty/kitty-themes/themes/Wez.conf21
-rw-r--r--kitty/kitty-themes/themes/WildCherry.conf21
-rw-r--r--kitty/kitty-themes/themes/Wombat.conf21
-rw-r--r--kitty/kitty-themes/themes/Wryan.conf21
-rw-r--r--kitty/kitty-themes/themes/Zenburn.conf25
-rw-r--r--kitty/kitty-themes/themes/ayu.conf21
-rw-r--r--kitty/kitty-themes/themes/ayu_light.conf21
-rw-r--r--kitty/kitty-themes/themes/ayu_mirage.conf21
-rw-r--r--kitty/kitty-themes/themes/gruvbox_dark.conf49
-rw-r--r--kitty/kitty-themes/themes/gruvbox_light.conf49
-rw-r--r--kitty/kitty-themes/themes/idleToes.conf21
-rw-r--r--kitty/kitty-themes/themes/snazzy.conf46
-rwxr-xr-xkitty/kitty.conf11
-rw-r--r--kitty/kitty.conf.bak11
l---------kitty/theme.conf1
-rw-r--r--rofi/config.rasi21
-rw-r--r--runcat/icons/cat/my-running-0-symbolic.svg26
-rw-r--r--runcat/icons/cat/my-running-1-symbolic.svg26
-rw-r--r--runcat/icons/cat/my-running-2-symbolic.svg25
-rw-r--r--runcat/icons/cat/my-running-3-symbolic.svg25
-rw-r--r--runcat/icons/cat/my-running-4-symbolic.svg25
-rw-r--r--runcat/icons/dab/dab00.pngbin0 -> 2717 bytes
-rw-r--r--runcat/icons/dab/dab01.pngbin0 -> 2798 bytes
-rw-r--r--runcat/icons/dab/dab02.pngbin0 -> 2994 bytes
-rw-r--r--runcat/icons/dab/dab03.pngbin0 -> 2927 bytes
-rw-r--r--runcat/icons/dab/dab04.pngbin0 -> 3067 bytes
-rw-r--r--runcat/icons/dab/dab05.pngbin0 -> 2916 bytes
-rw-r--r--runcat/icons/dab/dab06.pngbin0 -> 2567 bytes
-rw-r--r--runcat/icons/dab/dab07.pngbin0 -> 2567 bytes
-rw-r--r--runcat/icons/dab/dab08.pngbin0 -> 3880 bytes
-rw-r--r--runcat/icons/mona/mona0.pngbin0 -> 1587 bytes
-rw-r--r--runcat/icons/mona/mona1.pngbin0 -> 1579 bytes
-rw-r--r--runcat/icons/mona/mona2.pngbin0 -> 1558 bytes
-rw-r--r--runcat/icons/mona/mona3.pngbin0 -> 1580 bytes
-rw-r--r--runcat/icons/mona/mona4.pngbin0 -> 1583 bytes
-rw-r--r--runcat/icons/mona/mona5.pngbin0 -> 1594 bytes
-rw-r--r--runcat/icons/mona/mona6.pngbin0 -> 1594 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat00.pngbin0 -> 1867 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat01.pngbin0 -> 1886 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat02.pngbin0 -> 1905 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat03.pngbin0 -> 1971 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat04.pngbin0 -> 1907 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat05.pngbin0 -> 1998 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat06.pngbin0 -> 1610 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat07.pngbin0 -> 1974 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat08.pngbin0 -> 1854 bytes
-rw-r--r--runcat/icons/partyblobcat/partyblobcat09.pngbin0 -> 1454 bytes
-rw-r--r--runcat/icons/runcat-logo.pngbin0 -> 3753 bytes
-rw-r--r--sway/config235
-rw-r--r--waybar/config.jsonc236
-rw-r--r--waybar/style.css273
-rw-r--r--wofi/style.css19
309 files changed, 8851 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..be0b1f320
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,19 @@
+/Code
+aseprite/
+Thunar/
+KDE/
+kde.org/
+kdedefaults/
+kdeglobals
+kdfrc
+kfontviewrc
+kglobalshortcutsrc
+khotkey
+khtml/
+bruno/
+discord/
+google-chrome/
+inkscape/
+kate/
+libaccounts-glib/
+kwinrc
diff --git a/fish/completions/fisher.fish b/fish/completions/fisher.fish
new file mode 100644
index 000000000..6d23ce490
--- /dev/null
+++ b/fish/completions/fisher.fish
@@ -0,0 +1,7 @@
+complete --command fisher --exclusive --long help --description "Print help"
+complete --command fisher --exclusive --long version --description "Print version"
+complete --command fisher --exclusive --condition __fish_use_subcommand --arguments install --description "Install plugins"
+complete --command fisher --exclusive --condition __fish_use_subcommand --arguments update --description "Update installed plugins"
+complete --command fisher --exclusive --condition __fish_use_subcommand --arguments remove --description "Remove installed plugins"
+complete --command fisher --exclusive --condition __fish_use_subcommand --arguments list --description "List installed plugins matching regex"
+complete --command fisher --exclusive --condition "__fish_seen_subcommand_from update remove" --arguments "(fisher list)"
diff --git a/fish/completions/fzf_configure_bindings.fish b/fish/completions/fzf_configure_bindings.fish
new file mode 100644
index 000000000..b38ef927f
--- /dev/null
+++ b/fish/completions/fzf_configure_bindings.fish
@@ -0,0 +1,8 @@
+complete fzf_configure_bindings --no-files
+complete fzf_configure_bindings --long help --short h --description "Print help" --condition "not __fish_seen_argument --help -h"
+complete fzf_configure_bindings --long directory --description "Change the key binding for Search Directory" --condition "not __fish_seen_argument --directory"
+complete fzf_configure_bindings --long git_log --description "Change the key binding for Search Git Log" --condition "not __fish_seen_argument --git_log"
+complete fzf_configure_bindings --long git_status --description "Change the key binding for Search Git Status" --condition "not __fish_seen_argument --git_status"
+complete fzf_configure_bindings --long history --description "Change the key binding for Search History" --condition "not __fish_seen_argument --history"
+complete fzf_configure_bindings --long processes --description "Change the key binding for Search Processes" --condition "not __fish_seen_argument --processes"
+complete fzf_configure_bindings --long variables --description "Change the key binding for Search Variables" --condition "not __fish_seen_argument --variables"
diff --git a/fish/completions/nvm.fish b/fish/completions/nvm.fish
new file mode 100644
index 000000000..14be1b72c
--- /dev/null
+++ b/fish/completions/nvm.fish
@@ -0,0 +1,21 @@
+complete --command nvm --exclusive
+complete --command nvm --exclusive --long version --description "Print version"
+complete --command nvm --exclusive --long help --description "Print help"
+complete --command nvm --long silent --description "Suppress standard output"
+
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments install --description "Download and activate the specified Node version"
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments use --description "Activate the specified Node version in the current shell"
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list --description "List installed Node versions"
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list-remote --description "List available Node versions to install"
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments current --description "Print the currently-active Node version"
+complete --command nvm --exclusive --condition "__fish_seen_subcommand_from install" --arguments "(
+ test -e $nvm_data && string split ' ' <$nvm_data/.index
+)"
+complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use" --arguments "(_nvm_list | string split ' ')"
+complete --command nvm --exclusive --condition __fish_use_subcommand --arguments uninstall --description "Uninstall the specified Node version"
+complete --command nvm --exclusive --condition "__fish_seen_subcommand_from uninstall" --arguments "(
+ _nvm_list | string split ' ' | string replace system ''
+)"
+complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use uninstall" --arguments "(
+ set --query nvm_default_version && echo default
+)"
diff --git a/fish/conf.d/fzf.fish b/fish/conf.d/fzf.fish
new file mode 100644
index 000000000..8156c11b8
--- /dev/null
+++ b/fish/conf.d/fzf.fish
@@ -0,0 +1,28 @@
+# fzf.fish is only meant to be used in interactive mode. If not in interactive mode and not in CI, skip the config to speed up shell startup
+if not status is-interactive && test "$CI" != true
+ exit
+end
+
+# Because of scoping rules, to capture the shell variables exactly as they are, we must read
+# them before even executing _fzf_search_variables. We use psub to store the
+# variables' info in temporary files and pass in the filenames as arguments.
+# This variable is global so that it can be referenced by fzf_configure_bindings and in tests
+set --global _fzf_search_vars_command '_fzf_search_variables (set --show | psub) (set --names | psub)'
+
+
+# Install the default bindings, which are mnemonic and minimally conflict with fish's preset bindings
+fzf_configure_bindings
+
+# Doesn't erase autoloaded _fzf_* functions because they are not easily accessible once key bindings are erased
+function _fzf_uninstall --on-event fzf_uninstall
+ _fzf_uninstall_bindings
+
+ set --erase _fzf_search_vars_command
+ functions --erase _fzf_uninstall _fzf_migration_message _fzf_uninstall_bindings fzf_configure_bindings
+ complete --erase fzf_configure_bindings
+
+ set_color cyan
+ echo "fzf.fish uninstalled."
+ echo "You may need to manually remove fzf_configure_bindings from your config.fish if you were using custom key bindings."
+ set_color normal
+end
diff --git a/fish/conf.d/nvm.fish b/fish/conf.d/nvm.fish
new file mode 100644
index 000000000..e060f2fe1
--- /dev/null
+++ b/fish/conf.d/nvm.fish
@@ -0,0 +1,28 @@
+set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
+set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
+set --global nvm_data $XDG_DATA_HOME/nvm
+
+function _nvm_install --on-event nvm_install
+ test ! -d $nvm_data && command mkdir -p $nvm_data
+ echo "Downloading the Node distribution index..." 2>/dev/null
+ _nvm_index_update
+end
+
+function _nvm_update --on-event nvm_update
+ set --query --universal nvm_data && set --erase --universal nvm_data
+ set --query --universal nvm_mirror && set --erase --universal nvm_mirror
+ set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
+end
+
+function _nvm_uninstall --on-event nvm_uninstall
+ command rm -rf $nvm_data
+
+ set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
+
+ set --names | string replace --filter --regex -- "^nvm" "set --erase nvm" | source
+ functions --erase (functions --all | string match --entire --regex -- "^_nvm_")
+end
+
+if status is-interactive && set --query nvm_default_version && ! set --query nvm_current_version
+ nvm use --silent $nvm_default_version
+end
diff --git a/fish/conf.d/rustup.fish b/fish/conf.d/rustup.fish
new file mode 100644
index 000000000..e4cb36392
--- /dev/null
+++ b/fish/conf.d/rustup.fish
@@ -0,0 +1 @@
+source "$HOME/.cargo/env.fish"
diff --git a/fish/config.fish b/fish/config.fish
new file mode 100644
index 000000000..25169ec4e
--- /dev/null
+++ b/fish/config.fish
@@ -0,0 +1,5 @@
+if status is-interactive
+ # Commands to run in interactive sessions can go here
+end
+
+alias open_file='fzf --preview "less {}" | xargs -o vim'
diff --git a/fish/fish_plugins b/fish/fish_plugins
new file mode 100644
index 000000000..d95331e7f
--- /dev/null
+++ b/fish/fish_plugins
@@ -0,0 +1,3 @@
+jorgebucaran/fisher
+jorgebucaran/nvm.fish
+patrickf1/fzf.fish
diff --git a/fish/fish_variables b/fish/fish_variables
new file mode 100644
index 000000000..c41045d1a
--- /dev/null
+++ b/fish/fish_variables
@@ -0,0 +1,36 @@
+# This file contains fish universal variable definitions.
+# VERSION: 3.0
+SETUVAR __fish_initialized:3400
+SETUVAR _fisher_jorgebucaran_2F_fisher_files:\x7e/\x2econfig/fish/functions/fisher\x2efish\x1e\x7e/\x2econfig/fish/completions/fisher\x2efish
+SETUVAR _fisher_jorgebucaran_2F_nvm_2E_fish_files:\x7e/\x2econfig/fish/functions/_nvm_index_update\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_list\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_activate\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_deactivate\x2efish\x1e\x7e/\x2econfig/fish/functions/nvm\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/nvm\x2efish\x1e\x7e/\x2econfig/fish/completions/nvm\x2efish
+SETUVAR _fisher_patrickf1_2F_fzf_2E_fish_files:\x7e/\x2econfig/fish/functions/_fzf_configure_bindings_help\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_extract_var_info\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_preview_changed_file\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_preview_file\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_report_diff_type\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_report_file_type\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_directory\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_git_log\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_git_status\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_history\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_processes\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_variables\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_wrapper\x2efish\x1e\x7e/\x2econfig/fish/functions/fzf_configure_bindings\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/fzf\x2efish\x1e\x7e/\x2econfig/fish/completions/fzf_configure_bindings\x2efish
+SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ejorgebucaran/nvm\x2efish\x1epatrickf1/fzf\x2efish
+SETUVAR _fisher_upgraded_to_4_4:\x1d
+SETUVAR fish_color_autosuggestion:brblack
+SETUVAR fish_color_cancel:\x2dr
+SETUVAR fish_color_command:blue
+SETUVAR fish_color_comment:red
+SETUVAR fish_color_cwd:green
+SETUVAR fish_color_cwd_root:red
+SETUVAR fish_color_end:green
+SETUVAR fish_color_error:brred
+SETUVAR fish_color_escape:brcyan
+SETUVAR fish_color_history_current:\x2d\x2dbold
+SETUVAR fish_color_host:normal
+SETUVAR fish_color_host_remote:yellow
+SETUVAR fish_color_normal:normal
+SETUVAR fish_color_operator:brcyan
+SETUVAR fish_color_param:cyan
+SETUVAR fish_color_quote:yellow
+SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
+SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
+SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
+SETUVAR fish_color_status:red
+SETUVAR fish_color_user:brgreen
+SETUVAR fish_color_valid_path:\x2d\x2dunderline
+SETUVAR fish_key_bindings:fish_default_key_bindings
+SETUVAR fish_pager_color_completion:normal
+SETUVAR fish_pager_color_description:yellow\x1e\x2di
+SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
+SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
+SETUVAR fish_pager_color_selected_background:\x2dr
diff --git a/fish/functions/_fzf_configure_bindings_help.fish b/fish/functions/_fzf_configure_bindings_help.fish
new file mode 100644
index 000000000..ecfe68ec8
--- /dev/null
+++ b/fish/functions/_fzf_configure_bindings_help.fish
@@ -0,0 +1,43 @@
+function _fzf_configure_bindings_help --description "Prints the help message for fzf_configure_bindings."
+ echo "\
+USAGE:
+ fzf_configure_bindings [--COMMAND=[KEY_SEQUENCE]...]
+
+DESCRIPTION
+ fzf_configure_bindings installs key bindings for fzf.fish's commands and erases any bindings it
+ previously installed. It installs bindings for both default and insert modes. fzf.fish executes
+ it without options on fish startup to install the out-of-the-box key bindings.
+
+ By default, commands are bound to a mnemonic key sequence, shown below. Each command's binding
+ can be configured using a namesake corresponding option:
+ COMMAND | DEFAULT KEY SEQUENCE | CORRESPONDING OPTION
+ Search Directory | Ctrl+Alt+F (F for file) | --directory
+ Search Git Log | Ctrl+Alt+L (L for log) | --git_log
+ Search Git Status | Ctrl+Alt+S (S for status) | --git_status
+ Search History | Ctrl+R (R for reverse) | --history
+ Search Processes | Ctrl+Alt+P (P for process) | --processes
+ Search Variables | Ctrl+V (V for variable) | --variables
+ Override a command's binding by specifying its corresponding option with the desired key
+ sequence. Disable a command's binding by specifying its corresponding option with no value.
+
+ Because fzf_configure_bindings erases bindings it previously installed, it can be cleanly
+ executed multiple times. Once the desired fzf_configure_bindings command has been found, add it
+ to your config.fish in order to persist the customized bindings.
+
+ In terms of validation, fzf_configure_bindings fails if passed unknown options. It expects an
+ equals sign between an option's name and value. However, it does not validate key sequences.
+
+ Pass -h or --help to print this help message and exit.
+
+EXAMPLES
+ Default bindings but bind Search Directory to Ctrl+F and Search Variables to Ctrl+Alt+V
+ \$ fzf_configure_bindings --directory=\cf --variables=\e\cv
+ Default bindings but disable Search History
+ \$ fzf_configure_bindings --history=
+ An agglomeration of different options
+ \$ fzf_configure_bindings --git_status=\cg --history=\ch --variables= --processes=
+
+SEE Also
+ To learn more about fish key bindings, see bind(1) and fish_key_reader(1).
+"
+end
diff --git a/fish/functions/_fzf_extract_var_info.fish b/fish/functions/_fzf_extract_var_info.fish
new file mode 100644
index 000000000..dd4e9523a
--- /dev/null
+++ b/fish/functions/_fzf_extract_var_info.fish
@@ -0,0 +1,15 @@
+# helper function for _fzf_search_variables
+function _fzf_extract_var_info --argument-names variable_name set_show_output --description "Extract and reformat lines pertaining to \$variable_name from \$set_show_output."
+ # Extract only the lines about the variable, all of which begin with either
+ # $variable_name: ...or... $variable_name[
+ string match --regex "^\\\$$variable_name(?::|\[).*" <$set_show_output |
+
+ # Strip the variable name prefix, including ": " for scope info lines
+ string replace --regex "^\\\$$variable_name(?:: )?" '' |
+
+ # Distill the lines of values, replacing...
+ # [1]: |value|
+ # ...with...
+ # [1] value
+ string replace --regex ": \|(.*)\|" ' $1'
+end
diff --git a/fish/functions/_fzf_preview_changed_file.fish b/fish/functions/_fzf_preview_changed_file.fish
new file mode 100644
index 000000000..78dd5611f
--- /dev/null
+++ b/fish/functions/_fzf_preview_changed_file.fish
@@ -0,0 +1,49 @@
+# helper for _fzf_search_git_status
+# arg should be a line from git status --short, e.g.
+# MM functions/_fzf_preview_changed_file.fish
+# D README.md
+# R LICENSE -> "New License"
+function _fzf_preview_changed_file --argument-names path_status --description "Show the git diff of the given file."
+ # remove quotes because they'll be interpreted literally by git diff
+ # no need to requote when referencing $path because fish does not perform word splitting
+ # https://fishshell.com/docs/current/fish_for_bash_users.html
+ set -f path (string unescape (string sub --start 4 $path_status))
+ # first letter of short format shows index, second letter shows working tree
+ # https://git-scm.com/docs/git-status/2.35.0#_short_format
+ set -f index_status (string sub --length 1 $path_status)
+ set -f working_tree_status (string sub --start 2 --length 1 $path_status)
+
+ set -f diff_opts --color=always
+
+ if test $index_status = '?'
+ _fzf_report_diff_type Untracked
+ _fzf_preview_file $path
+ else if contains {$index_status}$working_tree_status DD AU UD UA DU AA UU
+ # Unmerged statuses taken directly from git status help's short format table
+ # Unmerged statuses are mutually exclusive with other statuses, so if we see
+ # these, then safe to assume the path is unmerged
+ _fzf_report_diff_type Unmerged
+ git diff $diff_opts -- $path
+ else
+ if test $index_status != ' '
+ _fzf_report_diff_type Staged
+
+ # renames are only detected in the index, never working tree, so only need to test for it here
+ # https://stackoverflow.com/questions/73954214
+ if test $index_status = R
+ # diff the post-rename path with the original path, otherwise the diff will show the entire file as being added
+ set -f orig_and_new_path (string split --max 1 -- ' -> ' $path)
+ git diff --staged $diff_opts -- $orig_and_new_path[1] $orig_and_new_path[2]
+ # path currently has the form of "original -> current", so we need to correct it before it's used below
+ set path $orig_and_new_path[2]
+ else
+ git diff --staged $diff_opts -- $path
+ end
+ end
+
+ if test $working_tree_status != ' '
+ _fzf_report_diff_type Unstaged
+ git diff $diff_opts -- $path
+ end
+ end
+end
diff --git a/fish/functions/_fzf_preview_file.fish b/fish/functions/_fzf_preview_file.fish
new file mode 100644
index 000000000..c92647560
--- /dev/null
+++ b/fish/functions/_fzf_preview_file.fish
@@ -0,0 +1,43 @@
+# helper function for _fzf_search_directory and _fzf_search_git_status
+function _fzf_preview_file --description "Print a preview for the given file based on its file type."
+ # because there's no way to guarantee that _fzf_search_directory passes the path to _fzf_preview_file
+ # as one argument, we collect all the arguments into one single variable and treat that as the path
+ set -f file_path $argv
+
+ if test -L "$file_path" # symlink
+ # notify user and recurse on the target of the symlink, which can be any of these file types
+ set -l target_path (realpath "$file_path")
+
+ set_color yellow
+ echo "'$file_path' is a symlink to '$target_path'."
+ set_color normal
+
+ _fzf_preview_file "$target_path"
+ else if test -f "$file_path" # regular file
+ if set --query fzf_preview_file_cmd
+ # need to escape quotes to make sure eval receives file_path as a single arg
+ eval "$fzf_preview_file_cmd '$file_path'"
+ else
+ bat --style=numbers --color=always "$file_path"
+ end
+ else if test -d "$file_path" # directory
+ if set --query fzf_preview_dir_cmd
+ # see above
+ eval "$fzf_preview_dir_cmd '$file_path'"
+ else
+ # -A list hidden files as well, except for . and ..
+ # -F helps classify files by appending symbols after the file name
+ command ls -A -F "$file_path"
+ end
+ else if test -c "$file_path"
+ _fzf_report_file_type "$file_path" "character device file"
+ else if test -b "$file_path"
+ _fzf_report_file_type "$file_path" "block device file"
+ else if test -S "$file_path"
+ _fzf_report_file_type "$file_path" socket
+ else if test -p "$file_path"
+ _fzf_report_file_type "$file_path" "named pipe"
+ else
+ echo "$file_path doesn't exist." >&2
+ end
+end
diff --git a/fish/functions/_fzf_report_diff_type.fish b/fish/functions/_fzf_report_diff_type.fish
new file mode 100644
index 000000000..cc26fb359
--- /dev/null
+++ b/fish/functions/_fzf_report_diff_type.fish
@@ -0,0 +1,18 @@
+# helper for _fzf_preview_changed_file
+# prints out something like
+# ╭────────╮
+# │ Staged │
+# ╰────────╯
+function _fzf_report_diff_type --argument-names diff_type --description "Print a distinct colored header meant to preface a git patch."
+ # number of "-" to draw is the length of the string to box + 2 for padding
+ set -f repeat_count (math 2 + (string length $diff_type))
+ set -f line (string repeat --count $repeat_count ─)
+ set -f top_border ╭$line╮
+ set -f btm_border ╰$line╯
+
+ set_color yellow
+ echo $top_border
+ echo "│ $diff_type │"
+ echo $btm_border
+ set_color normal
+end
diff --git a/fish/functions/_fzf_report_file_type.fish b/fish/functions/_fzf_report_file_type.fish
new file mode 100644
index 000000000..49e02e1ca
--- /dev/null
+++ b/fish/functions/_fzf_report_file_type.fish
@@ -0,0 +1,6 @@
+# helper function for _fzf_preview_file
+function _fzf_report_file_type --argument-names file_path file_type --description "Explain the file type for a file."
+ set_color red
+ echo "Cannot preview '$file_path': it is a $file_type."
+ set_color normal
+end
diff --git a/fish/functions/_fzf_search_directory.fish b/fish/functions/_fzf_search_directory.fish
new file mode 100644
index 000000000..4541eec90
--- /dev/null
+++ b/fish/functions/_fzf_search_directory.fish
@@ -0,0 +1,33 @@
+function _fzf_search_directory --description "Search the current directory. Replace the current token with the selected file paths."
+ # Directly use fd binary to avoid output buffering delay caused by a fd alias, if any.
+ # Debian-based distros install fd as fdfind and the fd package is something else, so
+ # check for fdfind first. Fall back to "fd" for a clear error message.
+ set -f fd_cmd (command -v fdfind || command -v fd || echo "fd")
+ set -f --append fd_cmd --color=always $fzf_fd_opts
+
+ set -f fzf_arguments --multi --ansi $fzf_directory_opts
+ set -f token (commandline --current-token)
+ # expand any variables or leading tilde (~) in the token
+ set -f expanded_token (eval echo -- $token)
+ # unescape token because it's already quoted so backslashes will mess up the path
+ set -f unescaped_exp_token (string unescape -- $expanded_token)
+
+ # If the current token is a directory and has a trailing slash,
+ # then use it as fd's base directory.
+ if string match --quiet -- "*/" $unescaped_exp_token && test -d "$unescaped_exp_token"
+ set --append fd_cmd --base-directory=$unescaped_exp_token
+ # use the directory name as fzf's prompt to indicate the search is limited to that directory
+ set --prepend fzf_arguments --prompt="Directory $unescaped_exp_token> " --preview="_fzf_preview_file $expanded_token{}"
+ set -f file_paths_selected $unescaped_exp_token($fd_cmd 2>/dev/null | _fzf_wrapper $fzf_arguments)
+ else
+ set --prepend fzf_arguments --prompt="Directory> " --query="$unescaped_exp_token" --preview='_fzf_preview_file {}'
+ set -f file_paths_selected ($fd_cmd 2>/dev/null | _fzf_wrapper $fzf_arguments)
+ end
+
+
+ if test $status -eq 0
+ commandline --current-token --replace -- (string escape -- $file_paths_selected | string join ' ')
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_search_git_log.fish b/fish/functions/_fzf_search_git_log.fish
new file mode 100644
index 000000000..aa54724d4
--- /dev/null
+++ b/fish/functions/_fzf_search_git_log.fish
@@ -0,0 +1,36 @@
+function _fzf_search_git_log --description "Search the output of git log and preview commits. Replace the current token with the selected commit hash."
+ if not git rev-parse --git-dir >/dev/null 2>&1
+ echo '_fzf_search_git_log: Not in a git repository.' >&2
+ else
+ if not set --query fzf_git_log_format
+ # %h gives you the abbreviated commit hash, which is useful for saving screen space, but we will have to expand it later below
+ set -f fzf_git_log_format '%C(bold blue)%h%C(reset) - %C(cyan)%ad%C(reset) %C(yellow)%d%C(reset) %C(normal)%s%C(reset) %C(dim normal)[%an]%C(reset)'
+ end
+
+ set -f preview_cmd 'git show --color=always --stat --patch {1}'
+ if set --query fzf_diff_highlighter
+ set preview_cmd "$preview_cmd | $fzf_diff_highlighter"
+ end
+
+ set -f selected_log_lines (
+ git log --no-show-signature --color=always --format=format:$fzf_git_log_format --date=short | \
+ _fzf_wrapper --ansi \
+ --multi \
+ --scheme=history \
+ --prompt="Git Log> " \
+ --preview=$preview_cmd \
+ --query=(commandline --current-token) \
+ $fzf_git_log_opts
+ )
+ if test $status -eq 0
+ for line in $selected_log_lines
+ set -f abbreviated_commit_hash (string split --field 1 " " $line)
+ set -f full_commit_hash (git rev-parse $abbreviated_commit_hash)
+ set -f --append commit_hashes $full_commit_hash
+ end
+ commandline --current-token --replace (string join ' ' $commit_hashes)
+ end
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_search_git_status.fish b/fish/functions/_fzf_search_git_status.fish
new file mode 100644
index 000000000..358f88c54
--- /dev/null
+++ b/fish/functions/_fzf_search_git_status.fish
@@ -0,0 +1,41 @@
+function _fzf_search_git_status --description "Search the output of git status. Replace the current token with the selected file paths."
+ if not git rev-parse --git-dir >/dev/null 2>&1
+ echo '_fzf_search_git_status: Not in a git repository.' >&2
+ else
+ set -f preview_cmd '_fzf_preview_changed_file {}'
+ if set --query fzf_diff_highlighter
+ set preview_cmd "$preview_cmd | $fzf_diff_highlighter"
+ end
+
+ set -f selected_paths (
+ # Pass configuration color.status=always to force status to use colors even though output is sent to a pipe
+ git -c color.status=always status --short |
+ _fzf_wrapper --ansi \
+ --multi \
+ --prompt="Git Status> " \
+ --query=(commandline --current-token) \
+ --preview=$preview_cmd \
+ --nth="2.." \
+ $fzf_git_status_opts
+ )
+ if test $status -eq 0
+ # git status --short automatically escapes the paths of most files for us so not going to bother trying to handle
+ # the few edges cases of weird file names that should be extremely rare (e.g. "this;needs;escaping")
+ set -f cleaned_paths
+
+ for path in $selected_paths
+ if test (string sub --length 1 $path) = R
+ # path has been renamed and looks like "R LICENSE -> LICENSE.md"
+ # extract the path to use from after the arrow
+ set --append cleaned_paths (string split -- "-> " $path)[-1]
+ else
+ set --append cleaned_paths (string sub --start=4 $path)
+ end
+ end
+
+ commandline --current-token --replace -- (string join ' ' $cleaned_paths)
+ end
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_search_history.fish b/fish/functions/_fzf_search_history.fish
new file mode 100644
index 000000000..cafbce989
--- /dev/null
+++ b/fish/functions/_fzf_search_history.fish
@@ -0,0 +1,39 @@
+function _fzf_search_history --description "Search command history. Replace the command line with the selected command."
+ # history merge incorporates history changes from other fish sessions
+ # it errors out if called in private mode
+ if test -z "$fish_private_mode"
+ builtin history merge
+ end
+
+ if not set --query fzf_history_time_format
+ # Reference https://devhints.io/strftime to understand strftime format symbols
+ set -f fzf_history_time_format "%m-%d %H:%M:%S"
+ end
+
+ # Delinate time from command in history entries using the vertical box drawing char (U+2502).
+ # Then, to get raw command from history entries, delete everything up to it. The ? on regex is
+ # necessary to make regex non-greedy so it won't match into commands containing the char.
+ set -f time_prefix_regex '^.*? │ '
+ # Delinate commands throughout pipeline using null rather than newlines because commands can be multi-line
+ set -f commands_selected (
+ builtin history --null --show-time="$fzf_history_time_format │ " |
+ _fzf_wrapper --read0 \
+ --print0 \
+ --multi \
+ --scheme=history \
+ --prompt="History> " \
+ --query=(commandline) \
+ --preview="string replace --regex '$time_prefix_regex' '' -- {} | fish_indent --ansi" \
+ --preview-window="bottom:3:wrap" \
+ $fzf_history_opts |
+ string split0 |
+ # remove timestamps from commands selected
+ string replace --regex $time_prefix_regex ''
+ )
+
+ if test $status -eq 0
+ commandline --replace -- $commands_selected
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_search_processes.fish b/fish/functions/_fzf_search_processes.fish
new file mode 100644
index 000000000..133a88065
--- /dev/null
+++ b/fish/functions/_fzf_search_processes.fish
@@ -0,0 +1,32 @@
+function _fzf_search_processes --description "Search all running processes. Replace the current token with the pid of the selected process."
+ # Directly use ps command because it is often aliased to a different command entirely
+ # or with options that dirty the search results and preview output
+ set -f ps_cmd (command -v ps || echo "ps")
+ # use all caps to be consistent with ps default format
+ # snake_case because ps doesn't seem to allow spaces in the field names
+ set -f ps_preview_fmt (string join ',' 'pid' 'ppid=PARENT' 'user' '%cpu' 'rss=RSS_IN_KB' 'start=START_TIME' 'command')
+ set -f processes_selected (
+ $ps_cmd -A -opid,command | \
+ _fzf_wrapper --multi \
+ --prompt="Processes> " \
+ --query (commandline --current-token) \
+ --ansi \
+ # first line outputted by ps is a header, so we need to mark it as so
+ --header-lines=1 \
+ # ps uses exit code 1 if the process was not found, in which case show an message explaining so
+ --preview="$ps_cmd -o '$ps_preview_fmt' -p {1} || echo 'Cannot preview {1} because it exited.'" \
+ --preview-window="bottom:4:wrap" \
+ $fzf_processes_opts
+ )
+
+ if test $status -eq 0
+ for process in $processes_selected
+ set -f --append pids_selected (string split --no-empty --field=1 -- " " $process)
+ end
+
+ # string join to replace the newlines outputted by string split with spaces
+ commandline --current-token --replace -- (string join ' ' $pids_selected)
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_search_variables.fish b/fish/functions/_fzf_search_variables.fish
new file mode 100644
index 000000000..52a7c701d
--- /dev/null
+++ b/fish/functions/_fzf_search_variables.fish
@@ -0,0 +1,47 @@
+# This function expects the following two arguments:
+# argument 1 = output of (set --show | psub), i.e. a file with the scope info and values of all variables
+# argument 2 = output of (set --names | psub), i.e. a file with all variable names
+function _fzf_search_variables --argument-names set_show_output set_names_output --description "Search and preview shell variables. Replace the current token with the selected variable."
+ if test -z "$set_names_output"
+ printf '%s\n' '_fzf_search_variables requires 2 arguments.' >&2
+
+ commandline --function repaint
+ return 22 # 22 means invalid argument in POSIX
+ end
+
+ # Exclude the history variable from being piped into fzf because
+ # 1. it's not included in $set_names_output
+ # 2. it tends to be a very large value => increases computation time
+ # 3._fzf_search_history is a much better way to examine history anyway
+ set -f all_variable_names (string match --invert history <$set_names_output)
+
+ set -f current_token (commandline --current-token)
+ # Use the current token to pre-populate fzf's query. If the current token begins
+ # with a $, remove it from the query so that it will better match the variable names
+ set -f cleaned_curr_token (string replace -- '$' '' $current_token)
+
+ set -f variable_names_selected (
+ printf '%s\n' $all_variable_names |
+ _fzf_wrapper --preview "_fzf_extract_var_info {} $set_show_output" \
+ --prompt="Variables> " \
+ --preview-window="wrap" \
+ --multi \
+ --query=$cleaned_curr_token \
+ $fzf_variables_opts
+ )
+
+ if test $status -eq 0
+ # If the current token begins with a $, do not overwrite the $ when
+ # replacing the current token with the selected variable.
+ # Uses brace expansion to prepend $ to each variable name.
+ commandline --current-token --replace (
+ if string match --quiet -- '$*' $current_token
+ string join " " \${$variable_names_selected}
+ else
+ string join " " $variable_names_selected
+ end
+ )
+ end
+
+ commandline --function repaint
+end
diff --git a/fish/functions/_fzf_wrapper.fish b/fish/functions/_fzf_wrapper.fish
new file mode 100644
index 000000000..486e36c32
--- /dev/null
+++ b/fish/functions/_fzf_wrapper.fish
@@ -0,0 +1,21 @@
+function _fzf_wrapper --description "Prepares some environment variables before executing fzf."
+ # Make sure fzf uses fish to execute preview commands, some of which
+ # are autoloaded fish functions so don't exist in other shells.
+ # Use --function so that it doesn't clobber SHELL outside this function.
+ set -f --export SHELL (command --search fish)
+
+ # If neither FZF_DEFAULT_OPTS nor FZF_DEFAULT_OPTS_FILE are set, then set some sane defaults.
+ # See https://github.com/junegunn/fzf#environment-variables
+ set --query FZF_DEFAULT_OPTS FZF_DEFAULT_OPTS_FILE
+ if test $status -eq 2
+ # cycle allows jumping between the first and last results, making scrolling faster
+ # layout=reverse lists results top to bottom, mimicking the familiar layouts of git log, history, and env
+ # border shows where the fzf window begins and ends
+ # height=90% leaves space to see the current command and some scrollback, maintaining context of work
+ # preview-window=wrap wraps long lines in the preview window, making reading easier
+ # marker=* makes the multi-select marker more distinguishable from the pointer (since both default to >)
+ set --export FZF_DEFAULT_OPTS '--cycle --layout=reverse --border --height=90% --preview-window=wrap --marker="*"'
+ end
+
+ fzf $argv
+end
diff --git a/fish/functions/_nvm_index_update.fish b/fish/functions/_nvm_index_update.fish
new file mode 100644
index 000000000..c66753d0e
--- /dev/null
+++ b/fish/functions/_nvm_index_update.fish
@@ -0,0 +1,20 @@
+function _nvm_index_update
+ test ! -d $nvm_data && command mkdir -p $nvm_data
+
+ set --local index $nvm_data/.index
+
+ if not command curl -q --location --silent $nvm_mirror/index.tab >$index.temp
+ command rm -f $index.temp
+ echo "nvm: Can't update index, host unavailable: \"$nvm_mirror\"" >&2
+ return 1
+ end
+
+ command awk -v OFS=\t '
+ /v0.9.12/ { exit } # Unsupported
+ NR > 1 {
+ print $1 (NR == 2 ? " latest" : $10 != "-" ? " lts/" tolower($10) : "")
+ }
+ ' $index.temp >$index
+
+ command rm -f $index.temp
+end
diff --git a/fish/functions/_nvm_list.fish b/fish/functions/_nvm_list.fish
new file mode 100644
index 000000000..fb5ab0edb
--- /dev/null
+++ b/fish/functions/_nvm_list.fish
@@ -0,0 +1,11 @@
+function _nvm_list
+ set --local versions $nvm_data/*
+ set --query versions[1] &&
+ string match --entire --regex -- (string match --regex -- "v\d.+" $versions |
+ string escape --style=regex |
+ string join "|"
+ ) <$nvm_data/.index
+
+ command --all node |
+ string match --quiet --invert --regex -- "^$nvm_data" && echo system
+end
diff --git a/fish/functions/_nvm_version_activate.fish b/fish/functions/_nvm_version_activate.fish
new file mode 100644
index 000000000..f7dfef73a
--- /dev/null
+++ b/fish/functions/_nvm_version_activate.fish
@@ -0,0 +1,4 @@
+function _nvm_version_activate --argument-names ver
+ set --global --export nvm_current_version $ver
+ set --prepend PATH $nvm_data/$ver/bin
+end
diff --git a/fish/functions/_nvm_version_deactivate.fish b/fish/functions/_nvm_version_deactivate.fish
new file mode 100644
index 000000000..24dd36e06
--- /dev/null
+++ b/fish/functions/_nvm_version_deactivate.fish
@@ -0,0 +1,5 @@
+function _nvm_version_deactivate --argument-names ver
+ test "$nvm_current_version" = "$ver" && set --erase nvm_current_version
+ set --local index (contains --index -- $nvm_data/$ver/bin $PATH) &&
+ set --erase PATH[$index]
+end
diff --git a/fish/functions/fisher.fish b/fish/functions/fisher.fish
new file mode 100644
index 000000000..b1513d3bd
--- /dev/null
+++ b/fish/functions/fisher.fish
@@ -0,0 +1,240 @@
+function fisher --argument-names cmd --description "A plugin manager for Fish"
+ set --query fisher_path || set --local fisher_path $__fish_config_dir
+ set --local fisher_version 4.4.4
+ set --local fish_plugins $__fish_config_dir/fish_plugins
+
+ switch "$cmd"
+ case -v --version
+ echo "fisher, version $fisher_version"
+ case "" -h --help
+ echo "Usage: fisher install <plugins...> Install plugins"
+ echo " fisher remove <plugins...> Remove installed plugins"
+ echo " fisher update <plugins...> Update installed plugins"
+ echo " fisher update Update all installed plugins"
+ echo " fisher list [<regex>] List installed plugins matching regex"
+ echo "Options:"
+ echo " -v, --version Print version"
+ echo " -h, --help Print this help message"
+ echo "Variables:"
+ echo " \$fisher_path Plugin installation path. Default: $__fish_config_dir" | string replace --regex -- $HOME \~
+ case ls list
+ string match --entire --regex -- "$argv[2]" $_fisher_plugins
+ case install update remove
+ isatty || read --local --null --array stdin && set --append argv $stdin
+
+ set --local install_plugins
+ set --local update_plugins
+ set --local remove_plugins
+ set --local arg_plugins $argv[2..-1]
+ set --local old_plugins $_fisher_plugins
+ set --local new_plugins
+
+ test -e $fish_plugins && set --local file_plugins (string match --regex -- '^[^\s]+$' <$fish_plugins)
+
+ if ! set --query argv[2]
+ if test "$cmd" != update
+ echo "fisher: Not enough arguments for command: \"$cmd\"" >&2 && return 1
+ else if ! set --query file_plugins
+ echo "fisher: \"$fish_plugins\" file not found: \"$cmd\"" >&2 && return 1
+ end
+ set arg_plugins $file_plugins
+ end
+
+ for plugin in $arg_plugins
+ set plugin (test -e "$plugin" && realpath $plugin || string lower -- $plugin)
+ contains -- "$plugin" $new_plugins || set --append new_plugins $plugin
+ end
+
+ if set --query argv[2]
+ for plugin in $new_plugins
+ if contains -- "$plugin" $old_plugins
+ test "$cmd" = remove &&
+ set --append remove_plugins $plugin ||
+ set --append update_plugins $plugin
+ else if test "$cmd" = install
+ set --append install_plugins $plugin
+ else
+ echo "fisher: Plugin not installed: \"$plugin\"" >&2 && return 1
+ end
+ end
+ else
+ for plugin in $new_plugins
+ contains -- "$plugin" $old_plugins &&
+ set --append update_plugins $plugin ||
+ set --append install_plugins $plugin
+ end
+
+ for plugin in $old_plugins
+ contains -- "$plugin" $new_plugins || set --append remove_plugins $plugin
+ end
+ end
+
+ set --local pid_list
+ set --local source_plugins
+ set --local fetch_plugins $update_plugins $install_plugins
+ set --local fish_path (status fish-path)
+
+ echo (set_color --bold)fisher $cmd version $fisher_version(set_color normal)
+
+ for plugin in $fetch_plugins
+ set --local source (command mktemp -d)
+ set --append source_plugins $source
+
+ command mkdir -p $source/{completions,conf.d,themes,functions}
+
+ $fish_path --command "
+ if test -e $plugin
+ command cp -Rf $plugin/* $source
+ else
+ set temp (command mktemp -d)
+ set repo (string split -- \@ $plugin) || set repo[2] HEAD
+
+ if set path (string replace --regex -- '^(https://)?gitlab.com/' '' \$repo[1])
+ set name (string split -- / \$path)[-1]
+ set url https://gitlab.com/\$path/-/archive/\$repo[2]/\$name-\$repo[2].tar.gz
+ else
+ set url https://api.github.com/repos/\$repo[1]/tarball/\$repo[2]
+ end
+
+ echo Fetching (set_color --underline)\$url(set_color normal)
+
+ if command curl -q --silent -L \$url | command tar -xzC \$temp -f - 2>/dev/null
+ command cp -Rf \$temp/*/* $source
+ else
+ echo fisher: Invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
+ command rm -rf $source
+ end
+
+ command rm -rf \$temp
+ end
+
+ set files $source/* && string match --quiet --regex -- .+\.fish\\\$ \$files
+ " &
+
+ set --append pid_list (jobs --last --pid)
+ end
+
+ wait $pid_list 2>/dev/null
+
+ for plugin in $fetch_plugins
+ if set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
+ if set --local index (contains --index -- "$plugin" $install_plugins)
+ set --erase install_plugins[$index]
+ else
+ set --erase update_plugins[(contains --index -- "$plugin" $update_plugins)]
+ end
+ end
+ end
+
+ for plugin in $update_plugins $remove_plugins
+ if set --local index (contains --index -- "$plugin" $_fisher_plugins)
+ set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
+
+ if contains -- "$plugin" $remove_plugins
+ for name in (string replace --filter --regex -- '.+/conf\.d/([^/]+)\.fish$' '$1' $$plugin_files_var)
+ emit {$name}_uninstall
+ end
+ printf "%s\n" Removing\ (set_color red --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
+ set --erase _fisher_plugins[$index]
+ end
+
+ command rm -rf (string replace -- \~ ~ $$plugin_files_var)
+
+ functions --erase (string replace --filter --regex -- '.+/functions/([^/]+)\.fish$' '$1' $$plugin_files_var)
+
+ for name in (string replace --filter --regex -- '.+/completions/([^/]+)\.fish$' '$1' $$plugin_files_var)
+ complete --erase --command $name
+ end
+
+ set --erase $plugin_files_var
+ end
+ end
+
+ if set --query update_plugins[1] || set --query install_plugins[1]
+ command mkdir -p $fisher_path/{functions,themes,conf.d,completions}
+ end
+
+ for plugin in $update_plugins $install_plugins
+ set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
+ set --local files $source/{functions,themes,conf.d,completions}/*
+
+ if set --local index (contains --index -- $plugin $install_plugins)
+ set --local user_files $fisher_path/{functions,themes,conf.d,completions}/*
+ set --local conflict_files
+
+ for file in (string replace -- $source/ $fisher_path/ $files)
+ contains -- $file $user_files && set --append conflict_files $file
+ end
+
+ if set --query conflict_files[1] && set --erase install_plugins[$index]
+ echo -s "fisher: Cannot install \"$plugin\": please remove or move conflicting files first:" \n" "$conflict_files >&2
+ continue
+ end
+ end
+
+ for file in (string replace -- $source/ "" $files)
+ command cp -RLf $source/$file $fisher_path/$file
+ end
+
+ set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
+
+ set --query files[1] && set --universal $plugin_files_var (string replace -- $source $fisher_path $files | string replace -- ~ \~)
+
+ contains -- $plugin $_fisher_plugins || set --universal --append _fisher_plugins $plugin
+ contains -- $plugin $install_plugins && set --local event install || set --local event update
+
+ printf "%s\n" Installing\ (set_color --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
+
+ for file in (string match --regex -- '.+/[^/]+\.fish$' $$plugin_files_var | string replace -- \~ ~)
+ source $file
+ if set --local name (string replace --regex -- '.+conf\.d/([^/]+)\.fish$' '$1' $file)
+ emit {$name}_$event
+ end
+ end
+ end
+
+ command rm -rf $source_plugins
+
+ if set --query _fisher_plugins[1]
+ set --local commit_plugins
+
+ for plugin in $file_plugins
+ contains -- (string lower -- $plugin) (string lower -- $_fisher_plugins) && set --append commit_plugins $plugin
+ end
+
+ for plugin in $_fisher_plugins
+ contains -- (string lower -- $plugin) (string lower -- $commit_plugins) || set --append commit_plugins $plugin
+ end
+
+ printf "%s\n" $commit_plugins >$fish_plugins
+ else
+ set --erase _fisher_plugins
+ command rm -f $fish_plugins
+ end
+
+ set --local total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
+
+ test "$total" != "0 0 0" && echo (string join ", " (
+ test $total[1] = 0 || echo "Installed $total[1]") (
+ test $total[2] = 0 || echo "Updated $total[2]") (
+ test $total[3] = 0 || echo "Removed $total[3]")
+ ) plugin/s
+ case \*
+ echo "fisher: Unknown command: \"$cmd\"" >&2 && return 1
+ end
+end
+
+if ! set --query _fisher_upgraded_to_4_4
+ set --universal _fisher_upgraded_to_4_4
+ if functions --query _fisher_list
+ set --query XDG_DATA_HOME[1] || set --local XDG_DATA_HOME ~/.local/share
+ command rm -rf $XDG_DATA_HOME/fisher
+ functions --erase _fisher_{list,plugin_parse}
+ fisher update >/dev/null 2>/dev/null
+ else
+ for var in (set --names | string match --entire --regex '^_fisher_.+_files$')
+ set $var (string replace -- ~ \~ $$var)
+ end
+ functions --erase _fisher_fish_postexec
+ end
+end
diff --git a/fish/functions/fzf_configure_bindings.fish b/fish/functions/fzf_configure_bindings.fish
new file mode 100644
index 000000000..4b4e7a2ba
--- /dev/null
+++ b/fish/functions/fzf_configure_bindings.fish
@@ -0,0 +1,46 @@
+# Always installs bindings for insert and default mode for simplicity and b/c it has almost no side-effect
+# https://gitter.im/fish-shell/fish-shell?at=60a55915ee77a74d685fa6b1
+function fzf_configure_bindings --description "Installs the default key bindings for fzf.fish with user overrides passed as options."
+ # no need to install bindings if not in interactive mode or running tests
+ status is-interactive || test "$CI" = true; or return
+
+ set -f options_spec h/help 'directory=?' 'git_log=?' 'git_status=?' 'history=?' 'processes=?' 'variables=?'
+ argparse --max-args=0 --ignore-unknown $options_spec -- $argv 2>/dev/null
+ if test $status -ne 0
+ echo "Invalid option or a positional argument was provided." >&2
+ _fzf_configure_bindings_help
+ return 22
+ else if set --query _flag_help
+ _fzf_configure_bindings_help
+ return
+ else
+ # Initialize with default key sequences and then override or disable them based on flags
+ # index 1 = directory, 2 = git_log, 3 = git_status, 4 = history, 5 = processes, 6 = variables
+ set -f key_sequences \e\cf \e\cl \e\cs \cr \e\cp \cv # \c = control, \e = escape
+ set --query _flag_directory && set key_sequences[1] "$_flag_directory"
+ set --query _flag_git_log && set key_sequences[2] "$_flag_git_log"
+ set --query _flag_git_status && set key_sequences[3] "$_flag_git_status"
+ set --query _flag_history && set key_sequences[4] "$_flag_history"
+ set --query _flag_processes && set key_sequences[5] "$_flag_processes"
+ set --query _flag_variables && set key_sequences[6] "$_flag_variables"
+
+ # If fzf bindings already exists, uninstall it first for a clean slate
+ if functions --query _fzf_uninstall_bindings
+ _fzf_uninstall_bindings
+ end
+
+ for mode in default insert
+ test -n $key_sequences[1] && bind --mode $mode $key_sequences[1] _fzf_search_directory
+ test -n $key_sequences[2] && bind --mode $mode $key_sequences[2] _fzf_search_git_log
+ test -n $key_sequences[3] && bind --mode $mode $key_sequences[3] _fzf_search_git_status
+ test -n $key_sequences[4] && bind --mode $mode $key_sequences[4] _fzf_search_history
+ test -n $key_sequences[5] && bind --mode $mode $key_sequences[5] _fzf_search_processes
+ test -n $key_sequences[6] && bind --mode $mode $key_sequences[6] "$_fzf_search_vars_command"
+ end
+
+ function _fzf_uninstall_bindings --inherit-variable key_sequences
+ bind --erase -- $key_sequences
+ bind --erase --mode insert -- $key_sequences
+ end
+ end
+end
diff --git a/fish/functions/nvm.fish b/fish/functions/nvm.fish
new file mode 100644
index 000000000..4728f0cfa
--- /dev/null
+++ b/fish/functions/nvm.fish
@@ -0,0 +1,234 @@
+function nvm --description "Node version manager"
+ for silent in --silent -s
+ if set --local index (contains --index -- $silent $argv)
+ set --erase argv[$index] && break
+ end
+ set --erase silent
+ end
+
+ set --local cmd $argv[1]
+ set --local ver $argv[2]
+
+ if set --query silent && ! set --query cmd[1]
+ echo "nvm: Version number not specified (see nvm -h for usage)" >&2
+ return 1
+ end
+
+ if ! set --query ver[1] && contains -- "$cmd" install use
+ for file in .nvmrc .node-version
+ set file (_nvm_find_up $PWD $file) && read ver <$file && break
+ end
+
+ if ! set --query ver[1]
+ echo "nvm: Invalid version or missing \".nvmrc\" file" >&2
+ return 1
+ end
+ end
+
+ set --local their_version $ver
+
+ switch "$cmd"
+ case -v --version
+ echo "nvm, version 2.2.14"
+ case "" -h --help
+ echo "Usage: nvm install <version> Download and activate the specified Node version"
+ echo " nvm install Install the version specified in the nearest .nvmrc file"
+ echo " nvm use <version> Activate the specified Node version in the current shell"
+ echo " nvm use Activate the version specified in the nearest .nvmrc file"
+ echo " nvm list List installed Node versions"
+ echo " nvm list-remote List available Node versions to install"
+ echo " nvm list-remote <regex> List Node versions matching a given regex pattern"
+ echo " nvm current Print the currently-active Node version"
+ echo " nvm uninstall <version> Uninstall the specified Node version"
+ echo "Options:"
+ echo " -s, --silent Suppress standard output"
+ echo " -v, --version Print the version of nvm"
+ echo " -h, --help Print this help message"
+ echo "Variables:"
+ echo " nvm_arch Override architecture, e.g. x64-musl"
+ echo " nvm_mirror Use a mirror for downloading Node binaries"
+ echo " nvm_default_version Set the default version for new shells"
+ echo " nvm_default_packages Install a list of packages every time a Node version is installed"
+ echo "Examples:"
+ echo " nvm install latest Install the latest version of Node"
+ echo " nvm use 14.15.1 Use Node version 14.15.1"
+ echo " nvm use system Activate the system's Node version"
+
+ case install
+ _nvm_index_update
+
+ string match --entire --regex -- (_nvm_version_match $ver) <$nvm_data/.index | read ver alias
+
+ if ! set --query ver[1]
+ echo "nvm: Invalid version number or alias: \"$their_version\"" >&2
+ return 1
+ end
+
+ if test ! -e $nvm_data/$ver
+ set --local os (command uname -s | string lower)
+ set --local ext tar.gz
+ set --local arch (command uname -m)
+
+ switch $os
+ case aix
+ set arch ppc64
+ case sunos
+ case linux
+ case darwin
+ case {MSYS_NT,MINGW\*_NT}\*
+ set os win
+ set ext zip
+ case \*
+ echo "nvm: Unsupported operating system: \"$os\"" >&2
+ return 1
+ end
+
+ switch $arch
+ case i\*86
+ set arch x86
+ case x86_64
+ set arch x64
+ case arm64
+ string match --regex --quiet "v(?<major>\d+)" $ver
+ if test "$os" = darwin -a $major -lt 16
+ set arch x64
+ end
+ case armv6 armv6l
+ set arch armv6l
+ case armv7 armv7l
+ set arch armv7l
+ case armv8 armv8l aarch64
+ set arch arm64
+ end
+
+ set --query nvm_arch && set arch $nvm_arch
+
+ set --local dir "node-$ver-$os-$arch"
+ set --local url $nvm_mirror/$ver/$dir.$ext
+
+ command mkdir -p $nvm_data/$ver
+
+ if ! set --query silent
+ echo -e "Installing Node \x1b[1m$ver\x1b[22m $alias"
+ echo -e "Fetching \x1b[4m$url\x1b[24m\x1b[7m"
+ end
+
+ if ! command curl -q $silent --progress-bar --location $url |
+ command tar --extract --gzip --directory $nvm_data/$ver 2>/dev/null
+ command rm -rf $nvm_data/$ver
+ echo -e "\033[F\33[2K\x1b[0mnvm: Invalid mirror or host unavailable: \"$url\"" >&2
+ return 1
+ end
+
+ set --query silent || echo -en "\033[F\33[2K\x1b[0m"
+
+ if test "$os" = win
+ command mv $nvm_data/$ver/$dir $nvm_data/$ver/bin
+ else
+ command mv $nvm_data/$ver/$dir/* $nvm_data/$ver
+ command rm -rf $nvm_data/$ver/$dir
+ end
+ end
+
+ if test $ver != "$nvm_current_version"
+ set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
+ _nvm_version_activate $ver
+
+ set --query nvm_default_packages[1] && npm install --global $silent $nvm_default_packages
+ end
+
+ set --query silent || printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
+ case use
+ test $ver = default && set ver $nvm_default_version
+ _nvm_list | string match --entire --regex -- (_nvm_version_match $ver) | read ver __
+
+ if ! set --query ver[1]
+ echo "nvm: Can't use Node \"$their_version\", version must be installed first" >&2
+ return 1
+ end
+
+ if test $ver != "$nvm_current_version"
+ set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
+ test $ver != system && _nvm_version_activate $ver
+ end
+
+ set --query silent || printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
+ case uninstall
+ if test -z "$ver"
+ echo "nvm: Not enough arguments for command: \"$cmd\"" >&2
+ return 1
+ end
+
+ test $ver = default && test ! -z "$nvm_default_version" && set ver $nvm_default_version
+
+ _nvm_list | string match --entire --regex -- (_nvm_version_match $ver) | read ver __
+
+ if ! set -q ver[1]
+ echo "nvm: Node version not installed or invalid: \"$their_version\"" >&2
+ return 1
+ end
+
+ set --query silent || printf "Uninstalling Node %s %s\n" $ver (string replace ~ \~ "$nvm_data/$ver/bin/node")
+
+ _nvm_version_deactivate $ver
+
+ command rm -rf $nvm_data/$ver
+ case current
+ _nvm_current
+ case ls list
+ _nvm_list | _nvm_list_format (_nvm_current) $argv[2]
+ case lsr {ls,list}-remote
+ _nvm_index_update || return
+ _nvm_list | command awk '
+ FILENAME == "-" && (is_local[$1] = FNR == NR) { next } {
+ print $0 (is_local[$1] ? " ✓" : "")
+ }
+ ' - $nvm_data/.index | _nvm_list_format (_nvm_current) $argv[2]
+ case \*
+ echo "nvm: Unknown command or option: \"$cmd\" (see nvm -h for usage)" >&2
+ return 1
+ end
+end
+
+function _nvm_find_up --argument-names path file
+ test -e "$path/$file" && echo $path/$file || begin
+ test ! -z "$path" || return
+ _nvm_find_up (string replace --regex -- '/[^/]*$' "" $path) $file
+ end
+end
+
+function _nvm_version_match --argument-names ver
+ string replace --regex -- '^v?(\d+|\d+\.\d+)$' 'v$1.' $ver |
+ string replace --filter --regex -- '^v?(\d+)' 'v$1' |
+ string escape --style=regex || string lower '\b'$ver'(?:/\w+)?$'
+end
+
+function _nvm_list_format --argument-names current regex
+ command awk -v current="$current" -v regex="$regex" '
+ $0 ~ regex {
+ aliases[versions[i++] = $1] = $2 " " $3
+ pad = (n = length($1)) > pad ? n : pad
+ }
+ END {
+ if (!i) exit 1
+ while (i--)
+ printf((current == versions[i] ? " ▶ " : " ") "%"pad"s %s\n",
+ versions[i], aliases[versions[i]])
+ }
+ '
+end
+
+function _nvm_current
+ command --search --quiet node || return
+ set --query nvm_current_version && echo $nvm_current_version || echo system
+end
+
+function _nvm_node_info
+ set --local npm_path (string replace bin/npm-cli.js "" (realpath (command --search npm)))
+ test -f $npm_path/package.json || set --local npm_version_default (command npm --version)
+ command node --eval "
+ console.log(process.version)
+ console.log('$npm_version_default' ? '$npm_version_default': require('$npm_path/package.json').version)
+ console.log(process.execPath)
+ " | string replace -- ~ \~
+end
diff --git a/foot/catppuccin-frappe.ini b/foot/catppuccin-frappe.ini
new file mode 100644
index 000000000..c24d9f12c
--- /dev/null
+++ b/foot/catppuccin-frappe.ini
@@ -0,0 +1,30 @@
+[colors]
+foreground=c6d0f5
+background=303446
+
+regular0=51576d
+regular1=e78284
+regular2=a6d189
+regular3=e5c890
+regular4=8caaee
+regular5=f4b8e4
+regular6=81c8be
+regular7=b5bfe2
+
+bright0=626880
+bright1=e78284
+bright2=a6d189
+bright3=e5c890
+bright4=8caaee
+bright5=f4b8e4
+bright6=81c8be
+bright7=a5adce
+
+selection-foreground=c6d0f5
+selection-background=4f5369
+
+search-box-no-match=232634 e78284
+search-box-match=c6d0f5 414559
+
+jump-labels=232634 ef9f76
+urls=8caaee
diff --git a/foot/catppuccin-latte.ini b/foot/catppuccin-latte.ini
new file mode 100644
index 000000000..68d38c34f
--- /dev/null
+++ b/foot/catppuccin-latte.ini
@@ -0,0 +1,30 @@
+[colors]
+foreground=4c4f69
+background=eff1f5
+
+regular0=5c5f77
+regular1=d20f39
+regular2=40a02b
+regular3=df8e1d
+regular4=1e66f5
+regular5=ea76cb
+regular6=179299
+regular7=acb0be
+
+bright0=6c6f85
+bright1=d20f39
+bright2=40a02b
+bright3=df8e1d
+bright4=1e66f5
+bright5=ea76cb
+bright6=179299
+bright7=bcc0cc
+
+selection-foreground=4c4f69
+selection-background=ccced7
+
+search-box-no-match=dce0e8 d20f39
+search-box-match=4c4f69 ccd0da
+
+jump-labels=dce0e8 fe640b
+urls=1e66f5
diff --git a/foot/catppuccin-macchiato.ini b/foot/catppuccin-macchiato.ini
new file mode 100644
index 000000000..3e0d8a9aa
--- /dev/null
+++ b/foot/catppuccin-macchiato.ini
@@ -0,0 +1,30 @@
+[colors]
+foreground=cad3f5
+background=24273a
+
+regular0=494d64
+regular1=ed8796
+regular2=a6da95
+regular3=eed49f
+regular4=8aadf4
+regular5=f5bde6
+regular6=8bd5ca
+regular7=b8c0e0
+
+bright0=5b6078
+bright1=ed8796
+bright2=a6da95
+bright3=eed49f
+bright4=8aadf4
+bright5=f5bde6
+bright6=8bd5ca
+bright7=a5adcb
+
+selection-foreground=cad3f5
+selection-background=454a5f
+
+search-box-no-match=181926 ed8796
+search-box-match=cad3f5 363a4f
+
+jump-labels=181926 f5a97f
+urls=8aadf4
diff --git a/foot/catppuccin-mocha.ini b/foot/catppuccin-mocha.ini
new file mode 100644
index 000000000..f9e841ab7
--- /dev/null
+++ b/foot/catppuccin-mocha.ini
@@ -0,0 +1,30 @@
+[colors]
+foreground=cdd6f4
+background=1e1e2e
+
+regular0=45475a
+regular1=f38ba8
+regular2=a6e3a1
+regular3=f9e2af
+regular4=89b4fa
+regular5=f5c2e7
+regular6=94e2d5
+regular7=bac2de
+
+bright0=585b70
+bright1=f38ba8
+bright2=a6e3a1
+bright3=f9e2af
+bright4=89b4fa
+bright5=f5c2e7
+bright6=94e2d5
+bright7=a6adc8
+
+selection-foreground=cdd6f4
+selection-background=414356
+
+search-box-no-match=11111b f38ba8
+search-box-match=cdd6f4 313244
+
+jump-labels=11111b fab387
+urls=89b4fa
diff --git a/foot/foot.ini b/foot/foot.ini
new file mode 100644
index 000000000..6e5c1ba90
--- /dev/null
+++ b/foot/foot.ini
@@ -0,0 +1,14 @@
+[main]
+
+font=EnvyCodeR Nerd Font Mono:size=10
+include=/usr/share/foot/themes/neon
+
+[url]
+osc8-underline=always
+
+[cursor]
+style=block
+blink=yes
+
+[colors]
+alpha=0.9
diff --git a/gtk-3.0/assets/close-active.svg b/gtk-3.0/assets/close-active.svg
new file mode 100644
index 000000000..a9b7e2279
--- /dev/null
+++ b/gtk-3.0/assets/close-active.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,10.2875 C713.663,10.2875 917.788,214.413 917.788,466.208 C917.788,718.009 713.663,922.133 461.867,922.133 C210.063,922.133 5.9375,718.009 5.9375,466.208 C5.9375,214.413 210.063,10.2875 461.867,10.2875 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,49.0625 C692.245,49.0625 879.008,235.829 879.008,466.208 C879.008,696.596 692.245,883.358 461.867,883.358 C231.479,883.358 44.7167,696.596 44.7167,466.208 C44.7167,235.829 231.479,49.0625 461.867,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M246.821,304.842 L623.233,681.25 C637.801,695.821 661.633,695.821 676.208,681.25 L676.905,680.55 C691.475,665.983 691.475,642.146 676.909,627.579 L300.496,251.171 C285.925,236.601 262.092,236.601 247.525,251.171 L246.821,251.867 C232.254,266.437 232.254,290.271 246.821,304.842 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M300.496,681.25 L676.905,304.842 C691.471,290.275 691.471,266.437 676.905,251.867 L676.204,251.171 C661.633,236.601 637.801,236.601 623.233,251.171 L246.821,627.579 C232.25,642.146 232.25,665.983 246.821,680.55 L247.521,681.25 C262.092,695.821 285.925,695.821 300.496,681.25 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/close-backdrop-active.svg b/gtk-3.0/assets/close-backdrop-active.svg
new file mode 100644
index 000000000..a9b7e2279
--- /dev/null
+++ b/gtk-3.0/assets/close-backdrop-active.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,10.2875 C713.663,10.2875 917.788,214.413 917.788,466.208 C917.788,718.009 713.663,922.133 461.867,922.133 C210.063,922.133 5.9375,718.009 5.9375,466.208 C5.9375,214.413 210.063,10.2875 461.867,10.2875 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,49.0625 C692.245,49.0625 879.008,235.829 879.008,466.208 C879.008,696.596 692.245,883.358 461.867,883.358 C231.479,883.358 44.7167,696.596 44.7167,466.208 C44.7167,235.829 231.479,49.0625 461.867,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M246.821,304.842 L623.233,681.25 C637.801,695.821 661.633,695.821 676.208,681.25 L676.905,680.55 C691.475,665.983 691.475,642.146 676.909,627.579 L300.496,251.171 C285.925,236.601 262.092,236.601 247.525,251.171 L246.821,251.867 C232.254,266.437 232.254,290.271 246.821,304.842 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M300.496,681.25 L676.905,304.842 C691.471,290.275 691.471,266.437 676.905,251.867 L676.204,251.171 C661.633,236.601 637.801,236.601 623.233,251.171 L246.821,627.579 C232.25,642.146 232.25,665.983 246.821,680.55 L247.521,681.25 C262.092,695.821 285.925,695.821 300.496,681.25 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/close-backdrop-hover.svg b/gtk-3.0/assets/close-backdrop-hover.svg
new file mode 100644
index 000000000..618b2a80e
--- /dev/null
+++ b/gtk-3.0/assets/close-backdrop-hover.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,4.6375 C713.663,4.6375 917.788,208.763 917.788,460.562 C917.788,712.363 713.663,916.487 461.867,916.487 C210.063,916.487 5.9375,712.363 5.9375,460.562 C5.9375,208.763 210.063,4.6375 461.867,4.6375 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,43.4125 C692.245,43.4125 879.008,230.179 879.008,460.562 C879.008,690.946 692.245,877.709 461.867,877.709 C231.479,877.709 44.7167,690.946 44.7167,460.562 C44.7167,230.179 231.479,43.4125 461.867,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M246.821,299.191 L623.233,675.604 C637.801,690.171 661.633,690.171 676.208,675.604 L676.905,674.9 C691.475,660.334 691.475,636.5 676.909,621.93 L300.496,245.521 C285.925,230.95 262.092,230.95 247.525,245.521 L246.821,246.217 C232.254,260.787 232.254,284.625 246.821,299.191 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M300.496,675.604 L676.905,299.191 C691.471,284.625 691.471,260.787 676.905,246.221 L676.204,245.521 C661.633,230.95 637.801,230.95 623.233,245.521 L246.821,621.93 C232.25,636.5 232.25,660.334 246.821,674.905 L247.521,675.604 C262.092,690.175 285.925,690.175 300.496,675.604 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/close-backdrop-normal.svg b/gtk-3.0/assets/close-backdrop-normal.svg
new file mode 100644
index 000000000..305552a83
--- /dev/null
+++ b/gtk-3.0/assets/close-backdrop-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.161987,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M458.879,4.875 C710.679,4.875 914.804,208.996 914.804,460.8 C914.804,712.596 710.679,916.721 458.879,916.721 C207.079,916.721 2.95417,712.596 2.95417,460.8 C2.95417,208.996 207.079,4.875 458.879,4.875 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.161987,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M458.879,43.65 C689.263,43.65 876.029,230.413 876.029,460.8 C876.029,691.179 689.263,877.946 458.879,877.946 C228.496,877.946 41.7292,691.179 41.7292,460.8 C41.7292,230.413 228.496,43.65 458.879,43.65 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/close-hover.svg b/gtk-3.0/assets/close-hover.svg
new file mode 100644
index 000000000..618b2a80e
--- /dev/null
+++ b/gtk-3.0/assets/close-hover.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,4.6375 C713.663,4.6375 917.788,208.763 917.788,460.562 C917.788,712.363 713.663,916.487 461.867,916.487 C210.063,916.487 5.9375,712.363 5.9375,460.562 C5.9375,208.763 210.063,4.6375 461.867,4.6375 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.867,43.4125 C692.245,43.4125 879.008,230.179 879.008,460.562 C879.008,690.946 692.245,877.709 461.867,877.709 C231.479,877.709 44.7167,690.946 44.7167,460.562 C44.7167,230.179 231.479,43.4125 461.867,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M246.821,299.191 L623.233,675.604 C637.801,690.171 661.633,690.171 676.208,675.604 L676.905,674.9 C691.475,660.334 691.475,636.5 676.909,621.93 L300.496,245.521 C285.925,230.95 262.092,230.95 247.525,245.521 L246.821,246.217 C232.254,260.787 232.254,284.625 246.821,299.191 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M300.496,675.604 L676.905,299.191 C691.471,284.625 691.471,260.787 676.905,246.221 L676.204,245.521 C661.633,230.95 637.801,230.95 623.233,245.521 L246.821,621.93 C232.25,636.5 232.25,660.334 246.821,674.905 L247.521,675.604 C262.092,690.175 285.925,690.175 300.496,675.604 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/close-normal.svg b/gtk-3.0/assets/close-normal.svg
new file mode 100644
index 000000000..0dc673d9e
--- /dev/null
+++ b/gtk-3.0/assets/close-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.161988,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M458.879,7.85834 C710.679,7.85834 914.8,211.983 914.8,463.788 C914.8,715.583 710.679,919.709 458.879,919.709 C207.079,919.709 2.95417,715.583 2.95417,463.788 C2.95417,211.983 207.079,7.85834 458.879,7.85834 "/>
+</g>
+
+<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.161988,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M458.879,46.6375 C689.263,46.6375 876.025,233.401 876.025,463.788 C876.025,694.166 689.263,880.929 458.879,880.929 C228.496,880.929 41.7292,694.166 41.7292,463.788 C41.7292,233.401 228.496,46.6375 458.879,46.6375 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-active.svg b/gtk-3.0/assets/maximize-active.svg
new file mode 100644
index 000000000..01a1007d8
--- /dev/null
+++ b/gtk-3.0/assets/maximize-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-backdrop-active.svg b/gtk-3.0/assets/maximize-backdrop-active.svg
new file mode 100644
index 000000000..01a1007d8
--- /dev/null
+++ b/gtk-3.0/assets/maximize-backdrop-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-backdrop-hover.svg b/gtk-3.0/assets/maximize-backdrop-hover.svg
new file mode 100644
index 000000000..b4a179e77
--- /dev/null
+++ b/gtk-3.0/assets/maximize-backdrop-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-backdrop-normal.svg b/gtk-3.0/assets/maximize-backdrop-normal.svg
new file mode 100644
index 000000000..07349aef9
--- /dev/null
+++ b/gtk-3.0/assets/maximize-backdrop-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,4.875 C713.705,4.875 917.829,208.996 917.829,460.8 C917.829,712.596 713.705,916.721 461.904,916.721 C210.105,916.721 5.97917,712.596 5.97917,460.8 C5.97917,208.996 210.105,4.875 461.904,4.875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,43.65 C692.288,43.65 879.05,230.413 879.05,460.8 C879.05,691.179 692.288,877.946 461.904,877.946 C231.521,877.946 44.7541,691.179 44.7541,460.8 C44.7541,230.413 231.521,43.65 461.904,43.65 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-hover.svg b/gtk-3.0/assets/maximize-hover.svg
new file mode 100644
index 000000000..b4a179e77
--- /dev/null
+++ b/gtk-3.0/assets/maximize-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximize-normal.svg b/gtk-3.0/assets/maximize-normal.svg
new file mode 100644
index 000000000..24767de25
--- /dev/null
+++ b/gtk-3.0/assets/maximize-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M463.15,7.85834 C714.95,7.85834 919.071,211.983 919.071,463.788 C919.071,715.583 714.95,919.709 463.15,919.709 C211.35,919.709 7.225,715.583 7.225,463.788 C7.225,211.983 211.35,7.85834 463.15,7.85834 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M463.15,46.6375 C693.534,46.6375 880.3,233.401 880.3,463.788 C880.3,694.166 693.534,880.929 463.15,880.929 C232.767,880.929 46,694.166 46,463.788 C46,233.401 232.767,46.6375 463.15,46.6375 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-active.svg b/gtk-3.0/assets/maximized-active.svg
new file mode 100644
index 000000000..a65ffdc2c
--- /dev/null
+++ b/gtk-3.0/assets/maximized-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-backdrop-active.svg b/gtk-3.0/assets/maximized-backdrop-active.svg
new file mode 100644
index 000000000..a65ffdc2c
--- /dev/null
+++ b/gtk-3.0/assets/maximized-backdrop-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-backdrop-hover.svg b/gtk-3.0/assets/maximized-backdrop-hover.svg
new file mode 100644
index 000000000..2468aface
--- /dev/null
+++ b/gtk-3.0/assets/maximized-backdrop-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-backdrop-normal.svg b/gtk-3.0/assets/maximized-backdrop-normal.svg
new file mode 100644
index 000000000..0c1101c0e
--- /dev/null
+++ b/gtk-3.0/assets/maximized-backdrop-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,4.875 C713.705,4.875 917.829,208.996 917.829,460.8 C917.829,712.596 713.705,916.721 461.904,916.721 C210.105,916.721 5.97917,712.596 5.97917,460.8 C5.97917,208.996 210.105,4.875 461.904,4.875 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,43.65 C692.288,43.65 879.05,230.413 879.05,460.8 C879.05,691.179 692.288,877.946 461.904,877.946 C231.521,877.946 44.7541,691.179 44.7541,460.8 C44.7541,230.413 231.521,43.65 461.904,43.65 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-hover.svg b/gtk-3.0/assets/maximized-hover.svg
new file mode 100644
index 000000000..2468aface
--- /dev/null
+++ b/gtk-3.0/assets/maximized-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/maximized-normal.svg b/gtk-3.0/assets/maximized-normal.svg
new file mode 100644
index 000000000..2cf2f5e6c
--- /dev/null
+++ b/gtk-3.0/assets/maximized-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M463.15,7.85834 C714.95,7.85834 919.071,211.983 919.071,463.788 C919.071,715.583 714.95,919.709 463.15,919.709 C211.35,919.709 7.225,715.583 7.225,463.788 C7.225,211.983 211.35,7.85834 463.15,7.85834 "/>
+</g>
+
+<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M463.15,46.6375 C693.534,46.6375 880.3,233.401 880.3,463.788 C880.3,694.166 693.534,880.929 463.15,880.929 C232.767,880.929 46,694.166 46,463.788 C46,233.401 232.767,46.6375 463.15,46.6375 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-active.svg b/gtk-3.0/assets/minimize-active.svg
new file mode 100644
index 000000000..c51e569ec
--- /dev/null
+++ b/gtk-3.0/assets/minimize-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M464.887,10.2875 C716.691,10.2875 920.817,214.413 920.817,466.208 C920.817,718.009 716.691,922.133 464.887,922.133 C213.088,922.133 8.9625,718.009 8.9625,466.208 C8.9625,214.413 213.088,10.2875 464.887,10.2875 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M464.887,49.0625 C695.275,49.0625 882.037,235.829 882.037,466.208 C882.037,696.596 695.275,883.358 464.887,883.358 C234.505,883.358 47.7417,696.596 47.7417,466.208 C47.7417,235.829 234.505,49.0625 464.887,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M160.183,-466.196 C160.183,-486.035 176.265,-502.117 196.104,-502.117 L733.672,-502.117 C753.51,-502.117 769.592,-486.035 769.592,-466.196 L769.592,-466.196 C769.592,-446.358 753.51,-430.276 733.672,-430.276 L196.104,-430.276 C176.265,-430.276 160.183,-446.358 160.183,-466.196 L160.183,-466.196"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-backdrop-active.svg b/gtk-3.0/assets/minimize-backdrop-active.svg
new file mode 100644
index 000000000..c51e569ec
--- /dev/null
+++ b/gtk-3.0/assets/minimize-backdrop-active.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M464.887,10.2875 C716.691,10.2875 920.817,214.413 920.817,466.208 C920.817,718.009 716.691,922.133 464.887,922.133 C213.088,922.133 8.9625,718.009 8.9625,466.208 C8.9625,214.413 213.088,10.2875 464.887,10.2875 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M464.887,49.0625 C695.275,49.0625 882.037,235.829 882.037,466.208 C882.037,696.596 695.275,883.358 464.887,883.358 C234.505,883.358 47.7417,696.596 47.7417,466.208 C47.7417,235.829 234.505,49.0625 464.887,49.0625 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,0.0548338,-0.491443,50.5641)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M160.183,-466.196 C160.183,-486.035 176.265,-502.117 196.104,-502.117 L733.672,-502.117 C753.51,-502.117 769.592,-486.035 769.592,-466.196 L769.592,-466.196 C769.592,-446.358 753.51,-430.276 733.672,-430.276 L196.104,-430.276 C176.265,-430.276 160.183,-446.358 160.183,-466.196 L160.183,-466.196"/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-backdrop-hover.svg b/gtk-3.0/assets/minimize-backdrop-hover.svg
new file mode 100644
index 000000000..ae9e72b23
--- /dev/null
+++ b/gtk-3.0/assets/minimize-backdrop-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,2.07917 C713.705,2.07917 917.829,206.204 917.829,458.004 C917.829,709.801 713.705,913.925 461.904,913.925 C210.105,913.925 5.97917,709.801 5.97917,458.004 C5.97917,206.204 210.105,2.07917 461.904,2.07917 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,40.8542 C692.288,40.8542 879.05,227.617 879.05,458.004 C879.05,688.387 692.288,875.15 461.904,875.15 C231.521,875.15 44.7541,688.387 44.7541,458.004 C44.7541,227.617 231.521,40.8542 461.904,40.8542 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M157.197,-458.022 C157.197,-477.861 173.279,-493.943 193.117,-493.943 L730.683,-493.943 C750.521,-493.943 766.603,-477.861 766.603,-458.022 C766.603,-438.184 750.521,-422.102 730.683,-422.102 L193.117,-422.102 C173.279,-422.102 157.197,-438.184 157.197,-458.022 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-backdrop-normal.svg b/gtk-3.0/assets/minimize-backdrop-normal.svg
new file mode 100644
index 000000000..448b59978
--- /dev/null
+++ b/gtk-3.0/assets/minimize-backdrop-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.395944,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M463.146,4.875 C714.95,4.875 919.071,208.996 919.071,460.8 C919.071,712.596 714.95,916.721 463.146,916.721 C211.346,916.721 7.22083,712.596 7.22083,460.8 C7.22083,208.996 211.346,4.875 463.146,4.875 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.395944,50.2673)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+opacity="0.5" >
+<path vector-effect="none" fill-rule="evenodd" d="M463.146,43.65 C693.534,43.65 880.295,230.413 880.295,460.8 C880.295,691.179 693.534,877.946 463.146,877.946 C232.763,877.946 46,691.179 46,460.8 C46,230.413 232.763,43.65 463.146,43.65 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-hover.svg b/gtk-3.0/assets/minimize-hover.svg
new file mode 100644
index 000000000..ae9e72b23
--- /dev/null
+++ b/gtk-3.0/assets/minimize-hover.svg
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,2.07917 C713.705,2.07917 917.829,206.204 917.829,458.004 C917.829,709.801 713.705,913.925 461.904,913.925 C210.105,913.925 5.97917,709.801 5.97917,458.004 C5.97917,206.204 210.105,2.07917 461.904,2.07917 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,40.8542 C692.288,40.8542 879.05,227.617 879.05,458.004 C879.05,688.387 692.288,875.15 461.904,875.15 C231.521,875.15 44.7541,688.387 44.7541,458.004 C44.7541,227.617 231.521,40.8542 461.904,40.8542 "/>
+</g>
+
+<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,0.0548338,-0.327859,50.114)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M157.197,-458.022 C157.197,-477.861 173.279,-493.943 193.117,-493.943 L730.683,-493.943 C750.521,-493.943 766.603,-477.861 766.603,-458.022 C766.603,-438.184 750.521,-422.102 730.683,-422.102 L193.117,-422.102 C173.279,-422.102 157.197,-438.184 157.197,-458.022 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/assets/minimize-normal.svg b/gtk-3.0/assets/minimize-normal.svg
new file mode 100644
index 000000000..37a957924
--- /dev/null
+++ b/gtk-3.0/assets/minimize-normal.svg
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg viewBox="0 0 50 50"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
+<title>Qt SVG Document</title>
+<desc>Generated with Qt</desc>
+<defs>
+</defs>
+<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
+
+<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.327859,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,7.85834 C713.705,7.85834 917.829,211.983 917.829,463.788 C917.829,715.583 713.705,919.709 461.904,919.709 C210.105,919.709 5.97917,715.583 5.97917,463.788 C5.97917,211.983 210.105,7.85834 461.904,7.85834 "/>
+</g>
+
+<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.327859,50.4309)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+<path vector-effect="none" fill-rule="evenodd" d="M461.904,46.6375 C692.288,46.6375 879.05,233.401 879.05,463.788 C879.05,694.166 692.288,880.929 461.904,880.929 C231.521,880.929 44.7541,694.166 44.7541,463.788 C44.7541,233.401 231.521,46.6375 461.904,46.6375 "/>
+</g>
+
+<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
+font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
+>
+</g>
+</g>
+</svg>
diff --git a/gtk-3.0/bookmarks b/gtk-3.0/bookmarks
new file mode 100644
index 000000000..9d14f3bed
--- /dev/null
+++ b/gtk-3.0/bookmarks
@@ -0,0 +1,4 @@
+file:///home/indrajith/Pictures
+file:///home/indrajith/Music
+file:///home/indrajith/Documents
+file:///home/indrajith/Downloads
diff --git a/gtk-3.0/colors.css b/gtk-3.0/colors.css
new file mode 100644
index 000000000..5d8777f80
--- /dev/null
+++ b/gtk-3.0/colors.css
@@ -0,0 +1,84 @@
+@define-color borders_breeze #4c4d50;
+@define-color content_view_bg_breeze #111216;
+@define-color error_color_backdrop_breeze #43cdbd;
+@define-color error_color_breeze #43cdbd;
+@define-color error_color_insensitive_backdrop_breeze #235350;
+@define-color error_color_insensitive_breeze #235350;
+@define-color insensitive_base_color_breeze #111216;
+@define-color insensitive_base_fg_color_breeze #646567;
+@define-color insensitive_bg_color_breeze #111216;
+@define-color insensitive_borders_breeze #26272a;
+@define-color insensitive_fg_color_breeze #636467;
+@define-color insensitive_selected_bg_color_breeze #111216;
+@define-color insensitive_selected_fg_color_breeze #636467;
+@define-color insensitive_unfocused_bg_color_breeze #111216;
+@define-color insensitive_unfocused_fg_color_breeze #636467;
+@define-color insensitive_unfocused_selected_bg_color_breeze #111216;
+@define-color insensitive_unfocused_selected_fg_color_breeze #636467;
+@define-color link_color_breeze #1f8cec;
+@define-color link_visited_color_breeze #7f8c8d;
+@define-color success_color_backdrop_breeze #9c53c6;
+@define-color success_color_breeze #9c53c6;
+@define-color success_color_insensitive_backdrop_breeze #422954;
+@define-color success_color_insensitive_breeze #422954;
+@define-color theme_base_color_breeze #111216;
+@define-color theme_bg_color_breeze #111216;
+@define-color theme_button_background_backdrop_breeze #16181d;
+@define-color theme_button_background_backdrop_insensitive_breeze #16181d;
+@define-color theme_button_background_insensitive_breeze #16181d;
+@define-color theme_button_background_normal_breeze #16181d;
+@define-color theme_button_decoration_focus_backdrop_breeze #3c78ff;
+@define-color theme_button_decoration_focus_backdrop_insensitive_breeze #233a6c;
+@define-color theme_button_decoration_focus_breeze #3c78ff;
+@define-color theme_button_decoration_focus_insensitive_breeze #233a6c;
+@define-color theme_button_decoration_hover_backdrop_breeze #10a6d4;
+@define-color theme_button_decoration_hover_backdrop_insensitive_breeze #144a5d;
+@define-color theme_button_decoration_hover_breeze #10a6d4;
+@define-color theme_button_decoration_hover_insensitive_breeze #144a5d;
+@define-color theme_button_foreground_active_backdrop_breeze #fefefe;
+@define-color theme_button_foreground_active_backdrop_insensitive_breeze #636467;
+@define-color theme_button_foreground_active_breeze #fefefe;
+@define-color theme_button_foreground_active_insensitive_breeze #636467;
+@define-color theme_button_foreground_backdrop_breeze #fefefe;
+@define-color theme_button_foreground_backdrop_insensitive_breeze #67696c;
+@define-color theme_button_foreground_insensitive_breeze #67696c;
+@define-color theme_button_foreground_normal_breeze #fefefe;
+@define-color theme_fg_color_breeze #fcfdfd;
+@define-color theme_header_background_backdrop_breeze #111216;
+@define-color theme_header_background_breeze #111216;
+@define-color theme_header_background_light_breeze #111216;
+@define-color theme_header_foreground_backdrop_breeze #fcfdfd;
+@define-color theme_header_foreground_breeze #fcfdfd;
+@define-color theme_header_foreground_insensitive_backdrop_breeze #fcfdfd;
+@define-color theme_header_foreground_insensitive_breeze #fcfdfd;
+@define-color theme_hovering_selected_bg_color_breeze #10a6d4;
+@define-color theme_selected_bg_color_breeze #3c78ff;
+@define-color theme_selected_fg_color_breeze #fefefe;
+@define-color theme_text_color_breeze #fefefe;
+@define-color theme_titlebar_background_backdrop_breeze #111216;
+@define-color theme_titlebar_background_breeze #111216;
+@define-color theme_titlebar_background_light_breeze #111216;
+@define-color theme_titlebar_foreground_backdrop_breeze #b5b6b6;
+@define-color theme_titlebar_foreground_breeze #edf0f2;
+@define-color theme_titlebar_foreground_insensitive_backdrop_breeze #b5b6b6;
+@define-color theme_titlebar_foreground_insensitive_breeze #b5b6b6;
+@define-color theme_unfocused_base_color_breeze #111216;
+@define-color theme_unfocused_bg_color_breeze #111216;
+@define-color theme_unfocused_fg_color_breeze #fcfdfd;
+@define-color theme_unfocused_selected_bg_color_alt_breeze #3c78ff;
+@define-color theme_unfocused_selected_bg_color_breeze #3c78ff;
+@define-color theme_unfocused_selected_fg_color_breeze #fefefe;
+@define-color theme_unfocused_text_color_breeze #fefefe;
+@define-color theme_unfocused_view_bg_color_breeze #111216;
+@define-color theme_unfocused_view_text_color_breeze #646567;
+@define-color theme_view_active_decoration_color_breeze #10a6d4;
+@define-color theme_view_hover_decoration_color_breeze #10a6d4;
+@define-color tooltip_background_breeze #111216;
+@define-color tooltip_border_breeze #4c4d50;
+@define-color tooltip_text_breeze #fcfdfd;
+@define-color unfocused_borders_breeze #4c4d50;
+@define-color unfocused_insensitive_borders_breeze #26272a;
+@define-color warning_color_backdrop_breeze #5f7dcd;
+@define-color warning_color_breeze #5f7dcd;
+@define-color warning_color_insensitive_backdrop_breeze #2c3756;
+@define-color warning_color_insensitive_breeze #2c3756;
diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css
new file mode 100644
index 000000000..e5263b3e1
--- /dev/null
+++ b/gtk-3.0/gtk.css
@@ -0,0 +1,37 @@
+/*
+.xfce4-panel {
+ border-bottom-left-radius: 13px;
+ border-bottom-right-radius: 13px;
+ border-top-left-radius: 13px;
+ border-top-right-radius: 13px;
+}
+
+.xfce4-panel .tasklist .toggle :checked {
+ border-radius: 10px;
+}
+
+.tasklist button:checked {
+ border-bottom: 3px solid white;
+}
+
+.flat,
+.toggle {
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 10px;
+ padding: 4px;
+}
+.flat:hover,
+.toggle:hover {
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 10px;
+ padding: 4px;
+}
+.flat:checked,
+.toggle:checked {
+ font-family: 'JetBrainsMono Nerd Font';
+ font-size: 10px;
+ border-bottom: 3px solid white;
+ padding: 4px;
+}
+*/
+@import 'colors.css'; \ No newline at end of file
diff --git a/gtk-3.0/settings.ini b/gtk-3.0/settings.ini
new file mode 100644
index 000000000..4e01bd31b
--- /dev/null
+++ b/gtk-3.0/settings.ini
@@ -0,0 +1,16 @@
+[Settings]
+gtk-application-prefer-dark-theme=true
+gtk-button-images=true
+gtk-cursor-theme-name=kora
+gtk-cursor-theme-size=24
+gtk-decoration-layout=icon:minimize,maximize,close
+gtk-enable-animations=true
+gtk-font-name=Noto Sans, 10
+gtk-icon-theme-name=kora-light
+gtk-menu-images=true
+gtk-modules=colorreload-gtk-module:window-decorations-gtk-module
+gtk-primary-button-warps-slider=true
+gtk-sound-theme-name=ocean
+gtk-theme-name=Breeze
+gtk-toolbar-style=3
+gtk-xft-dpi=98304
diff --git a/gtk-3.0/window_decorations.css b/gtk-3.0/window_decorations.css
new file mode 100644
index 000000000..ca70a8ad5
--- /dev/null
+++ b/gtk-3.0/window_decorations.css
@@ -0,0 +1,71 @@
+headerbar button.titlebutton.close, .titlebar button.titlebutton.close {
+ background-image: url("assets/close-normal.svg"); }
+
+headerbar button.titlebutton.close:hover, .titlebar button.titlebutton.close:hover {
+ background-image: url("assets/close-hover.svg"); }
+
+headerbar button.titlebutton.close:active, .titlebar button.titlebutton.close:active {
+ background-image: url("assets/close-active.svg"); }
+
+headerbar button.titlebutton.close:backdrop, .titlebar button.titlebutton.close:backdrop {
+ background-image: url("assets/close-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.close:backdrop:hover, .titlebar button.titlebutton.close:backdrop:hover {
+ background-image: url("assets/close-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.close:backdrop:active, .titlebar button.titlebutton.close:backdrop:active {
+ background-image: url("assets/close-backdrop-active.svg"); }
+
+headerbar button.titlebutton.maximize, .titlebar button.titlebutton.maximize {
+ background-image: url("assets/maximize-normal.svg"); }
+
+headerbar button.titlebutton.maximize:hover, .titlebar button.titlebutton.maximize:hover {
+ background-image: url("assets/maximize-hover.svg"); }
+
+headerbar button.titlebutton.maximize:active, .titlebar button.titlebutton.maximize:active {
+ background-image: url("assets/maximize-active.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop, .titlebar button.titlebutton.maximize:backdrop {
+ background-image: url("assets/maximize-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop:hover, .titlebar button.titlebutton.maximize:backdrop:hover {
+ background-image: url("assets/maximize-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop:active, .titlebar button.titlebutton.maximize:backdrop:active {
+ background-image: url("assets/maximize-backdrop-active.svg"); }
+
+headerbar button.titlebutton.minimize, .titlebar button.titlebutton.minimize {
+ background-image: url("assets/minimize-normal.svg"); }
+
+headerbar button.titlebutton.minimize:hover, .titlebar button.titlebutton.minimize:hover {
+ background-image: url("assets/minimize-hover.svg"); }
+
+headerbar button.titlebutton.minimize:active, .titlebar button.titlebutton.minimize:active {
+ background-image: url("assets/minimize-active.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop, .titlebar button.titlebutton.minimize:backdrop {
+ background-image: url("assets/minimize-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop:hover, .titlebar button.titlebutton.minimize:backdrop:hover {
+ background-image: url("assets/minimize-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop:active, .titlebar button.titlebutton.minimize:backdrop:active {
+ background-image: url("assets/minimize-backdrop-active.svg"); }
+
+.maximized headerbar button.titlebutton.maximize, .maximized .titlebar button.titlebutton.maximize {
+ background-image: url("assets/maximized-normal.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:hover, .maximized .titlebar button.titlebutton.maximize:hover {
+ background-image: url("assets/maximized-hover.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:active, .maximized .titlebar button.titlebutton.maximize:active {
+ background-image: url("assets/maximized-active.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop, .maximized .titlebar button.titlebutton.maximize:backdrop {
+ background-image: url("assets/maximized-backdrop-normal.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop:hover, .maximized .titlebar button.titlebutton.maximize:backdrop:hover {
+ background-image: url("assets/maximized-backdrop-hover.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop:active, .maximized .titlebar button.titlebutton.maximize:backdrop:active {
+ background-image: url("assets/maximized-backdrop-active.svg"); }
diff --git a/gtk-4.0/colors.css b/gtk-4.0/colors.css
new file mode 100644
index 000000000..5d8777f80
--- /dev/null
+++ b/gtk-4.0/colors.css
@@ -0,0 +1,84 @@
+@define-color borders_breeze #4c4d50;
+@define-color content_view_bg_breeze #111216;
+@define-color error_color_backdrop_breeze #43cdbd;
+@define-color error_color_breeze #43cdbd;
+@define-color error_color_insensitive_backdrop_breeze #235350;
+@define-color error_color_insensitive_breeze #235350;
+@define-color insensitive_base_color_breeze #111216;
+@define-color insensitive_base_fg_color_breeze #646567;
+@define-color insensitive_bg_color_breeze #111216;
+@define-color insensitive_borders_breeze #26272a;
+@define-color insensitive_fg_color_breeze #636467;
+@define-color insensitive_selected_bg_color_breeze #111216;
+@define-color insensitive_selected_fg_color_breeze #636467;
+@define-color insensitive_unfocused_bg_color_breeze #111216;
+@define-color insensitive_unfocused_fg_color_breeze #636467;
+@define-color insensitive_unfocused_selected_bg_color_breeze #111216;
+@define-color insensitive_unfocused_selected_fg_color_breeze #636467;
+@define-color link_color_breeze #1f8cec;
+@define-color link_visited_color_breeze #7f8c8d;
+@define-color success_color_backdrop_breeze #9c53c6;
+@define-color success_color_breeze #9c53c6;
+@define-color success_color_insensitive_backdrop_breeze #422954;
+@define-color success_color_insensitive_breeze #422954;
+@define-color theme_base_color_breeze #111216;
+@define-color theme_bg_color_breeze #111216;
+@define-color theme_button_background_backdrop_breeze #16181d;
+@define-color theme_button_background_backdrop_insensitive_breeze #16181d;
+@define-color theme_button_background_insensitive_breeze #16181d;
+@define-color theme_button_background_normal_breeze #16181d;
+@define-color theme_button_decoration_focus_backdrop_breeze #3c78ff;
+@define-color theme_button_decoration_focus_backdrop_insensitive_breeze #233a6c;
+@define-color theme_button_decoration_focus_breeze #3c78ff;
+@define-color theme_button_decoration_focus_insensitive_breeze #233a6c;
+@define-color theme_button_decoration_hover_backdrop_breeze #10a6d4;
+@define-color theme_button_decoration_hover_backdrop_insensitive_breeze #144a5d;
+@define-color theme_button_decoration_hover_breeze #10a6d4;
+@define-color theme_button_decoration_hover_insensitive_breeze #144a5d;
+@define-color theme_button_foreground_active_backdrop_breeze #fefefe;
+@define-color theme_button_foreground_active_backdrop_insensitive_breeze #636467;
+@define-color theme_button_foreground_active_breeze #fefefe;
+@define-color theme_button_foreground_active_insensitive_breeze #636467;
+@define-color theme_button_foreground_backdrop_breeze #fefefe;
+@define-color theme_button_foreground_backdrop_insensitive_breeze #67696c;
+@define-color theme_button_foreground_insensitive_breeze #67696c;
+@define-color theme_button_foreground_normal_breeze #fefefe;
+@define-color theme_fg_color_breeze #fcfdfd;
+@define-color theme_header_background_backdrop_breeze #111216;
+@define-color theme_header_background_breeze #111216;
+@define-color theme_header_background_light_breeze #111216;
+@define-color theme_header_foreground_backdrop_breeze #fcfdfd;
+@define-color theme_header_foreground_breeze #fcfdfd;
+@define-color theme_header_foreground_insensitive_backdrop_breeze #fcfdfd;
+@define-color theme_header_foreground_insensitive_breeze #fcfdfd;
+@define-color theme_hovering_selected_bg_color_breeze #10a6d4;
+@define-color theme_selected_bg_color_breeze #3c78ff;
+@define-color theme_selected_fg_color_breeze #fefefe;
+@define-color theme_text_color_breeze #fefefe;
+@define-color theme_titlebar_background_backdrop_breeze #111216;
+@define-color theme_titlebar_background_breeze #111216;
+@define-color theme_titlebar_background_light_breeze #111216;
+@define-color theme_titlebar_foreground_backdrop_breeze #b5b6b6;
+@define-color theme_titlebar_foreground_breeze #edf0f2;
+@define-color theme_titlebar_foreground_insensitive_backdrop_breeze #b5b6b6;
+@define-color theme_titlebar_foreground_insensitive_breeze #b5b6b6;
+@define-color theme_unfocused_base_color_breeze #111216;
+@define-color theme_unfocused_bg_color_breeze #111216;
+@define-color theme_unfocused_fg_color_breeze #fcfdfd;
+@define-color theme_unfocused_selected_bg_color_alt_breeze #3c78ff;
+@define-color theme_unfocused_selected_bg_color_breeze #3c78ff;
+@define-color theme_unfocused_selected_fg_color_breeze #fefefe;
+@define-color theme_unfocused_text_color_breeze #fefefe;
+@define-color theme_unfocused_view_bg_color_breeze #111216;
+@define-color theme_unfocused_view_text_color_breeze #646567;
+@define-color theme_view_active_decoration_color_breeze #10a6d4;
+@define-color theme_view_hover_decoration_color_breeze #10a6d4;
+@define-color tooltip_background_breeze #111216;
+@define-color tooltip_border_breeze #4c4d50;
+@define-color tooltip_text_breeze #fcfdfd;
+@define-color unfocused_borders_breeze #4c4d50;
+@define-color unfocused_insensitive_borders_breeze #26272a;
+@define-color warning_color_backdrop_breeze #5f7dcd;
+@define-color warning_color_breeze #5f7dcd;
+@define-color warning_color_insensitive_backdrop_breeze #2c3756;
+@define-color warning_color_insensitive_breeze #2c3756;
diff --git a/gtk-4.0/gtk.css b/gtk-4.0/gtk.css
new file mode 100644
index 000000000..c9763f7f6
--- /dev/null
+++ b/gtk-4.0/gtk.css
@@ -0,0 +1 @@
+@import 'colors.css'; \ No newline at end of file
diff --git a/gtk-4.0/settings.ini b/gtk-4.0/settings.ini
new file mode 100644
index 000000000..9d033d3b7
--- /dev/null
+++ b/gtk-4.0/settings.ini
@@ -0,0 +1,12 @@
+[Settings]
+gtk-application-prefer-dark-theme=true
+gtk-cursor-theme-name=kora
+gtk-cursor-theme-size=24
+gtk-decoration-layout=icon:minimize,maximize,close
+gtk-enable-animations=true
+gtk-font-name=Noto Sans, 10
+gtk-icon-theme-name=kora-light
+gtk-modules=colorreload-gtk-module:window-decorations-gtk-module
+gtk-primary-button-warps-slider=true
+gtk-sound-theme-name=ocean
+gtk-xft-dpi=98304
diff --git a/gtk-4.0/window_decorations.css b/gtk-4.0/window_decorations.css
new file mode 100644
index 000000000..ca70a8ad5
--- /dev/null
+++ b/gtk-4.0/window_decorations.css
@@ -0,0 +1,71 @@
+headerbar button.titlebutton.close, .titlebar button.titlebutton.close {
+ background-image: url("assets/close-normal.svg"); }
+
+headerbar button.titlebutton.close:hover, .titlebar button.titlebutton.close:hover {
+ background-image: url("assets/close-hover.svg"); }
+
+headerbar button.titlebutton.close:active, .titlebar button.titlebutton.close:active {
+ background-image: url("assets/close-active.svg"); }
+
+headerbar button.titlebutton.close:backdrop, .titlebar button.titlebutton.close:backdrop {
+ background-image: url("assets/close-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.close:backdrop:hover, .titlebar button.titlebutton.close:backdrop:hover {
+ background-image: url("assets/close-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.close:backdrop:active, .titlebar button.titlebutton.close:backdrop:active {
+ background-image: url("assets/close-backdrop-active.svg"); }
+
+headerbar button.titlebutton.maximize, .titlebar button.titlebutton.maximize {
+ background-image: url("assets/maximize-normal.svg"); }
+
+headerbar button.titlebutton.maximize:hover, .titlebar button.titlebutton.maximize:hover {
+ background-image: url("assets/maximize-hover.svg"); }
+
+headerbar button.titlebutton.maximize:active, .titlebar button.titlebutton.maximize:active {
+ background-image: url("assets/maximize-active.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop, .titlebar button.titlebutton.maximize:backdrop {
+ background-image: url("assets/maximize-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop:hover, .titlebar button.titlebutton.maximize:backdrop:hover {
+ background-image: url("assets/maximize-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.maximize:backdrop:active, .titlebar button.titlebutton.maximize:backdrop:active {
+ background-image: url("assets/maximize-backdrop-active.svg"); }
+
+headerbar button.titlebutton.minimize, .titlebar button.titlebutton.minimize {
+ background-image: url("assets/minimize-normal.svg"); }
+
+headerbar button.titlebutton.minimize:hover, .titlebar button.titlebutton.minimize:hover {
+ background-image: url("assets/minimize-hover.svg"); }
+
+headerbar button.titlebutton.minimize:active, .titlebar button.titlebutton.minimize:active {
+ background-image: url("assets/minimize-active.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop, .titlebar button.titlebutton.minimize:backdrop {
+ background-image: url("assets/minimize-backdrop-normal.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop:hover, .titlebar button.titlebutton.minimize:backdrop:hover {
+ background-image: url("assets/minimize-backdrop-hover.svg"); }
+
+headerbar button.titlebutton.minimize:backdrop:active, .titlebar button.titlebutton.minimize:backdrop:active {
+ background-image: url("assets/minimize-backdrop-active.svg"); }
+
+.maximized headerbar button.titlebutton.maximize, .maximized .titlebar button.titlebutton.maximize {
+ background-image: url("assets/maximized-normal.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:hover, .maximized .titlebar button.titlebutton.maximize:hover {
+ background-image: url("assets/maximized-hover.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:active, .maximized .titlebar button.titlebutton.maximize:active {
+ background-image: url("assets/maximized-active.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop, .maximized .titlebar button.titlebutton.maximize:backdrop {
+ background-image: url("assets/maximized-backdrop-normal.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop:hover, .maximized .titlebar button.titlebutton.maximize:backdrop:hover {
+ background-image: url("assets/maximized-backdrop-hover.svg"); }
+
+.maximized headerbar button.titlebutton.maximize:backdrop:active, .maximized .titlebar button.titlebutton.maximize:backdrop:active {
+ background-image: url("assets/maximized-backdrop-active.svg"); }
diff --git a/gtkrc b/gtkrc
new file mode 100644
index 000000000..41de290aa
--- /dev/null
+++ b/gtkrc
@@ -0,0 +1,6 @@
+# created by KDE Plasma, Sat Jun 22 16:25:32 2024
+#
+include "/usr/share/themes/Breeze/gtk-2.0/gtkrc"
+
+gtk-theme-name="Breeze"
+
diff --git a/gtkrc-2.0 b/gtkrc-2.0
new file mode 100644
index 000000000..e41d3b4ce
--- /dev/null
+++ b/gtkrc-2.0
@@ -0,0 +1,5 @@
+# created by KDE Plasma, Sat Jun 22 16:25:32 2024
+#
+
+gtk-alternative-button-order = 1
+
diff --git a/hypr/hypridle.conf b/hypr/hypridle.conf
new file mode 100644
index 000000000..66db8c34f
--- /dev/null
+++ b/hypr/hypridle.conf
@@ -0,0 +1,11 @@
+listener {
+ timeout = 300 # 5min
+ on-timeout = hyprlock # command to run when timeout has passed
+ on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
+}
+
+listener {
+ timeout = 900 # 15min
+ on-timeout = hyprctl dispatch dpms off # command to run when timeout has passed
+ on-resume = hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
+} \ No newline at end of file
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
new file mode 100644
index 000000000..d1682014b
--- /dev/null
+++ b/hypr/hyprland.conf
@@ -0,0 +1,265 @@
+
+# #######################################################################################
+# AUTOGENERATED HYPR CONFIG.
+# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
+# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
+# #######################################################################################
+
+autogenerated = 0 # remove this line to remove the warning
+
+# This is an example Hyprland config file.
+# Refer to the wiki for more information.
+# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/
+
+# Please note not all available settings / options are set here.
+# For a full list, see the wiki
+
+# You can split this configuration into multiple files
+# Create your files separately and then link them to this file like this:
+# source = ~/.config/hypr/myColors.conf
+
+
+################
+### MONITORS ###
+################
+
+# See https://wiki.hyprland.org/Configuring/Monitors/
+monitor=,preferred,auto,auto
+
+
+###################
+### MY PROGRAMS ###
+###################
+
+# See https://wiki.hyprland.org/Configuring/Keywords/
+
+# Set programs that you use
+$terminal = foot
+$fileManager = thunar
+$menu = rofi -show drun
+
+
+#################
+### AUTOSTART ###
+#################
+
+# Autostart necessary processes (like notifications daemons, status bars, etc.)
+# Or execute your favorite apps at launch like this:
+
+# exec-once = $terminal
+# exec-once = nm-applet &
+exec-once = waybar
+exec-once = hyprpaper
+exec-once = hypridle
+
+#############################
+### ENVIRONMENT VARIABLES ###
+#############################
+
+# See https://wiki.hyprland.org/Configuring/Environment-variables/
+
+env = XCURSOR_SIZE,24
+env = HYPRCURSOR_SIZE,24
+
+
+#####################
+### LOOK AND FEEL ###
+#####################
+
+# Refer to https://wiki.hyprland.org/Configuring/Variables/
+
+# https://wiki.hyprland.org/Configuring/Variables/#general
+general {
+ gaps_in = 5
+ gaps_out = 20
+
+ border_size = 2
+
+ # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
+ col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
+ col.inactive_border = rgba(595959aa)
+
+ # Set to true enable resizing windows by clicking and dragging on borders and gaps
+ resize_on_border = false
+
+ # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
+ allow_tearing = false
+
+ layout = dwindle
+}
+
+# https://wiki.hyprland.org/Configuring/Variables/#decoration
+decoration {
+ rounding = 10
+
+ # Change transparency of focused and unfocused windows
+ active_opacity = 1.0
+ inactive_opacity = 1.0
+
+ drop_shadow = true
+ shadow_range = 4
+ shadow_render_power = 3
+ col.shadow = rgba(1a1a1aee)
+
+ # https://wiki.hyprland.org/Configuring/Variables/#blur
+ blur {
+ enabled = true
+ size = 3
+ passes = 1
+
+ vibrancy = 0.1696
+ }
+}
+
+# https://wiki.hyprland.org/Configuring/Variables/#animations
+animations {
+ enabled = true
+
+ # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
+
+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
+
+ animation = windows, 1, 7, myBezier
+ animation = windowsOut, 1, 7, default, popin 80%
+ animation = border, 1, 10, default
+ animation = borderangle, 1, 8, default
+ animation = fade, 1, 7, default
+ animation = workspaces, 1, 6, default
+}
+
+# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
+dwindle {
+ pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
+ preserve_split = true # You probably want this
+}
+
+# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
+master {
+ new_is_master = true
+}
+
+# https://wiki.hyprland.org/Configuring/Variables/#misc
+misc {
+ force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
+ disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
+}
+
+
+#############
+### INPUT ###
+#############
+
+# https://wiki.hyprland.org/Configuring/Variables/#input
+input {
+ kb_layout = us
+ kb_variant =
+ kb_model =
+ kb_options =
+ kb_rules =
+
+ follow_mouse = 1
+
+ sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
+
+ touchpad {
+ natural_scroll = false
+ }
+}
+
+# https://wiki.hyprland.org/Configuring/Variables/#gestures
+gestures {
+ workspace_swipe = false
+}
+
+# Example per-device config
+# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
+device {
+ name = epic-mouse-v1
+ sensitivity = -0.5
+}
+
+
+####################
+### KEYBINDINGSS ###
+####################
+
+# See https://wiki.hyprland.org/Configuring/Keywords/
+$mainMod = SUPER # Sets "Windows" key as main modifier
+
+# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
+bind = $mainMod, RETURN, exec, $terminal
+bind = $mainMod, C, killactive,
+bind = $mainMod, M, exec, wlogout
+bind = $mainMod, E, exec, $fileManager
+bind = $mainMod, V, togglefloating,
+bind = $mainMod, D, exec, $menu
+bind = $mainMod, P, pseudo, # dwindle
+bind = $mainMod, J, togglesplit, # dwindle
+bind = $mainMod,F,fullscreen
+
+# Move focus with mainMod + arrow keys
+bind = $mainMod, left, movefocus, l
+bind = $mainMod, right, movefocus, r
+bind = $mainMod, up, movefocus, u
+bind = $mainMod, down, movefocus, d
+
+# Switch workspaces with mainMod + [0-9]
+bind = $mainMod, 1, workspace, 1
+bind = $mainMod, 2, workspace, 2
+bind = $mainMod, 3, workspace, 3
+bind = $mainMod, 4, workspace, 4
+bind = $mainMod, 5, workspace, 5
+bind = $mainMod, 6, workspace, 6
+bind = $mainMod, 7, workspace, 7
+bind = $mainMod, 8, workspace, 8
+bind = $mainMod, 9, workspace, 9
+bind = $mainMod, 0, workspace, 10
+
+# Move active window to a workspace with mainMod + SHIFT + [0-9]
+bind = $mainMod SHIFT, 1, movetoworkspace, 1
+bind = $mainMod SHIFT, 2, movetoworkspace, 2
+bind = $mainMod SHIFT, 3, movetoworkspace, 3
+bind = $mainMod SHIFT, 4, movetoworkspace, 4
+bind = $mainMod SHIFT, 5, movetoworkspace, 5
+bind = $mainMod SHIFT, 6, movetoworkspace, 6
+bind = $mainMod SHIFT, 7, movetoworkspace, 7
+bind = $mainMod SHIFT, 8, movetoworkspace, 8
+bind = $mainMod SHIFT, 9, movetoworkspace, 9
+bind = $mainMod SHIFT, 0, movetoworkspace, 10
+
+# Example special workspace (scratchpad)
+bind = $mainMod, S, togglespecialworkspace, magic
+bind = $mainMod SHIFT, S, movetoworkspace, special:magic
+
+# Scroll through existing workspaces with mainMod + scroll
+bind = $mainMod, mouse_down, workspace, e+1
+bind = $mainMod, mouse_up, workspace, e-1
+
+# Move/resize windows with mainMod + LMB/RMB and dragging
+bindm = $mainMod, mouse:272, movewindow
+bindm = $mainMod, mouse:273, resizewindow
+
+
+#POWER
+bind = $mainMod, L, exec,~/Documents/scripts/lock.sh
+
+
+##############################
+### WINDOWS AND WORKSPACES ###
+##############################
+
+# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
+# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
+
+# Example windowrule v1
+# windowrule = float, ^(kitty)$
+
+# Example windowrule v2
+# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
+
+windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
+windowrule = float,^(blueman-manager)$
+windowrule = float,^(qalculate-gtk)$
+windowrulev2 = float,title:^(Volume Control)$
+#windowrulev2 = noblur,class:^(google-chrome-stable)$
+windowrulev2=noblur,class:^()$,title:^()$ \ No newline at end of file
diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf
new file mode 100644
index 000000000..0978158eb
--- /dev/null
+++ b/hypr/hyprlock.conf
@@ -0,0 +1,86 @@
+
+# BACKGROUND
+background {
+ monitor =
+ path = ~/Pictures/wallhaven-l8vp7y_1920x1080.png
+ # blur_passes = 0.3
+ contrast = 0.8916
+ brightness = 0.8172
+ vibrancy = 0.1696
+ vibrancy_darkness = 0.0
+
+}
+
+input-field {
+ monitor =
+ size = 200, 50
+ outline_thickness = 3
+ dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
+ dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
+ dots_center = true
+ dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
+ outer_color = rgb(151515)
+ inner_color = rgb(FFFFFF)
+ font_color = rgb(10, 10, 10)
+ fade_on_empty = true
+ fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
+ placeholder_text = <i>Input Password...</i> # Text rendered in the input box when it's empty.
+ hide_input = false
+ rounding = -1 # -1 means complete rounding (circle/oval)
+ check_color = rgb(204, 136, 34)
+ fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color
+ fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
+ fail_transition = 300 # transition time in ms between normal outer_color and fail_color
+ capslock_color = -1
+ numlock_color = -1
+ bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
+ invert_numlock = false # change color if numlock is off
+ swap_font_color = false # see below
+ position = 0, -120
+ halign = center
+ valign = center
+
+}
+
+
+# TIME
+label {
+ monitor =
+ text = cmd[update:1000] echo "$(date +"%-I:%M%p")"
+ color = $foreground
+ #color = rgba(255, 255, 255, 0.6)
+ font_size = 120
+ font_family = EnvyCodeR Nerd Font
+ position = 0, 0
+ halign = center
+ valign = top
+}
+
+# USER
+label {
+ monitor =
+ text = $USER
+ color = $foreground
+ #color = rgba(255, 255, 255, 0.6)
+ font_size = 25
+ font_family = EnvyCodeR Nerd Font
+ position = 0, -40
+ halign = center
+ valign = center
+ shadow_passes = 5
+ shadow_size = 10
+}
+
+# image {
+# path = ~/Pictures/wallhaven-l8vp7y_1920x1080.png
+# size = 280 # lesser side if not 1:1 ratio
+# rounding = -1 # negative values mean circle
+# border_size = 4
+# border_color = rgb(221, 221, 221)
+# rotate = 0 # degrees, counter-clockwise
+# reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
+# # reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
+# position = 0, 150
+# halign = center
+# valign = center
+# } \ No newline at end of file
diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf
new file mode 100644
index 000000000..b4b339ad0
--- /dev/null
+++ b/hypr/hyprpaper.conf
@@ -0,0 +1,4 @@
+preload = /home/indrajith/Pictures/wallhaven-l8vp7y_1920x1080.png
+
+wallpaper = ,/home/indrajith/Pictures/wallhaven-l8vp7y_1920x1080.png
+splash = true
diff --git a/hypr/scripts/browser.sh b/hypr/scripts/browser.sh
new file mode 100755
index 000000000..63036c43d
--- /dev/null
+++ b/hypr/scripts/browser.sh
@@ -0,0 +1 @@
+google-chrome-stable \ No newline at end of file
diff --git a/hypr/scripts/filemanager.sh b/hypr/scripts/filemanager.sh
new file mode 100755
index 000000000..af8fd0e44
--- /dev/null
+++ b/hypr/scripts/filemanager.sh
@@ -0,0 +1 @@
+thunar \ No newline at end of file
diff --git a/kitty/current-theme.conf b/kitty/current-theme.conf
new file mode 100644
index 000000000..6e6a06cb6
--- /dev/null
+++ b/kitty/current-theme.conf
@@ -0,0 +1,21 @@
+background #0e0c15
+foreground #dbd0b9
+cursor #bbbbbb
+selection_background #f3e0b8
+color0 #08002e
+color8 #331d4c
+color1 #64002c
+color9 #cf2062
+color2 #5d731a
+color10 #b3ce58
+color3 #cd751c
+color11 #fac357
+color4 #1d6da1
+color12 #40a4cf
+color5 #b7077e
+color13 #f02aae
+color6 #42a38c
+color14 #62caa8
+color7 #f3e0b8
+color15 #fff5db
+selection_foreground #0e0c15
diff --git a/kitty/kitty-themes/.all-contributorsrc b/kitty/kitty-themes/.all-contributorsrc
new file mode 100644
index 000000000..c990c9578
--- /dev/null
+++ b/kitty/kitty-themes/.all-contributorsrc
@@ -0,0 +1,111 @@
+{
+ "files": [
+ "README.md"
+ ],
+ "badgeTemplate": "[![All Contributors](https://img.shields.io/badge/all_contributors-<%= contributors.length %>-green.svg?style=for-the-badge)](#contributors)",
+ "contributorTemplate": "<a href=\"<%= contributor.profile %>\"><b><%= contributor.name %></b></a><br /><%= contributions %>",
+ "imageSize": 100,
+ "commit": false,
+ "contributors": [
+ {
+ "login": "scopatz",
+ "name": "Anthony Scopatz",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/320553?v=4",
+ "profile": "http://www.scopatz.com",
+ "contributions": [
+ "doc"
+ ]
+ },
+ {
+ "login": "orangecoloured",
+ "name": "RCKT",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/3314891?v=4",
+ "profile": "https://rckt.cc",
+ "contributions": [
+ "theme"
+ ]
+ },
+ {
+ "login": "varmanishant",
+ "name": "varmanishant",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/4084912?v=4",
+ "profile": "https://github.com/varmanishant",
+ "contributions": [
+ "theme"
+ ]
+ },
+ {
+ "login": "rlerdorf",
+ "name": "Rasmus Lerdorf",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/54641?v=4",
+ "profile": "https://github.com/rlerdorf",
+ "contributions": [
+ "bug",
+ "ideas"
+ ]
+ },
+ {
+ "login": "Luflosi",
+ "name": "Luflosi",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/15217907?v=4",
+ "profile": "https://github.com/Luflosi",
+ "contributions": [
+ "fix",
+ "question",
+ "doc"
+ ]
+ },
+ {
+ "login": "connorholyday",
+ "name": "Connor Holyday",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/4559119?v=4",
+ "profile": "https://holyday.me",
+ "contributions": [
+ "fix"
+ ]
+ },
+ {
+ "login": "BlueDrink9",
+ "name": "BlueDrink9",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/26474254?v=4",
+ "profile": "https://github.com/BlueDrink9",
+ "contributions": [
+ "bug"
+ ]
+ },
+ {
+ "login": "brujoand",
+ "name": "Anders Brujordet",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/124421?v=4",
+ "profile": "https://github.com/brujoand",
+ "contributions": [
+ "theme"
+ ]
+ },
+ {
+ "login": "rjshrjndrn",
+ "name": "Rajesh Rajendran",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/2563385?v=4",
+ "profile": "http://www.hackouts.com",
+ "contributions": [
+ "fix"
+ ]
+ }
+ ],
+ "types": {
+ "theme": {
+ "symbol": "😻",
+ "description": "New theme added to the collection"
+ },
+ "fix": {
+ "symbol": "🛠️",
+ "description": "Fixed a theme"
+ }
+ },
+ "contributorsPerLine": 7,
+ "projectName": "kitty-themes",
+ "projectOwner": "dexpota",
+ "repoType": "github",
+ "repoHost": "https://github.com",
+ "commitConvention": "none"
+}
diff --git a/kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md b/kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md
new file mode 100644
index 000000000..01cd29c50
--- /dev/null
+++ b/kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md
@@ -0,0 +1,10 @@
+---
+name: theme-request
+about: Use the following template if you want a new theme to be included in the collection.
+title: Add <theme> to the collection.
+labels: theme request
+assignees: dexpota
+
+---
+
+Please, include **theme** in the collection. You can find it here: **url**
diff --git a/kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md b/kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 000000000..ad167932d
--- /dev/null
+++ b/kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,9 @@
+---
+name: theme-request
+about: Use the following template if you want a new theme to be included in the collection.
+title: Add <theme> to the collection.
+labels: theme request
+assignees: dexpota
+
+---
+Please, include **theme** in the collection.
diff --git a/kitty/kitty-themes/.github/kitty-themes.jpg b/kitty/kitty-themes/.github/kitty-themes.jpg
new file mode 100644
index 000000000..cfc02fe5d
--- /dev/null
+++ b/kitty/kitty-themes/.github/kitty-themes.jpg
Binary files differ
diff --git a/kitty/kitty-themes/.tools/README.md b/kitty/kitty-themes/.tools/README.md
new file mode 100644
index 000000000..732115538
--- /dev/null
+++ b/kitty/kitty-themes/.tools/README.md
@@ -0,0 +1,9 @@
+# kitty-tools
+> A bunch of useful scripts used to convert schemes and generate files.
+
+## Process overview
+
+1. Find a nice theme and check the licensing, is it possible to distribute the theme?
+2. Generate the configuration file for **kitty**;
+3. Add a new preview for the theme;
+4. Update the README.md;
diff --git a/kitty/kitty-themes/.tools/color_table.sh b/kitty/kitty-themes/.tools/color_table.sh
new file mode 100755
index 000000000..b7b4559bb
--- /dev/null
+++ b/kitty/kitty-themes/.tools/color_table.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+#
+# This file echoes a bunch of color codes to the
+# terminal to demonstrate what's available. Each
+# line is the color code of one forground color,
+# out of 17 (default + 16 escapes), followed by a
+# test use of that color on all nine background
+# colors (default + 8 escapes).
+#
+
+T='gYw' # The test text
+
+echo -e "\n 40m 41m 42m 43m\
+ 44m 45m 46m 47m";
+
+for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \
+ '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \
+ ' 36m' '1;36m' ' 37m' '1;37m';
+ do FG=${FGs// /}
+ echo -en " $FGs \033[$FG $T "
+ for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
+ do echo -en "$EINS \033[$FG\033[$BG $T \033[0m";
+ done
+ echo;
+done
+echo
diff --git a/kitty/kitty-themes/.tools/convert.py b/kitty/kitty-themes/.tools/convert.py
new file mode 100644
index 000000000..3599ddcf1
--- /dev/null
+++ b/kitty/kitty-themes/.tools/convert.py
@@ -0,0 +1,30 @@
+import json
+from jinja2 import FileSystemLoader, Environment
+import sys
+import os
+
+
+def removeAlpha(value):
+ hex = value.lstrip("#")
+ return "#" + hex[0:6]
+
+
+filename = sys.argv[1]
+
+kitty_configuration = os.path.splitext(filename)[0] + ".conf"
+
+with open(filename, "r") as configuration_file:
+ configuration = json.load(configuration_file)
+
+loader = FileSystemLoader(".")
+env = Environment(loader=loader)
+
+env.filters['removeAlpha'] = removeAlpha
+env.trim_blocks = True
+
+template = env.get_template("template.conf.j2")
+
+output = template.render(**configuration)
+
+with open(kitty_configuration, "w") as fp:
+ fp.write(output)
diff --git a/kitty/kitty-themes/.tools/convert_conf.swift b/kitty/kitty-themes/.tools/convert_conf.swift
new file mode 100755
index 000000000..b023f5699
--- /dev/null
+++ b/kitty/kitty-themes/.tools/convert_conf.swift
@@ -0,0 +1,57 @@
+#!/usr/bin/swift
+// main.swift
+// nscolor
+//
+// Created by Fabrizio FD. Destro on 28/12/18.
+// Copyright © 2018 Fabrizio FD. Destro. All rights reserved.
+//
+
+import Foundation
+import AppKit
+
+func hex(color: NSColor) -> String {
+ return String(format: "#%02x%02x%02x", Int(color.redComponent * 0xFF), Int(color.greenComponent * 0xFF), Int(color.blueComponent * 0xFF))
+}
+
+func process_color(field: String, data: Data) {
+ let color = NSKeyedUnarchiver.unarchiveObject(with: data) as! NSColor
+ print("\(field) \(hex(color: color))");
+}
+
+func generate_conf_line(field: String, key: String, dictionary: NSDictionary){
+ if let data = dictionary[key] {
+ process_color(field: field, data: data as! Data)
+ }
+}
+
+func process(filename: String) {
+ let plist = NSDictionary(contentsOfFile: filename)!
+
+ generate_conf_line(field: "background", key: "BackgroundColor", dictionary: plist)
+ generate_conf_line(field: "foreground", key: "TextColor", dictionary: plist)
+ generate_conf_line(field: "cursor", key: "CursorColor", dictionary: plist)
+ generate_conf_line(field: "selection_background", key: "SelectionColor", dictionary: plist)
+ generate_conf_line(field: "color0", key: "ANSIBlackColor", dictionary: plist)
+ generate_conf_line(field: "color8", key: "ANSIBrightBlackColor", dictionary: plist)
+ generate_conf_line(field: "color1", key: "ANSIRedColor", dictionary: plist)
+ generate_conf_line(field: "color9", key: "ANSIBrightRedColor", dictionary: plist)
+ generate_conf_line(field: "color2", key: "ANSIGreenColor", dictionary: plist)
+ generate_conf_line(field: "color10", key: "ANSIBrightGreenColor", dictionary: plist)
+ generate_conf_line(field: "color3", key: "ANSIYellowColor", dictionary: plist)
+ generate_conf_line(field: "color11", key: "ANSIBrightYellowColor", dictionary: plist)
+ generate_conf_line(field: "color4", key: "ANSIBlueColor", dictionary: plist)
+ generate_conf_line(field: "color12", key: "ANSIBrightBlueColor", dictionary: plist)
+ generate_conf_line(field: "color5", key: "ANSIMagentaColor", dictionary: plist)
+ generate_conf_line(field: "color13", key: "ANSIBrightMagentaColor", dictionary: plist)
+ generate_conf_line(field: "color6", key: "ANSICyanColor", dictionary: plist)
+ generate_conf_line(field: "color14", key: "ANSIBrightCyanColor", dictionary: plist)
+ generate_conf_line(field: "color7", key: "ANSIWhiteColor", dictionary: plist)
+ generate_conf_line(field: "color15", key: "ANSIBrightWhiteColor", dictionary: plist)
+}
+
+if (CommandLine.argc == 2) {
+ let filename = CommandLine.arguments[1]
+ process(filename: filename)
+} else {
+ print("Missing plist's path.")
+}
diff --git a/kitty/kitty-themes/.tools/extract-vscode.sh b/kitty/kitty-themes/.tools/extract-vscode.sh
new file mode 100755
index 000000000..71a69305d
--- /dev/null
+++ b/kitty/kitty-themes/.tools/extract-vscode.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+theme=$1
+
+jq ".colors | to_entries | map(select(.key | match(\"terminal.*\"))) | map({(.key | gsub(\"\\\\.(?<a>.)\"; .a | ascii_upcase) | ltrimstr(\"terminal\") | sub(\"(?<a>.)\"; .a | ascii_downcase)):.value}) | add" < "$theme" > "terminal/${theme%.*}.json"
diff --git a/kitty/kitty-themes/.tools/generate_conf.sh b/kitty/kitty-themes/.tools/generate_conf.sh
new file mode 100755
index 000000000..db498b9ac
--- /dev/null
+++ b/kitty/kitty-themes/.tools/generate_conf.sh
@@ -0,0 +1,10 @@
+#!/usr/bin/env bash
+
+find ~/github/macos-terminal-themes/schemes/ -name "*.terminal" -print0 | while read -d $'\0' -r file; do
+ filename=`basename "$file"`
+ without_ext=${filename%.*}
+ removed_spaces=${without_ext// /_}
+ # output_filename=`echo ${removed_spaces} | tr '[:upper:]' '[:lower:]'`
+ echo ${removed_spaces}.conf
+ ./convert_conf.swift "$file" > ./themes/${removed_spaces}.conf
+done
diff --git a/kitty/kitty-themes/.tools/generate_theme_preview.sh b/kitty/kitty-themes/.tools/generate_theme_preview.sh
new file mode 100755
index 000000000..040867b35
--- /dev/null
+++ b/kitty/kitty-themes/.tools/generate_theme_preview.sh
@@ -0,0 +1,22 @@
+#!/usr/bin/env bash
+# This script generate all preview images for the themes
+# In order to capture previews without the to bar start kitty without decorations
+# kitty -o hide_window_decorations=yes
+
+# shellcheck source=libcapture.sh
+source libcapture.sh
+
+# read theme path from args
+id=$1
+theme=$2
+preview_filename=$3
+
+conf_filename=$(basename "$theme")
+
+lockfile=$(mktemp)
+
+kitty @ set-colors --match id:"$id" "$theme"
+kitty @ send-text --match id:"$id" "clear && figlet -f digital -t \"$conf_filename\" && unbuffer ./color_table.sh && rm \"$lockfile\"\n"
+
+# simple sync mechanism, wait for the lockfile to be removed
+( echo "$lockfile" | entr "false" 1>/dev/null 2>&1 ) || capture themes "$preview_filename"
diff --git a/kitty/kitty-themes/.tools/generate_themes_previews.sh b/kitty/kitty-themes/.tools/generate_themes_previews.sh
new file mode 100755
index 000000000..63e5825e5
--- /dev/null
+++ b/kitty/kitty-themes/.tools/generate_themes_previews.sh
@@ -0,0 +1,32 @@
+#!/usr/bin/env bash
+# This script generate all preview images for the themes
+
+root="$(git rev-parse --show-toplevel)"
+tools="$root/.tools"
+
+PATH=$tools:$PATH
+
+# new kitty window, return its id
+id=$(kitty @ new-window --title themes --window-type os --cwd "$tools")
+# start bash without reading the profile nor the configuration
+kitty @ send-text --match id:"$id" "/usr/bin/env bash --noprofile --norc\n"
+kitty @ set-font-size 24
+
+# save all preview in this directory
+previews="$root/_previews"
+if [ ! -d "$previews" ]; then
+ mkdir "$previews"
+fi
+
+while read -r theme
+do
+ echo "Genereting theme preview for $theme"
+ preview_directory=$previews/$(basename "${theme%.*}")
+ [ ! -d "$preview_directory" ] && mkdir "$preview_directory"
+ preview_filename=$previews/$(basename "${theme%.*}")/preview.png
+ generate_theme_preview.sh "$id" "$theme" "$preview_filename"
+ mogrify -resize 1024x\> "$preview_filename"
+done < /dev/stdin
+
+kitty @ close-window --match id:"$id"
+kitty @ set-font-size 16
diff --git a/kitty/kitty-themes/.tools/libcapture.sh b/kitty/kitty-themes/.tools/libcapture.sh
new file mode 100755
index 000000000..ff5159187
--- /dev/null
+++ b/kitty/kitty-themes/.tools/libcapture.sh
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+
+function capture_linux() {
+ local title="$1"
+ local output="$2"
+ import -window "$title" "$output"
+}
+
+function capture_osx() {
+ local title="$1"
+ local output="$2"
+ # get system id of the new created window
+ sys_id=$(./windowid.swift "kitty" "$title")
+ screencapture -wl"$sys_id" "$output"
+}
+
+function capture() {
+ if [[ "$OSTYPE" == "linux-gnu" ]]; then
+ capture_linux "$@"
+ elif [[ "$OSTYPE" == "darwin"* ]]; then
+ capture_osx "$@"
+ fi
+}
diff --git a/kitty/kitty-themes/.tools/markdown.sh b/kitty/kitty-themes/.tools/markdown.sh
new file mode 100755
index 000000000..0fb08bae0
--- /dev/null
+++ b/kitty/kitty-themes/.tools/markdown.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+previews_root=$1
+# usually this value: https://raw.githubusercontent.com/dexpota/kitty-themes-website/master
+url_root=$2
+
+for f in $(find "$previews_root/previews" -maxdepth 1 -mindepth 1 -type d | sort); do
+ preview_file="$f"/preview.png
+ theme=$(basename $f)
+ relative_path=$(realpath --relative-to="$previews_root" "$preview_file")
+ header=`basename $theme | sed 's/_/ /g'`
+ image="![image]($url_root/$relative_path)"
+ echo \#\# $header
+ echo $image
+done
diff --git a/kitty/kitty-themes/.tools/palette.py b/kitty/kitty-themes/.tools/palette.py
new file mode 100644
index 000000000..f47fd9c16
--- /dev/null
+++ b/kitty/kitty-themes/.tools/palette.py
@@ -0,0 +1,91 @@
+from argparse import ArgumentParser
+from svgwrite.shapes import Rect
+import svgwrite
+
+theme_keys = [
+ "foreground", "background", "background_opacity", "dynamic_background_opacity", "dim_opacity",
+ "selection_foreground", "selection_background", "color0", "color8", "color1", "color9", "color2", "color10",
+ "color3", "color11", "color4", "color12", "color5", "color13", "color6", "color14", "color7", "color15"
+]
+
+
+def is_valid(line):
+ """
+ Returns true if a line inside a configuration file is a valid theme configuration pair: is not a comment, is not
+ empty and the key is correct.
+
+ :param line: a line inside the configuration file
+ :type line: str
+ :return: true if is valid, false otherwise
+ :rtype: bool
+ """
+ return (not line.lstrip().startswith("#") # is not a comment
+ and len(line.strip()) != 0 # is not empty
+ and line.split(maxsplit=1)[0] in theme_keys) # key is a valid one
+
+
+def extract_configuration_pair(line):
+ """
+ Extract a configuration pair by splitting on spaces and taking the first couple of values.
+
+ :param line: a line inside the configuration file
+ :type line: str
+ :return: a key-value pair
+ :rtype: bool
+ """
+ split = line.split(maxsplit=2)
+ return split[0], split[1]
+
+
+def read_configuration(filename):
+ """
+ Read a kitty configuration file and extract only theme related keys and values.
+
+ :param filename: path to the configuration file
+ :type filename: str
+ :return: a map with theme related configuration values
+ :rtype: dict[str, str]
+ """
+ with open(filename, "r") as fp:
+ lines = fp.readlines()
+ print(filename)
+ theme_config = dict([extract_configuration_pair(line) for line in lines if is_valid(line)])
+ return theme_config
+
+
+def draw_theme_palette(theme_configuration, start_point, size, displacement):
+ rects = []
+ for k, v in theme_configuration.items():
+ rgb = tuple(int(v[i + 1:i + 3], 16) for i in (0, 2, 4))
+ rects.append(Rect(start_point, size, fill=svgwrite.utils.rgb(rgb[0], rgb[1], rgb[2])))
+ start_point = (start_point[0] + displacement[0], start_point[1] + displacement[1])
+
+ return rects
+
+
+def draw_all_palettes(themes):
+ dwg = svgwrite.Drawing('test.svg', profile='tiny')
+ y = 0
+ palettes = []
+ for theme in themes:
+ palettes += draw_theme_palette(theme, (0, y), (10, 10), (10, 0))
+ y += 10
+
+ for rect in palettes:
+ dwg.add(rect)
+ dwg.save()
+
+
+def main():
+ parser = ArgumentParser()
+ parser.add_argument("theme", type=str, nargs="+")
+
+ ns = parser.parse_args()
+
+ theme_configurations = [read_configuration(theme) for theme in ns.theme]
+
+ draw_all_palettes(theme_configurations)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/kitty/kitty-themes/.tools/preview.py b/kitty/kitty-themes/.tools/preview.py
new file mode 100644
index 000000000..c29387ae6
--- /dev/null
+++ b/kitty/kitty-themes/.tools/preview.py
@@ -0,0 +1,136 @@
+import sys
+import os
+import sys
+
+theme_keys = [
+ "cursor", "foreground", "background", "background_opacity", "dynamic_background_opacity", "dim_opacity",
+ "selection_foreground", "selection_background", "color0", "color8", "color1", "color9", "color2", "color10",
+ "color3", "color11", "color4", "color12", "color5", "color13", "color6", "color14", "color7", "color15"
+]
+
+
+def is_valid(line):
+ """
+ Returns true if a line inside a configuration file is a valid theme configuration pair: is not a comment, is not
+ empty and the key is correct.
+
+ :param line: a line inside the configuration file
+ :type line: str
+ :return: true if is valid, false otherwise
+ :rtype: bool
+ """
+ return (not line.lstrip().startswith("#") # is not a comment
+ and len(line.strip()) != 0 # is not empty
+ and line.split(maxsplit=1)[0] in theme_keys) # key is a valid one
+
+
+def extract_configuration_pair(line):
+ """
+ Extract a configuration pair by splitting on spaces and taking the first couple of values.
+
+ :param line: a line inside the configuration file
+ :type line: str
+ :return: a key-value pair
+ :rtype: bool
+ """
+ split = line.split(maxsplit=2)
+ return split[0], split[1]
+
+
+def read_configuration(filename):
+ """
+ Read a kitty configuration file and extract only theme related keys and values.
+
+ :param filename: path to the configuration file
+ :type filename: str
+ :return: a map with theme related configuration values
+ :rtype: dict[str, str]
+ """
+ with open(filename, "r") as fp:
+ lines = fp.readlines()
+ theme_config = dict([extract_configuration_pair(line) for line in lines if is_valid(line)])
+ return theme_config
+
+
+def fg(color, text):
+ rgb = tuple(int(color[i + 1:i + 3], 16) for i in (0, 2, 4))
+ return ('\x1b[38;2;%s;%s;%sm' % rgb + text + '\x1b[0m')
+
+
+def bg(color, text):
+ rgb = tuple(int(color[i + 1:i + 3], 16) for i in (0, 2, 4))
+ return ('\x1b[48;2;%s;%s;%sm' % rgb + text + '\x1b[0m')
+
+
+def print_preview(filename, configuration):
+ cursor = configuration["cursor"]
+ background = configuration["background"]
+ foreground = configuration["foreground"]
+
+ theme = os.path.basename(filename)
+
+ size = len(theme) + (2 + 2 + 16 + 2 + 16 + 1 + 2)
+ print(bg(background, " " * size))
+ print(bg(background, " "), end="")
+ print(bg(background, fg(foreground, theme)), end="")
+ print(bg(background, " "), end="")
+
+ c='a'
+ for i in range(0, 16):
+ color = configuration["color%d" % i]
+ print(bg(background, fg(color, c)), end="")
+ c = chr(ord(c) + 1)
+
+ print(bg(background, " "), end="")
+
+ selection_background = configuration["selection_background"]
+ selection_foreground = configuration["selection_foreground"]
+
+ c='A'
+ for i in range(0, 16):
+ print(bg(selection_background, fg(selection_foreground, c)), end="")
+ c = chr(ord(c) + 1)
+
+ print(bg(cursor, " "), end="")
+ print(bg(background, " "))
+
+ print(bg(background, " " * size))
+
+ print(bg(background, " "), end="")
+ print(bg(configuration["color0"], " "), end="")
+ print(bg(configuration["color1"], " "), end="")
+ print(bg(configuration["color2"], " "), end="")
+ print(bg(configuration["color3"], " "), end="")
+ print(bg(configuration["color4"], " "), end="")
+ print(bg(configuration["color5"], " "), end="")
+ print(bg(configuration["color6"], " "), end="")
+ print(bg(configuration["color7"], " "), end="")
+ print(bg(background, " "), end="")
+ print(bg(configuration["color8"], " "), end="")
+ print(bg(configuration["color9"], " "), end="")
+ print(bg(configuration["color10"], " "), end="")
+ print(bg(configuration["color11"], " "), end="")
+ print(bg(configuration["color12"], " "), end="")
+ print(bg(configuration["color13"], " "), end="")
+ print(bg(configuration["color14"], " "), end="")
+ print(bg(configuration["color15"], " "), end="")
+ print(bg(background, " " * (size - 16 - 4)), end="")
+ print()
+
+ print(bg(background, " " * size))
+ print()
+
+
+def main(directory):
+ for filename in os.listdir(directory):
+ try:
+ path = os.path.join(directory, filename)
+ configuration = read_configuration(path)
+ print_preview(path, configuration)
+ except Exception as e:
+ print(e, file=sys.stderr)
+ print("Error while processing %s" % filename, file=sys.stderr)
+
+
+if __name__ == "__main__":
+ main(sys.argv[1])
diff --git a/kitty/kitty-themes/.tools/previews.sh b/kitty/kitty-themes/.tools/previews.sh
new file mode 100755
index 000000000..c39c2c787
--- /dev/null
+++ b/kitty/kitty-themes/.tools/previews.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+# @author: @vrdhn on github
+
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+cd $SCRIPT_DIR/..
+
+set_theme () {
+ cat themes/$1.conf | awk 'BEGIN {printf("kitty @ set-colors ")} {printf( "%s=%s ",$1,$2 )} END{printf("\n")}' | sh
+}
+
+list=$(find themes -type f | grep "$1" | xargs basename | cut -d. -f1)
+
+for x in $list ;
+do
+ kitty +kitten icat "previews/$x.png"
+ read -n 1 -p "$x : Next / Set / Quit :" ans
+ echo
+
+ case $ans in
+ n ) ;;
+ s ) set_theme $x ; exit ;;
+ q ) exit ;;
+ esac
+done
diff --git a/kitty/kitty-themes/.tools/template.conf b/kitty/kitty-themes/.tools/template.conf
new file mode 100644
index 000000000..0af1722da
--- /dev/null
+++ b/kitty/kitty-themes/.tools/template.conf
@@ -0,0 +1,37 @@
+background #
+foreground #
+cursor #
+cursor_text_color #
+selection_foreground #
+selection_background #
+# black
+color0 #
+color8 #
+# red
+color1 #
+# light red
+color9 #
+# green
+color2 #
+# light green
+color10 #
+# yellow
+color3 #
+# light yellow
+color11 #
+# blue
+color4 #
+# light blue
+color12 #
+# magenta
+color5 #
+# light magenta
+color13 #
+# cyan
+color6 #
+# lighy cyan
+color14 #
+# light gray
+color7 #
+# dark gray
+color15 #
diff --git a/kitty/kitty-themes/.tools/template.conf.j2 b/kitty/kitty-themes/.tools/template.conf.j2
new file mode 100644
index 000000000..8ff9450b0
--- /dev/null
+++ b/kitty/kitty-themes/.tools/template.conf.j2
@@ -0,0 +1,91 @@
+{% if background is defined %}
+background {{background}}
+{% endif %}
+{% if foreground is defined %}
+foreground {{foreground}}
+{% endif %}
+
+{% if cursorForeground is defined %}
+cursor {{cursorForeground}}
+{% endif %}
+{% if cursorBackground is defined %}
+cursor_text_color {{cursorBackground | removeAlpha}}
+{% endif %}
+{% if background is defined %}
+selection_foreground {{background | removeAlpha}}
+{% endif %}
+{% if selectionBackground is defined %}
+selection_background {{selectionBackground | removeAlpha}}
+{% endif %}
+
+{% if ansiBlack is defined %}
+# dull black
+color0 {{ansiBlack}}
+{% endif %}
+{% if ansiBrightBlack is defined %}
+# light black
+color8 {{ansiBrightBlack}}
+{% endif %}
+
+{% if ansiRed is defined %}
+# dull red
+color1 {{ansiRed}}
+{% endif %}
+{% if ansiBrightRed %}
+# light red
+color9 {{ansiBrightRed}}
+{% endif %}
+
+{% if ansiGreen is defined %}
+# dull green
+color2 {{ansiGreen}}
+{% endif %}
+{% if ansiBrightGreen is defined %}
+# light green
+color10 {{ansiBrightGreen}}
+{% endif %}
+
+{% if ansiYellow is defined %}
+# yellow
+color3 {{ansiYellow}}
+{% endif %}
+{% if ansiBrightYellow is defined %}
+# light yellow
+color11 {{ansiBrightYellow}}
+{% endif %}
+
+{% if ansiBlue is defined %}
+# blue
+color4 {{ansiBlue}}
+{% endif %}
+{% if ansiBrightBlue %}
+# light blue
+color12 {{ansiBrightBlue}}
+{% endif %}
+
+{% if ansiMagenta is defined %}
+# magenta
+color5 {{ansiMagenta}}
+{% endif %}
+{% if ansiBrightMagenta is defined %}
+# light magenta
+color13 {{ansiBrightMagenta}}
+{% endif %}
+
+{% if ansiCyan is defined %}
+# cyan
+color6 {{ansiCyan}}
+{% endif %}
+{% if ansiBrightCyan is defined %}
+# light cyan
+color14 {{ansiBrightCyan}}
+{% endif %}
+
+{% if ansiWhite is defined %}
+# dull white
+color7 {{ansiWhite}}
+{% endif %}
+{% if ansiBrightWhite is defined %}
+# bright white
+color15 {{ansiBrightWhite}}
+{% endif %}
diff --git a/kitty/kitty-themes/.tools/windowid.swift b/kitty/kitty-themes/.tools/windowid.swift
new file mode 100755
index 000000000..1dc95e6fd
--- /dev/null
+++ b/kitty/kitty-themes/.tools/windowid.swift
@@ -0,0 +1,20 @@
+#!/usr/bin/swift
+import Foundation
+import Cocoa
+import CoreGraphics.CGWindow
+
+let windows : NSArray = CGWindowListCopyWindowInfo(CGWindowListOption.excludeDesktopElements, kCGNullWindowID)! as NSArray
+
+let search_for_app = CommandLine.arguments[1]
+let search_for_win = CommandLine.arguments[2]
+
+for window in windows {
+ let window = window as! NSDictionary
+
+ let app_name = window[kCGWindowOwnerName] as! String
+ let window_name = window[kCGWindowName] as? String
+
+ if app_name == search_for_app && window_name == search_for_win {
+ print("\(window[kCGWindowNumber]!)")
+ }
+}
diff --git a/kitty/kitty-themes/CONTRIBUTING.md b/kitty/kitty-themes/CONTRIBUTING.md
new file mode 100644
index 000000000..fed9d6dcc
--- /dev/null
+++ b/kitty/kitty-themes/CONTRIBUTING.md
@@ -0,0 +1,8 @@
+# Contributing to kitty-themes
+
+We always welcome your pull request! To start contributing follow these simple
+steps:
+
+1. Fork the repo and create your branch from `master`;
+2. Add your theme as config file under `themes` directory;
+3. Issue the pull request through github;
diff --git a/kitty/kitty-themes/LICENSE.md b/kitty/kitty-themes/LICENSE.md
new file mode 100644
index 000000000..50fa54916
--- /dev/null
+++ b/kitty/kitty-themes/LICENSE.md
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2019 Fabrizio Destro <fabrizio@destro.dev>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/kitty/kitty-themes/README.md b/kitty/kitty-themes/README.md
new file mode 100644
index 000000000..5fb8cbeab
--- /dev/null
+++ b/kitty/kitty-themes/README.md
@@ -0,0 +1,465 @@
+[iterm2-themes]: https://github.com/mbadolato/iTerm2-Color-Schemes
+[color-scripts]: https://github.com/stark/Color-Scripts/tree/master/color-scripts
+[license]: https://opensource.org/licenses/MIT
+[license-badge]: https://img.shields.io/github/license/dexpota/kitty-themes.svg?style=for-the-badge
+[kitty-themes-previews]: https://github.com/dexpota/kitty-themes-website/tree/master/previews
+
+![kitty-themes](./.github/kitty-themes.jpg)
+
+> **Personalize** your *kitty* terminal and choose your theme from this awesome
+> collection, for more information on the terminal visit
+> https://github.com/kovidgoyal/kitty
+
+[![License: MIT][license-badge]][license]
+[![All Contributors](https://img.shields.io/badge/all_contributors-9-green.svg?style=for-the-badge)](#contributors)
+
+- [About](#about)
+- [Installation](#installation)
+ - [Source Code](#source-code)
+ - [Conda](#conda)
+- [License](#license)
+- [Bring me to the previews!](#previews)
+- [Contributors](#contributors)
+
+## About
+
+In this repository you can find a set of themes to personalize your kitty
+terminal, these have been ported from [iTerm2-Color-Schemes][iterm2-themes]. You can find
+the previews for each theme in the [section](#previews) below or in this other
+[repository](kitty-themes-previews).
+
+## Installation
+
+### Source Code
+
+1. If you want to download and use one of these theme you have two options:
+ - clone the entire *kitty-themes* repository:
+ ```bash
+ git clone --depth 1 https://github.com/dexpota/kitty-themes.git ~/.config/kitty/kitty-themes
+ ```
+ - or download just one theme:
+ ```bash
+ THEME=https://raw.githubusercontent.com/dexpota/kitty-themes/master/themes/3024_Day.conf
+ wget "$THEME" -P ~/.config/kitty/kitty-themes/themes
+ ```
+
+2. Choose a theme and create a symlink:
+
+ ```bash
+ cd ~/.config/kitty
+ ln -s ./kitty-themes/themes/Floraverse.conf ~/.config/kitty/theme.conf
+ ```
+
+3. Add this line to your kitty.conf configuration file:
+
+ ```
+ include ./theme.conf
+ ```
+
+### Conda
+
+If you using the ``conda`` package manager, you may also install these themes
+with the following command:
+
+```bash
+conda install -c conda-forge kitty-themes
+```
+
+## License
+
+All original content of this repository is licensed with the [MIT
+License](./LICENSE.md). Whenever possible the author of the theme is cited
+inside each theme configuration file, together with its license. Hit me up if
+you find your theme inside this repository and you want a proper citation.
+
+## Previews
+
+If you have followed the [installation](#installation) instructions and cloned
+the entire repo, you have two options to try a theme:
+
+1. If you have enabled remote control in *kitty* you can run this command:
+
+ ```bash
+ kitty @ set-colors -a "~/.config/kitty/kitty-themes/themes/AdventureTime.conf"
+ ```
+
+2. Otherwise you can start another instance of kitty and specify another config
+ file to read from, this will cause *kitty* to read both its normal config
+ file and the specified one:
+
+ ```bash
+ kitty -o include="~/.config/kitty/kitty-themes/themes/AdventureTime.conf"
+ ```
+
+### Bonus
+
+Try your new theme with one of the scripts in [Color-scripts][color-scripts] with this
+one-liner (requires `jq`):
+
+```bash
+COLOR_SCRIPT_REPO=https://api.github.com/repos/stark/Color-Scripts/contents/color-scripts
+wget -q -O - $(curl -s $COLOR_SCRIPT_REPO | jq '.[] | "\(.path) \(.download_url)"' -r | shuf -n1 | cut -d " " -f2) | bash
+```
+
+### 3024 Day
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/3024_Day/preview.png)
+### 3024 Night
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/3024_Night/preview.png)
+### AdventureTime
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/AdventureTime/preview.png)
+### Afterglow
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Afterglow/preview.png)
+### AlienBlood
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/AlienBlood/preview.png)
+### Alucard
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Alucard/preview.png)
+### Apprentice
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Apprentice/preview.png)
+### Argonaut
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Argonaut/preview.png)
+### Arthur
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Arthur/preview.png)
+### AtelierSulphurpool
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/AtelierSulphurpool/preview.png)
+### Atom
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Atom/preview.png)
+### AtomOneLight
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/AtomOneLight/preview.png)
+### ayu
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/ayu/preview.png)
+### ayu light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/ayu_light/preview.png)
+### ayu mirage
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/ayu_mirage/preview.png)
+### Batman
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Batman/preview.png)
+### Belafonte Day
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Belafonte_Day/preview.png)
+### Belafonte Night
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Belafonte_Night/preview.png)
+### BirdsOfParadise
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/BirdsOfParadise/preview.png)
+### Blazer
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Blazer/preview.png)
+### Borland
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Borland/preview.png)
+### Bright Lights
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Bright_Lights/preview.png)
+### Broadcast
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Broadcast/preview.png)
+### Brogrammer
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Brogrammer/preview.png)
+### C64
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/C64/preview.png)
+### Chalk
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Chalk/preview.png)
+### Chalkboard
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Chalkboard/preview.png)
+### Ciapre
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Ciapre/preview.png)
+### CLRS
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/CLRS/preview.png)
+### Cobalt2
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Cobalt2/preview.png)
+### Cobalt Neon
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Cobalt_Neon/preview.png)
+### CrayonPonyFish
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/CrayonPonyFish/preview.png)
+### Dark Pastel
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Dark_Pastel/preview.png)
+### Darkside
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Darkside/preview.png)
+### Desert
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Desert/preview.png)
+### DimmedMonokai
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/DimmedMonokai/preview.png)
+### DotGov
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/DotGov/preview.png)
+### Dracula
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Dracula/preview.png)
+### Dumbledore
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Dumbledore/preview.png)
+### Duotone Dark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Duotone_Dark/preview.png)
+### Earthsong
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Earthsong/preview.png)
+### Elemental
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Elemental/preview.png)
+### ENCOM
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/ENCOM/preview.png)
+### Espresso
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Espresso/preview.png)
+### Espresso Libre
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Espresso_Libre/preview.png)
+### Fideloper
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Fideloper/preview.png)
+### FishTank
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/FishTank/preview.png)
+### Flat
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Flat/preview.png)
+### Flatland
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Flatland/preview.png)
+### Floraverse
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Floraverse/preview.png)
+### FrontEndDelight
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/FrontEndDelight/preview.png)
+### FunForrest
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/FunForrest/preview.png)
+### Galaxy
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Galaxy/preview.png)
+### Github
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Github/preview.png)
+### Glacier
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Glacier/preview.png)
+### GoaBase
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/GoaBase/preview.png)
+### Grape
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Grape/preview.png)
+### Grass
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Grass/preview.png)
+### gruvbox dark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/gruvbox_dark/preview.png)
+### gruvbox light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/gruvbox_light/preview.png)
+### Hardcore
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Hardcore/preview.png)
+### Harper
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Harper/preview.png)
+### Highway
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Highway/preview.png)
+### Hipster Green
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Hipster_Green/preview.png)
+### Homebrew
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Homebrew/preview.png)
+### Hurtado
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Hurtado/preview.png)
+### Hybrid
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Hybrid/preview.png)
+### IC Green PPL
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/IC_Green_PPL/preview.png)
+### IC Orange PPL
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/IC_Orange_PPL/preview.png)
+### idleToes
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/idleToes/preview.png)
+### IR Black
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/IR_Black/preview.png)
+### Jackie Brown
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Jackie_Brown/preview.png)
+### Japanesque
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Japanesque/preview.png)
+### Jellybeans
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Jellybeans/preview.png)
+### JetBrains Darcula
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/JetBrains_Darcula/preview.png)
+### Kibble
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Kibble/preview.png)
+### Later This Evening
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Later_This_Evening/preview.png)
+### Lavandula
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Lavandula/preview.png)
+### LiquidCarbon
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/LiquidCarbon/preview.png)
+### LiquidCarbonTransparent
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/LiquidCarbonTransparent/preview.png)
+### LiquidCarbonTransparentInverse
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/LiquidCarbonTransparentInverse/preview.png)
+### Man Page
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Man_Page/preview.png)
+### Material
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Material/preview.png)
+### MaterialDark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/MaterialDark/preview.png)
+### Mathias
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Mathias/preview.png)
+### Medallion
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Medallion/preview.png)
+### Misterioso
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Misterioso/preview.png)
+### Molokai
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Molokai/preview.png)
+### MonaLisa
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/MonaLisa/preview.png)
+### Monokai Classic
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Classic/preview.png)
+### Monokai Pro
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Pro/preview.png)
+### Monokai Pro (Filter Machine)
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Pro_(Filter_Machine)/preview.png)
+### Monokai Pro (Filter Octagon)
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Pro_(Filter_Octagon)/preview.png)
+### Monokai Pro (Filter Ristretto)
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Pro_(Filter_Ristretto)/preview.png)
+### Monokai Pro (Filter Spectrum)
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Pro_(Filter_Spectrum)/preview.png)
+### Monokai Soda
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Monokai_Soda/preview.png)
+### N0tch2k
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/N0tch2k/preview.png)
+### Neopolitan
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Neopolitan/preview.png)
+### Neutron
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Neutron/preview.png)
+### NightLion v1
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/NightLion_v1/preview.png)
+### NightLion v2
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/NightLion_v2/preview.png)
+### Nova
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Nova/preview.png)
+### Novel
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Novel/preview.png)
+### Obsidian
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Obsidian/preview.png)
+### Ocean
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Ocean/preview.png)
+### OceanicMaterial
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/OceanicMaterial/preview.png)
+### Ollie
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Ollie/preview.png)
+### OneDark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/OneDark/preview.png)
+### Parasio Dark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Parasio_Dark/preview.png)
+### PaulMillr
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/PaulMillr/preview.png)
+### PencilDark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/PencilDark/preview.png)
+### PencilLight
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/PencilLight/preview.png)
+### Piatto Light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Piatto_Light/preview.png)
+### Pnevma
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Pnevma/preview.png)
+### Pro
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Pro/preview.png)
+### Red Alert
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Red_Alert/preview.png)
+### Red Sands
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Red_Sands/preview.png)
+### Relaxed Afterglow
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Relaxed_Afterglow/preview.png)
+### Renault Style
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Renault_Style/preview.png)
+### Renault Style Light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Renault_Style_Light/preview.png)
+### Rippedcasts
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Rippedcasts/preview.png)
+### Royal
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Royal/preview.png)
+### Seafoam Pastel
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Seafoam_Pastel/preview.png)
+### SeaShells
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/SeaShells/preview.png)
+### Seti
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Seti/preview.png)
+### Shaman
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Shaman/preview.png)
+### Slate
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Slate/preview.png)
+### Smyck
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Smyck/preview.png)
+### snazzy
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/snazzy/preview.png)
+### SoftServer
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/SoftServer/preview.png)
+### Solarized Darcula
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Solarized_Darcula/preview.png)
+### Solarized Dark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Solarized_Dark/preview.png)
+### Solarized Dark Higher Contrast
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Solarized_Dark_Higher_Contrast/preview.png)
+### Solarized Dark - Patched
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Solarized_Dark_-_Patched/preview.png)
+### Solarized Light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Solarized_Light/preview.png)
+### Source Code X
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Source_Code_X/preview.png)
+### Spacedust
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Spacedust/preview.png)
+### SpaceGray
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/SpaceGray/preview.png)
+### SpaceGray Eighties
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/SpaceGray_Eighties/preview.png)
+### SpaceGray Eighties Dull
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/SpaceGray_Eighties_Dull/preview.png)
+### Spiderman
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Spiderman/preview.png)
+### Spring
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Spring/preview.png)
+### Square
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Square/preview.png)
+### Sundried
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Sundried/preview.png)
+### Symfonic
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Symfonic/preview.png)
+### Tango Dark
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tango_Dark/preview.png)
+### Tango Light
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tango_Light/preview.png)
+### Teerb
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Teerb/preview.png)
+### Thayer Bright
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Thayer_Bright/preview.png)
+### The Hulk
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/The_Hulk/preview.png)
+### Tomorrow
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tomorrow/preview.png)
+### Tomorrow Night
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tomorrow_Night/preview.png)
+### Tomorrow Night Blue
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tomorrow_Night_Blue/preview.png)
+### Tomorrow Night Bright
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tomorrow_Night_Bright/preview.png)
+### Tomorrow Night Eighties
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Tomorrow_Night_Eighties/preview.png)
+### ToyChest
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/ToyChest/preview.png)
+### Treehouse
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Treehouse/preview.png)
+### Twilight
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Twilight/preview.png)
+### Ubuntu
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Ubuntu/preview.png)
+### Urple
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Urple/preview.png)
+### Vaughn
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Vaughn/preview.png)
+### VibrantInk
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/VibrantInk/preview.png)
+### WarmNeon
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/WarmNeon/preview.png)
+### Wez
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Wez/preview.png)
+### WildCherry
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/WildCherry/preview.png)
+### Wombat
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Wombat/preview.png)
+### Wryan
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Wryan/preview.png)
+### Zenburn
+![image](https://raw.githubusercontent.com/dexpota/kitty-themes-website/master/previews/Zenburn/preview.png)
+
+## Contributors
+
+Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
+
+<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
+<!-- prettier-ignore -->
+<table>
+ <tr>
+ <td align="center"><a href="http://www.scopatz.com"><b>Anthony Scopatz</b></a><br /><a href="https://github.com/dexpota/kitty-themes/commits?author=scopatz" title="Documentation">📖</a></td>
+ <td align="center"><a href="https://rckt.cc"><b>RCKT</b></a><br /><a href="#theme-orangecoloured" title="New theme added to the collection">😻</a></td>
+ <td align="center"><a href="https://github.com/varmanishant"><b>varmanishant</b></a><br /><a href="#theme-varmanishant" title="New theme added to the collection">😻</a></td>
+ <td align="center"><a href="https://github.com/rlerdorf"><b>Rasmus Lerdorf</b></a><br /><a href="https://github.com/dexpota/kitty-themes/issues?q=author%3Arlerdorf" title="Bug reports">🐛</a> <a href="#ideas-rlerdorf" title="Ideas, Planning, & Feedback">🤔</a></td>
+ <td align="center"><a href="https://github.com/Luflosi"><b>Luflosi</b></a><br /><a href="#fix-Luflosi" title="Fixed a theme">🛠️</a> <a href="#question-Luflosi" title="Answering Questions">💬</a> <a href="https://github.com/dexpota/kitty-themes/commits?author=Luflosi" title="Documentation">📖</a></td>
+ <td align="center"><a href="https://holyday.me"><b>Connor Holyday</b></a><br /><a href="#fix-connorholyday" title="Fixed a theme">🛠️</a></td>
+ <td align="center"><a href="https://github.com/BlueDrink9"><b>BlueDrink9</b></a><br /><a href="https://github.com/dexpota/kitty-themes/issues?q=author%3ABlueDrink9" title="Bug reports">🐛</a></td>
+ </tr>
+ <tr>
+ <td align="center"><a href="https://github.com/brujoand"><b>Anders Brujordet</b></a><br /><a href="#theme-brujoand" title="New theme added to the collection">😻</a></td>
+ <td align="center"><a href="http://www.hackouts.com"><b>Rajesh Rajendran</b></a><br /><a href="#fix-rjshrjndrn" title="Fixed a theme">🛠️</a></td>
+ </tr>
+</table>
+
+<!-- ALL-CONTRIBUTORS-LIST:END -->
+
+This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
diff --git a/kitty/kitty-themes/themes/3024_Day.conf b/kitty/kitty-themes/themes/3024_Day.conf
new file mode 100644
index 000000000..747996a0c
--- /dev/null
+++ b/kitty/kitty-themes/themes/3024_Day.conf
@@ -0,0 +1,21 @@
+background #f7f7f7
+foreground #494542
+cursor #494542
+selection_background #a4a1a1
+color0 #090200
+color8 #5b5754
+color1 #da2c20
+color9 #e8bacf
+color2 #00a152
+color10 #3a3332
+color3 #fcec02
+color11 #494542
+color4 #00a0e4
+color12 #7f7c7b
+color5 #a06994
+color13 #d6d4d3
+color6 #b5e4f4
+color14 #ccab53
+color7 #a4a1a1
+color15 #f7f7f7
+selection_foreground #f7f7f7
diff --git a/kitty/kitty-themes/themes/3024_Night.conf b/kitty/kitty-themes/themes/3024_Night.conf
new file mode 100644
index 000000000..25438194a
--- /dev/null
+++ b/kitty/kitty-themes/themes/3024_Night.conf
@@ -0,0 +1,21 @@
+background #090200
+foreground #a4a1a1
+cursor #a4a1a1
+selection_background #494542
+color0 #090200
+color8 #5b5754
+color1 #da2c20
+color9 #e8bacf
+color2 #00a152
+color10 #3a3332
+color3 #fcec02
+color11 #494542
+color4 #00a0e4
+color12 #7f7c7b
+color5 #a06994
+color13 #d6d4d3
+color6 #b5e4f4
+color14 #ccab53
+color7 #a4a1a1
+color15 #f7f7f7
+selection_foreground #090200
diff --git a/kitty/kitty-themes/themes/AdventureTime.conf b/kitty/kitty-themes/themes/AdventureTime.conf
new file mode 100644
index 000000000..e523a1aaa
--- /dev/null
+++ b/kitty/kitty-themes/themes/AdventureTime.conf
@@ -0,0 +1,21 @@
+background #1e1c44
+foreground #f8dbc0
+cursor #eebf37
+selection_background #6f6a4e
+color0 #050404
+color8 #4e7bbf
+color1 #bc0013
+color9 #fc5e59
+color2 #49b117
+color10 #9dff6e
+color3 #e6741d
+color11 #efc11a
+color4 #0f49c6
+color12 #1896c6
+color5 #665992
+color13 #9a5952
+color6 #6fa497
+color14 #c8f9f3
+color7 #f8dbc0
+color15 #f5f4fb
+selection_foreground #1e1c44
diff --git a/kitty/kitty-themes/themes/Afterglow.conf b/kitty/kitty-themes/themes/Afterglow.conf
new file mode 100644
index 000000000..2df3efd46
--- /dev/null
+++ b/kitty/kitty-themes/themes/Afterglow.conf
@@ -0,0 +1,21 @@
+background #202020
+foreground #d0d0d0
+cursor #d0d0d0
+selection_background #303030
+color0 #151515
+color8 #505050
+color1 #ac4142
+color9 #ac4142
+color2 #7e8d50
+color10 #7e8d50
+color3 #e5b566
+color11 #e5b566
+color4 #6c99ba
+color12 #6c99ba
+color5 #9e4e85
+color13 #9e4e85
+color6 #7dd5cf
+color14 #7dd5cf
+color7 #d0d0d0
+color15 #f5f5f5
+selection_foreground #202020
diff --git a/kitty/kitty-themes/themes/AlienBlood.conf b/kitty/kitty-themes/themes/AlienBlood.conf
new file mode 100644
index 000000000..453ea8044
--- /dev/null
+++ b/kitty/kitty-themes/themes/AlienBlood.conf
@@ -0,0 +1,21 @@
+background #0f160f
+foreground #637d75
+cursor #73f990
+selection_background #1d4025
+color0 #112615
+color8 #3c4711
+color1 #7f2b26
+color9 #df8008
+color2 #2f7e25
+color10 #18e000
+color3 #707f23
+color11 #bde000
+color4 #2f697f
+color12 #00a9df
+color5 #47577e
+color13 #0058df
+color6 #317f76
+color14 #00dfc3
+color7 #647d75
+color15 #73f990
+selection_foreground #0f160f
diff --git a/kitty/kitty-themes/themes/Alucard.conf b/kitty/kitty-themes/themes/Alucard.conf
new file mode 100644
index 000000000..43665fe56
--- /dev/null
+++ b/kitty/kitty-themes/themes/Alucard.conf
@@ -0,0 +1,21 @@
+background #222330
+foreground #cef3ff
+cursor #ffffff
+selection_background #44475a
+color0 #000000
+color8 #545454
+color1 #ff5555
+color9 #ff5454
+color2 #fa0074
+color10 #50fa7b
+color3 #7f0a1f
+color11 #f0fa8b
+color4 #3282ff
+color12 #1200f8
+color5 #1b3cff
+color13 #ff78c5
+color6 #0037fc
+color14 #8ae9fc
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #222330
diff --git a/kitty/kitty-themes/themes/Apprentice.conf b/kitty/kitty-themes/themes/Apprentice.conf
new file mode 100644
index 000000000..c8c05834d
--- /dev/null
+++ b/kitty/kitty-themes/themes/Apprentice.conf
@@ -0,0 +1,26 @@
+# Apprentice by Romain Lafourcade, https://github.com/romainl
+# This work is licensed under the terms of the MIT license.
+# For a copy, see https://opensource.org/licenses/MIT.
+
+cursor #c7c7c7
+cursor_text_color #feffff
+selection_foreground #3e3e3e
+selection_background #c1ddff
+foreground #c8c8c8
+background #323232
+color0 #252525
+color8 #555555
+color1 #be7472
+color9 #ff9900
+color2 #709772
+color10 #97bb98
+color3 #989772
+color11 #fefdbc
+color4 #7199bc
+color12 #9fbdde
+color5 #727399
+color13 #989abc
+color6 #719899
+color14 #6fbbbc
+color7 #7f7f7f
+color15 #feffff
diff --git a/kitty/kitty-themes/themes/Argonaut.conf b/kitty/kitty-themes/themes/Argonaut.conf
new file mode 100644
index 000000000..058186eb5
--- /dev/null
+++ b/kitty/kitty-themes/themes/Argonaut.conf
@@ -0,0 +1,21 @@
+background #0d0f18
+foreground #fffaf3
+cursor #ff0017
+selection_background #002a3a
+color0 #222222
+color8 #444444
+color1 #ff000f
+color9 #ff273f
+color2 #8ce00a
+color10 #abe05a
+color3 #ffb900
+color11 #ffd141
+color4 #008df8
+color12 #0092ff
+color5 #6c43a5
+color13 #9a5feb
+color6 #00d7eb
+color14 #67ffef
+color7 #ffffff
+color15 #ffffff
+selection_foreground #0d0f18
diff --git a/kitty/kitty-themes/themes/Arthur.conf b/kitty/kitty-themes/themes/Arthur.conf
new file mode 100644
index 000000000..d3fb52021
--- /dev/null
+++ b/kitty/kitty-themes/themes/Arthur.conf
@@ -0,0 +1,21 @@
+background #1c1c1c
+foreground #ddeedd
+cursor #e2bbef
+selection_background #4d4d4d
+color0 #3d352a
+color8 #554444
+color1 #cd5c5c
+color9 #cc5533
+color2 #86af80
+color10 #88aa22
+color3 #e8ae5b
+color11 #ffa75d
+color4 #6495ed
+color12 #87ceeb
+color5 #deb887
+color13 #996600
+color6 #b0c4de
+color14 #b0c4de
+color7 #bbaa99
+color15 #ddccbb
+selection_foreground #1c1c1c
diff --git a/kitty/kitty-themes/themes/AtelierSulphurpool.conf b/kitty/kitty-themes/themes/AtelierSulphurpool.conf
new file mode 100644
index 000000000..05674b0f0
--- /dev/null
+++ b/kitty/kitty-themes/themes/AtelierSulphurpool.conf
@@ -0,0 +1,21 @@
+background #202745
+foreground #969cb3
+cursor #969cb3
+selection_background #5e6686
+color0 #202745
+color8 #6a7394
+color1 #c84821
+color9 #c76a28
+color2 #ab9639
+color10 #283256
+color3 #c08a2f
+color11 #5e6686
+color4 #3d8ed0
+color12 #898ea3
+color5 #6678cc
+color13 #dee1f0
+color6 #21a1c8
+color14 #9c6279
+color7 #969cb3
+color15 #f4f7ff
+selection_foreground #202745
diff --git a/kitty/kitty-themes/themes/Atom.conf b/kitty/kitty-themes/themes/Atom.conf
new file mode 100644
index 000000000..091c683b6
--- /dev/null
+++ b/kitty/kitty-themes/themes/Atom.conf
@@ -0,0 +1,21 @@
+background #161718
+foreground #c4c8c5
+cursor #d0d0d0
+selection_background #444444
+color0 #000000
+color8 #000000
+color1 #fc5ef0
+color9 #fc5ef0
+color2 #86c38a
+color10 #94f936
+color3 #ffd6b1
+color11 #f5ffa7
+color4 #85befd
+color12 #95cbfe
+color5 #b9b5fc
+color13 #b9b5fc
+color6 #85befd
+color14 #85befd
+color7 #dfdfdf
+color15 #dfdfdf
+selection_foreground #161718
diff --git a/kitty/kitty-themes/themes/AtomOneLight.conf b/kitty/kitty-themes/themes/AtomOneLight.conf
new file mode 100644
index 000000000..056ef3b70
--- /dev/null
+++ b/kitty/kitty-themes/themes/AtomOneLight.conf
@@ -0,0 +1,21 @@
+background #f8f8f8
+foreground #2a2b33
+cursor #bbbbbb
+selection_background #ececec
+color0 #000000
+color8 #000000
+color1 #de3d35
+color9 #de3d35
+color2 #3e953a
+color10 #3e953a
+color3 #d2b67b
+color11 #d2b67b
+color4 #2f5af3
+color12 #2f5af3
+color5 #950095
+color13 #a00095
+color6 #3e953a
+color14 #3e953a
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #f8f8f8
diff --git a/kitty/kitty-themes/themes/Batman.conf b/kitty/kitty-themes/themes/Batman.conf
new file mode 100644
index 000000000..aef20e89d
--- /dev/null
+++ b/kitty/kitty-themes/themes/Batman.conf
@@ -0,0 +1,21 @@
+background #1b1d1e
+foreground #6e6e6e
+cursor #fcee0b
+selection_background #4d4f4c
+color0 #1b1d1e
+color8 #505354
+color1 #e6db43
+color9 #fff68d
+color2 #c8be46
+color10 #fff27c
+color3 #f3fd21
+color11 #feed6c
+color4 #737074
+color12 #909495
+color5 #737271
+color13 #9a999d
+color6 #615f5e
+color14 #a2a2a5
+color7 #c5c5be
+color15 #dadad5
+selection_foreground #1b1d1e
diff --git a/kitty/kitty-themes/themes/Belafonte_Day.conf b/kitty/kitty-themes/themes/Belafonte_Day.conf
new file mode 100644
index 000000000..56a8796a2
--- /dev/null
+++ b/kitty/kitty-themes/themes/Belafonte_Day.conf
@@ -0,0 +1,21 @@
+background #d4ccb9
+foreground #45363b
+cursor #45363b
+selection_background #958b83
+color0 #20111a
+color8 #5e5252
+color1 #bd100d
+color9 #bd100d
+color2 #858062
+color10 #858062
+color3 #e9a448
+color11 #e9a448
+color4 #416978
+color12 #416978
+color5 #96522b
+color13 #96522b
+color6 #98999c
+color14 #98999c
+color7 #958b83
+color15 #d4ccb9
+selection_foreground #d4ccb9
diff --git a/kitty/kitty-themes/themes/Belafonte_Night.conf b/kitty/kitty-themes/themes/Belafonte_Night.conf
new file mode 100644
index 000000000..fc51e9c36
--- /dev/null
+++ b/kitty/kitty-themes/themes/Belafonte_Night.conf
@@ -0,0 +1,21 @@
+background #20111a
+foreground #958b83
+cursor #958b83
+selection_background #45363b
+color0 #20111a
+color8 #5e5252
+color1 #bd100d
+color9 #bd100d
+color2 #858062
+color10 #858062
+color3 #e9a448
+color11 #e9a448
+color4 #416978
+color12 #416978
+color5 #96522b
+color13 #96522b
+color6 #98999c
+color14 #98999c
+color7 #958b83
+color15 #d4ccb9
+selection_foreground #20111a
diff --git a/kitty/kitty-themes/themes/BirdsOfParadise.conf b/kitty/kitty-themes/themes/BirdsOfParadise.conf
new file mode 100644
index 000000000..df38e8040
--- /dev/null
+++ b/kitty/kitty-themes/themes/BirdsOfParadise.conf
@@ -0,0 +1,21 @@
+background #2a1e1d
+foreground #dfdab7
+cursor #573d25
+selection_background #563c27
+color0 #573d25
+color8 #9a6b49
+color1 #be2d26
+color9 #e84526
+color2 #6ba08a
+color10 #94d7ba
+color3 #e99c29
+color11 #d0d04f
+color4 #5a86ac
+color12 #b8d3ed
+color5 #ab80a6
+color13 #d09dca
+color6 #74a5ac
+color14 #92ced6
+color7 #dfdab7
+color15 #fff9d4
+selection_foreground #2a1e1d
diff --git a/kitty/kitty-themes/themes/Blazer.conf b/kitty/kitty-themes/themes/Blazer.conf
new file mode 100644
index 000000000..f1dd601f4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Blazer.conf
@@ -0,0 +1,21 @@
+background #0d1925
+foreground #d9e5f1
+cursor #d9e5f1
+color0 #000000
+color8 #252525
+color1 #b87979
+color9 #dabdbd
+color2 #79b879
+color10 #bddabd
+color3 #b8b879
+color11 #dadabd
+color4 #7979b8
+color12 #bdbdda
+color5 #b879b8
+color13 #dabdda
+color6 #79b8b8
+color14 #bddada
+color7 #d9d9d9
+color15 #ffffff
+selection_foreground #0d1925
+selection_background #d9e6f2
diff --git a/kitty/kitty-themes/themes/Borland.conf b/kitty/kitty-themes/themes/Borland.conf
new file mode 100644
index 000000000..c27cc8306
--- /dev/null
+++ b/kitty/kitty-themes/themes/Borland.conf
@@ -0,0 +1,21 @@
+background #0000a3
+foreground #ffff4d
+cursor #ffa460
+selection_background #a3a3a3
+color0 #4e4e4e
+color8 #7c7c7c
+color1 #ff6b60
+color9 #ffb6b0
+color2 #a7ff60
+color10 #ceffab
+color3 #ffffb6
+color11 #ffffcb
+color4 #96cafd
+color12 #b5dcfe
+color5 #ff73fd
+color13 #ff9cfe
+color6 #c6c4fd
+color14 #dfdffe
+color7 #eeeeee
+color15 #ffffff
+selection_foreground #0000a3
diff --git a/kitty/kitty-themes/themes/Bright_Lights.conf b/kitty/kitty-themes/themes/Bright_Lights.conf
new file mode 100644
index 000000000..9b365f4b9
--- /dev/null
+++ b/kitty/kitty-themes/themes/Bright_Lights.conf
@@ -0,0 +1,21 @@
+background #191919
+foreground #b2c8d6
+cursor #f34a00
+selection_background #b2c8d6
+color0 #191919
+color8 #191919
+color1 #ff355b
+color9 #ff355b
+color2 #b6e875
+color10 #b6e875
+color3 #ffc150
+color11 #ffc150
+color4 #75d3ff
+color12 #75d4ff
+color5 #b975e6
+color13 #b975e6
+color6 #6cbeb5
+color14 #6cbeb5
+color7 #c1c8d6
+color15 #c1c8d6
+selection_foreground #191919
diff --git a/kitty/kitty-themes/themes/Broadcast.conf b/kitty/kitty-themes/themes/Broadcast.conf
new file mode 100644
index 000000000..784494232
--- /dev/null
+++ b/kitty/kitty-themes/themes/Broadcast.conf
@@ -0,0 +1,21 @@
+background #2b2b2b
+foreground #e5e1db
+cursor #ffffff
+selection_background #5a637e
+color0 #000000
+color8 #323232
+color1 #da4839
+color9 #ff7b6a
+color2 #509f50
+color10 #83d082
+color3 #ffd249
+color11 #ffff7b
+color4 #6d9cbd
+color12 #9fcef0
+color5 #cfcfff
+color13 #ffffff
+color6 #6d9cbd
+color14 #a0cef0
+color7 #ffffff
+color15 #ffffff
+selection_foreground #2b2b2b
diff --git a/kitty/kitty-themes/themes/Brogrammer.conf b/kitty/kitty-themes/themes/Brogrammer.conf
new file mode 100644
index 000000000..41cc37b7a
--- /dev/null
+++ b/kitty/kitty-themes/themes/Brogrammer.conf
@@ -0,0 +1,21 @@
+background #131313
+foreground #d6dae4
+cursor #b9b9b9
+selection_background #1f1f1f
+color0 #1f1f1f
+color8 #d6dae4
+color1 #f71118
+color9 #de342e
+color2 #2cc55d
+color10 #1dd260
+color3 #ecb90f
+color11 #f2bd09
+color4 #2a84d2
+color12 #0f80d5
+color5 #4e59b7
+color13 #524fb9
+color6 #0f80d5
+color14 #0f7cda
+color7 #d6dae4
+color15 #ffffff
+selection_foreground #131313
diff --git a/kitty/kitty-themes/themes/C64.conf b/kitty/kitty-themes/themes/C64.conf
new file mode 100644
index 000000000..70978d566
--- /dev/null
+++ b/kitty/kitty-themes/themes/C64.conf
@@ -0,0 +1,21 @@
+background #40318d
+foreground #7869c4
+cursor #7869c4
+selection_background #7869c4
+color0 #090300
+color8 #000000
+color1 #883932
+color9 #883932
+color2 #55a049
+color10 #55a049
+color3 #bfce72
+color11 #bfce72
+color4 #40318d
+color12 #40318d
+color5 #8b3f96
+color13 #8a3e95
+color6 #67b6bd
+color14 #67b6bd
+color7 #ffffff
+color15 #f7f7f7
+selection_foreground #40318d
diff --git a/kitty/kitty-themes/themes/CLRS.conf b/kitty/kitty-themes/themes/CLRS.conf
new file mode 100644
index 000000000..ddcb32409
--- /dev/null
+++ b/kitty/kitty-themes/themes/CLRS.conf
@@ -0,0 +1,21 @@
+background #ffffff
+foreground #262626
+cursor #6fd2fc
+selection_background #6fd2fc
+color0 #000000
+color8 #545753
+color1 #f72729
+color9 #fb0416
+color2 #32895c
+color10 #2cc631
+color3 #f96f1c
+color11 #fcd627
+color4 #125ccf
+color12 #156ffe
+color5 #9f00bc
+color13 #e800b0
+color6 #32c2c0
+color14 #39d5ce
+color7 #b2b2b2
+color15 #ededec
+selection_foreground #ffffff
diff --git a/kitty/kitty-themes/themes/Chalk.conf b/kitty/kitty-themes/themes/Chalk.conf
new file mode 100644
index 000000000..70516985b
--- /dev/null
+++ b/kitty/kitty-themes/themes/Chalk.conf
@@ -0,0 +1,21 @@
+background #2b2c2e
+foreground #d2d8d9
+cursor #708183
+selection_background #e3e8ed
+color0 #7c8a8f
+color8 #888888
+color1 #b23a51
+color9 #f24840
+color2 #789a69
+color10 #80c46f
+color3 #b9ab4a
+color11 #ffeb62
+color4 #2a7fac
+color12 #4095ff
+color5 #bc4f5a
+color13 #fb5175
+color6 #44a799
+color14 #52ccbd
+color7 #d2d8d9
+color15 #d2d8d9
+selection_foreground #2b2c2e
diff --git a/kitty/kitty-themes/themes/Chalkboard.conf b/kitty/kitty-themes/themes/Chalkboard.conf
new file mode 100644
index 000000000..f0b7350b5
--- /dev/null
+++ b/kitty/kitty-themes/themes/Chalkboard.conf
@@ -0,0 +1,21 @@
+background #29262f
+foreground #d9e6f2
+cursor #d9e6f2
+selection_background #073642
+color0 #000000
+color8 #323232
+color1 #c37372
+color9 #dbaaaa
+color2 #72c373
+color10 #aadbaa
+color3 #c2c372
+color11 #dadbaa
+color4 #7372c3
+color12 #aaaadb
+color5 #c372c2
+color13 #dbaada
+color6 #72c2c3
+color14 #aadadb
+color7 #d9d9d9
+color15 #ffffff
+selection_foreground #29262f
diff --git a/kitty/kitty-themes/themes/Ciapre.conf b/kitty/kitty-themes/themes/Ciapre.conf
new file mode 100644
index 000000000..2b496fb17
--- /dev/null
+++ b/kitty/kitty-themes/themes/Ciapre.conf
@@ -0,0 +1,21 @@
+background #181c27
+foreground #ada37a
+cursor #91805a
+selection_background #172539
+color0 #181818
+color8 #555555
+color1 #800009
+color9 #ab3834
+color2 #48513b
+color10 #a6a65d
+color3 #cc8a3e
+color11 #dcde7b
+color4 #566d8c
+color12 #2f97c6
+color5 #724c7c
+color13 #d33060
+color6 #5b4f4a
+color14 #f3dab1
+color7 #ada37e
+color15 #f3f3f3
+selection_foreground #181c27
diff --git a/kitty/kitty-themes/themes/Cobalt2.conf b/kitty/kitty-themes/themes/Cobalt2.conf
new file mode 100644
index 000000000..3ffcbe2c7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Cobalt2.conf
@@ -0,0 +1,21 @@
+background #122637
+foreground #ffffff
+cursor #f0cb09
+selection_background #18344f
+color0 #000000
+color8 #545454
+color1 #ff0000
+color9 #f40d17
+color2 #37dd21
+color10 #3bcf1d
+color3 #fee409
+color11 #ecc809
+color4 #1460d2
+color12 #5555ff
+color5 #ff005d
+color13 #ff55ff
+color6 #00bbbb
+color14 #6ae3f9
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #122637
diff --git a/kitty/kitty-themes/themes/Cobalt_Neon.conf b/kitty/kitty-themes/themes/Cobalt_Neon.conf
new file mode 100644
index 000000000..02a66e5f5
--- /dev/null
+++ b/kitty/kitty-themes/themes/Cobalt_Neon.conf
@@ -0,0 +1,21 @@
+background #142838
+foreground #8ff586
+cursor #c4206f
+selection_background #084fb0
+color0 #142630
+color8 #fff688
+color1 #ff2320
+color9 #d4312e
+color2 #3aa5ff
+color10 #8ff586
+color3 #e9e75c
+color11 #e9f06d
+color4 #8ff586
+color12 #3c7dd2
+color5 #781aa0
+color13 #8230a7
+color6 #8ff586
+color14 #6cbc67
+color7 #ba45b1
+color15 #8ff586
+selection_foreground #142838
diff --git a/kitty/kitty-themes/themes/CrayonPonyFish.conf b/kitty/kitty-themes/themes/CrayonPonyFish.conf
new file mode 100644
index 000000000..068fab33b
--- /dev/null
+++ b/kitty/kitty-themes/themes/CrayonPonyFish.conf
@@ -0,0 +1,21 @@
+background #140607
+foreground #685259
+cursor #685259
+selection_background #2a1a1c
+color0 #2a1a1c
+color8 #3c2a2e
+color1 #90002a
+color9 #c5245c
+color2 #579523
+color10 #8dff56
+color3 #aa301b
+color11 #c7371d
+color4 #8b87af
+color12 #cfc9ff
+color5 #682e50
+color13 #fb6cb9
+color6 #e8a766
+color14 #ffceae
+color7 #685259
+color15 #af949d
+selection_foreground #140607
diff --git a/kitty/kitty-themes/themes/Dark_Pastel.conf b/kitty/kitty-themes/themes/Dark_Pastel.conf
new file mode 100644
index 000000000..15083f718
--- /dev/null
+++ b/kitty/kitty-themes/themes/Dark_Pastel.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #ffffff
+cursor #bbbbbb
+selection_background #b5d5ff
+color0 #000000
+color8 #545454
+color1 #ff5555
+color9 #ff5555
+color2 #55ff55
+color10 #55ff55
+color3 #ffff55
+color11 #ffff55
+color4 #5555ff
+color12 #5555ff
+color5 #ff55ff
+color13 #ff55ff
+color6 #55ffff
+color14 #55ffff
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Darkside.conf b/kitty/kitty-themes/themes/Darkside.conf
new file mode 100644
index 000000000..10238d106
--- /dev/null
+++ b/kitty/kitty-themes/themes/Darkside.conf
@@ -0,0 +1,21 @@
+background #212324
+foreground #b9b9b9
+cursor #bbbbbb
+selection_background #2f3333
+color0 #000000
+color8 #000000
+color1 #e8331c
+color9 #df5a4f
+color2 #68c156
+color10 #76b768
+color3 #f1d32b
+color11 #eed64a
+color4 #1c98e8
+color12 #387bd2
+color5 #8e69c8
+color13 #957bbd
+color6 #1c98e8
+color14 #3d96e2
+color7 #b9b9b9
+color15 #b9b9b9
+selection_foreground #212324
diff --git a/kitty/kitty-themes/themes/Desert.conf b/kitty/kitty-themes/themes/Desert.conf
new file mode 100644
index 000000000..5491a9739
--- /dev/null
+++ b/kitty/kitty-themes/themes/Desert.conf
@@ -0,0 +1,21 @@
+background #333333
+foreground #ffffff
+cursor #00ff00
+selection_background #b5d5ff
+color0 #4d4d4d
+color8 #545454
+color1 #ff2b2b
+color9 #ff5555
+color2 #98fb98
+color10 #55ff55
+color3 #f0e68c
+color11 #ffff55
+color4 #cd853f
+color12 #87ceff
+color5 #ffdead
+color13 #ff55ff
+color6 #ffa0a0
+color14 #ffd700
+color7 #f5deb3
+color15 #ffffff
+selection_foreground #333333
diff --git a/kitty/kitty-themes/themes/DimmedMonokai.conf b/kitty/kitty-themes/themes/DimmedMonokai.conf
new file mode 100644
index 000000000..99d7a83f1
--- /dev/null
+++ b/kitty/kitty-themes/themes/DimmedMonokai.conf
@@ -0,0 +1,21 @@
+background #1e1e1e
+foreground #b8bcb9
+cursor #f83d19
+selection_background #292c31
+color0 #3a3c43
+color8 #888987
+color1 #be3e48
+color9 #fb001e
+color2 #869a3a
+color10 #0e712e
+color3 #c4a535
+color11 #c37033
+color4 #4e76a1
+color12 #176ce3
+color5 #855b8d
+color13 #fb0067
+color6 #568ea3
+color14 #2d6f6c
+color7 #b8bcb9
+color15 #fcffb8
+selection_foreground #1e1e1e
diff --git a/kitty/kitty-themes/themes/DotGov.conf b/kitty/kitty-themes/themes/DotGov.conf
new file mode 100644
index 000000000..345cef9f6
--- /dev/null
+++ b/kitty/kitty-themes/themes/DotGov.conf
@@ -0,0 +1,21 @@
+background #252b35
+foreground #eaeaea
+cursor #d9002f
+selection_background #194080
+color0 #181818
+color8 #181818
+color1 #bf081d
+color9 #bf081d
+color2 #3d9751
+color10 #3d9751
+color3 #f6bb33
+color11 #f6bb33
+color4 #16b1df
+color12 #16b1df
+color5 #772fb0
+color13 #772fb0
+color6 #8bd1ed
+color14 #8bd1ed
+color7 #ffffff
+color15 #ffffff
+selection_foreground #252b35
diff --git a/kitty/kitty-themes/themes/Dracula.conf b/kitty/kitty-themes/themes/Dracula.conf
new file mode 100644
index 000000000..9cf0ed671
--- /dev/null
+++ b/kitty/kitty-themes/themes/Dracula.conf
@@ -0,0 +1,21 @@
+background #1e1f28
+foreground #f8f8f2
+cursor #bbbbbb
+selection_background #44475a
+color0 #000000
+color8 #545454
+color1 #ff5555
+color9 #ff5454
+color2 #50fa7b
+color10 #50fa7b
+color3 #f0fa8b
+color11 #f0fa8b
+color4 #bd92f8
+color12 #bd92f8
+color5 #ff78c5
+color13 #ff78c5
+color6 #8ae9fc
+color14 #8ae9fc
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #1e1f28
diff --git a/kitty/kitty-themes/themes/Dumbledore.conf b/kitty/kitty-themes/themes/Dumbledore.conf
new file mode 100644
index 000000000..c1ef0322c
--- /dev/null
+++ b/kitty/kitty-themes/themes/Dumbledore.conf
@@ -0,0 +1,21 @@
+background #422553
+foreground #c4c8c5
+cursor #c4c8c5
+selection_background #008aff
+color0 #2b283d
+color8 #413e53
+color1 #ae0000
+color9 #d3a624
+color2 #3e7c54
+color10 #aaaaaa
+color3 #f0c75e
+color11 #716254
+color4 #415baf
+color12 #946a2c
+color5 #9445ae
+color13 #b294ba
+color6 #008aff
+color14 #25de50
+color7 #850000
+color15 #c9c9c9
+selection_foreground #422553
diff --git a/kitty/kitty-themes/themes/Duotone_Dark.conf b/kitty/kitty-themes/themes/Duotone_Dark.conf
new file mode 100644
index 000000000..486760447
--- /dev/null
+++ b/kitty/kitty-themes/themes/Duotone_Dark.conf
@@ -0,0 +1,21 @@
+background #1f1c27
+foreground #b6a0ff
+cursor #ff9738
+selection_background #353146
+color0 #1f1c27
+color8 #353146
+color1 #d8393d
+color9 #d8393d
+color2 #2dcc72
+color10 #2dcc72
+color3 #d8b76e
+color11 #d8b76e
+color4 #ffc183
+color12 #ffc183
+color5 #dd8d40
+color13 #dd8d40
+color6 #2388ff
+color14 #2388ff
+color7 #b6a0ff
+color15 #e9e4ff
+selection_foreground #1f1c27
diff --git a/kitty/kitty-themes/themes/ENCOM.conf b/kitty/kitty-themes/themes/ENCOM.conf
new file mode 100644
index 000000000..7afc7aeb5
--- /dev/null
+++ b/kitty/kitty-themes/themes/ENCOM.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #00a595
+cursor #bbbbbb
+selection_background #00a48c
+color0 #000000
+color8 #545454
+color1 #9f0000
+color9 #ff0000
+color2 #008b00
+color10 #00ee00
+color3 #ffcf00
+color11 #ffff00
+color4 #0081ff
+color12 #0000ff
+color5 #bc00ca
+color13 #ff00ff
+color6 #008b8b
+color14 #00cdcd
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Earthsong.conf b/kitty/kitty-themes/themes/Earthsong.conf
new file mode 100644
index 000000000..50f0da89a
--- /dev/null
+++ b/kitty/kitty-themes/themes/Earthsong.conf
@@ -0,0 +1,21 @@
+background #282420
+foreground #e5c6a8
+cursor #f6f6ec
+selection_background #111417
+color0 #111417
+color8 #665e54
+color1 #c84134
+color9 #ff6459
+color2 #84c44b
+color10 #97e035
+color3 #f4ae2e
+color11 #dfd561
+color4 #1397b9
+color12 #5ed9ff
+color5 #d0623c
+color13 #ff9168
+color6 #4f9452
+color14 #83ef88
+color7 #e5c5a9
+color15 #f6f6ec
+selection_foreground #282420
diff --git a/kitty/kitty-themes/themes/Elemental.conf b/kitty/kitty-themes/themes/Elemental.conf
new file mode 100644
index 000000000..e24a3d3b5
--- /dev/null
+++ b/kitty/kitty-themes/themes/Elemental.conf
@@ -0,0 +1,21 @@
+background #21211c
+foreground #807973
+cursor #facb7f
+selection_background #403729
+color0 #3c3b30
+color8 #545444
+color1 #97280f
+color9 #df502a
+color2 #479942
+color10 #60e06f
+color3 #7f7110
+color11 #d69827
+color4 #497f7d
+color12 #78d8d8
+color5 #7e4e2e
+color13 #cd7c53
+color6 #387f58
+color14 #58d598
+color7 #807974
+color15 #fff1e8
+selection_foreground #21211c
diff --git a/kitty/kitty-themes/themes/Espresso.conf b/kitty/kitty-themes/themes/Espresso.conf
new file mode 100644
index 000000000..373c1787f
--- /dev/null
+++ b/kitty/kitty-themes/themes/Espresso.conf
@@ -0,0 +1,27 @@
+# Theme ported from the Mac Terminal application.
+
+background #323232
+foreground #ffffff
+cursor #d6d6d6
+selection_background #5b5b5b
+selection_foreground #323232
+color0 #353535
+color8 #535353
+color1 #d25252
+color9 #f00c0c
+color2 #a4c161
+color10 #c1df74
+color3 #ffc56d
+color11 #e1e48a
+color4 #6c99ba
+color12 #8ab6d9
+color5 #d096d9
+color13 #efb5f7
+color6 #bdd6ff
+color14 #dbf4ff
+color7 #ededec
+color15 #ffffff
+active_tab_foreground #ffffff
+active_tab_background #535353
+inactive_tab_foreground #ffffff
+inactive_tab_background #353535
diff --git a/kitty/kitty-themes/themes/Espresso_Libre.conf b/kitty/kitty-themes/themes/Espresso_Libre.conf
new file mode 100644
index 000000000..fa042b2a9
--- /dev/null
+++ b/kitty/kitty-themes/themes/Espresso_Libre.conf
@@ -0,0 +1,21 @@
+background #2a211c
+foreground #b8a898
+cursor #ffffff
+selection_background #c3dcff
+color0 #000000
+color8 #545753
+color1 #cc0000
+color9 #ef2828
+color2 #1a921c
+color10 #9aff87
+color3 #efe43a
+color11 #fffa5c
+color4 #0066ff
+color12 #43a8ed
+color5 #c5656b
+color13 #ff8089
+color6 #05989a
+color14 #34e2e2
+color7 #d3d7cf
+color15 #ededec
+selection_foreground #2a211c
diff --git a/kitty/kitty-themes/themes/Fideloper.conf b/kitty/kitty-themes/themes/Fideloper.conf
new file mode 100644
index 000000000..7e099fc18
--- /dev/null
+++ b/kitty/kitty-themes/themes/Fideloper.conf
@@ -0,0 +1,21 @@
+background #282f32
+foreground #dad9df
+cursor #d35f5a
+selection_background #eeb7ab
+color0 #282f32
+color8 #092027
+color1 #ca1d2c
+color9 #d35f5a
+color2 #edb7ab
+color10 #d35f5a
+color3 #b7aa9a
+color11 #a86571
+color4 #2e78c1
+color12 #7c84c4
+color5 #c0226e
+color13 #5b5db2
+color6 #309185
+color14 #81908f
+color7 #e9e2cd
+color15 #fcf4de
+selection_foreground #282f32
diff --git a/kitty/kitty-themes/themes/FishTank.conf b/kitty/kitty-themes/themes/FishTank.conf
new file mode 100644
index 000000000..dce32a47e
--- /dev/null
+++ b/kitty/kitty-themes/themes/FishTank.conf
@@ -0,0 +1,21 @@
+background #222436
+foreground #eceffd
+cursor #fdcd5e
+selection_background #fcf6e8
+color0 #03063c
+color8 #6c5a30
+color1 #c60049
+color9 #d94a8a
+color2 #abf157
+color10 #daffa8
+color3 #fdcd5e
+color11 #fee6a8
+color4 #525fb8
+color12 #b1bdf9
+color5 #976f81
+color13 #fda4cc
+color6 #968662
+color14 #a4bc86
+color7 #eceffc
+color15 #f6ffec
+selection_foreground #222436
diff --git a/kitty/kitty-themes/themes/Flat.conf b/kitty/kitty-themes/themes/Flat.conf
new file mode 100644
index 000000000..036e563d7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Flat.conf
@@ -0,0 +1,21 @@
+background #002240
+foreground #2bc45d
+cursor #e5bd0c
+selection_background #782b9c
+color0 #212c3e
+color8 #202b3b
+color1 #a72320
+color9 #d3302e
+color2 #32a448
+color10 #2c9440
+color3 #e58d11
+color11 #e5bd0c
+color4 #3066ab
+color12 #3b7cd2
+color5 #7819a0
+color13 #822fa7
+color6 #2b9270
+color14 #35b286
+color7 #afb6b9
+color15 #e6ecec
+selection_foreground #002240
diff --git a/kitty/kitty-themes/themes/Flatland.conf b/kitty/kitty-themes/themes/Flatland.conf
new file mode 100644
index 000000000..637b72d37
--- /dev/null
+++ b/kitty/kitty-themes/themes/Flatland.conf
@@ -0,0 +1,21 @@
+background #1c1e20
+foreground #b8daee
+cursor #708183
+selection_background #2a2a24
+color0 #1c1d19
+color8 #1c1d19
+color1 #f18238
+color9 #d12a24
+color2 #9ed264
+color10 #a7d32c
+color3 #f3ef6d
+color11 #ff8948
+color4 #4f96be
+color12 #61b8d0
+color5 #695abb
+color13 #695abb
+color6 #d53864
+color14 #d53864
+color7 #fefffe
+color15 #fefffe
+selection_foreground #1c1e20
diff --git a/kitty/kitty-themes/themes/Floraverse.conf b/kitty/kitty-themes/themes/Floraverse.conf
new file mode 100644
index 000000000..6e6a06cb6
--- /dev/null
+++ b/kitty/kitty-themes/themes/Floraverse.conf
@@ -0,0 +1,21 @@
+background #0e0c15
+foreground #dbd0b9
+cursor #bbbbbb
+selection_background #f3e0b8
+color0 #08002e
+color8 #331d4c
+color1 #64002c
+color9 #cf2062
+color2 #5d731a
+color10 #b3ce58
+color3 #cd751c
+color11 #fac357
+color4 #1d6da1
+color12 #40a4cf
+color5 #b7077e
+color13 #f02aae
+color6 #42a38c
+color14 #62caa8
+color7 #f3e0b8
+color15 #fff5db
+selection_foreground #0e0c15
diff --git a/kitty/kitty-themes/themes/FrontEndDelight.conf b/kitty/kitty-themes/themes/FrontEndDelight.conf
new file mode 100644
index 000000000..ccbf0d457
--- /dev/null
+++ b/kitty/kitty-themes/themes/FrontEndDelight.conf
@@ -0,0 +1,21 @@
+background #1b1b1d
+foreground #acacac
+cursor #cccccc
+selection_background #e96153
+color0 #242426
+color8 #5eac6c
+color1 #f8501a
+color9 #f64319
+color2 #565746
+color10 #74eb4c
+color3 #f9761d
+color11 #fcc224
+color4 #2c70b7
+color12 #3393c9
+color5 #f02d4e
+color13 #e75e4e
+color6 #3ba0a5
+color14 #4ebce5
+color7 #acacac
+color15 #8b735a
+selection_foreground #1b1b1d
diff --git a/kitty/kitty-themes/themes/FunForrest.conf b/kitty/kitty-themes/themes/FunForrest.conf
new file mode 100644
index 000000000..df8f4eeff
--- /dev/null
+++ b/kitty/kitty-themes/themes/FunForrest.conf
@@ -0,0 +1,21 @@
+background #241200
+foreground #ddc165
+cursor #e5591c
+selection_background #e5591c
+color0 #000000
+color8 #7e6954
+color1 #d5252b
+color9 #e4591b
+color2 #909b00
+color10 #bfc659
+color3 #bd8a13
+color11 #ffca1b
+color4 #4698a2
+color12 #7cc9ce
+color5 #8c4231
+color13 #d16349
+color6 #d98112
+color14 #e6a96b
+color7 #ddc165
+color15 #ffe9a3
+selection_foreground #241200
diff --git a/kitty/kitty-themes/themes/Galaxy.conf b/kitty/kitty-themes/themes/Galaxy.conf
new file mode 100644
index 000000000..fab36a7cc
--- /dev/null
+++ b/kitty/kitty-themes/themes/Galaxy.conf
@@ -0,0 +1,21 @@
+background #1c2836
+foreground #ffffff
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #000000
+color8 #545454
+color1 #f9555f
+color9 #fa8b8e
+color2 #20af89
+color10 #34bb99
+color3 #fdf029
+color11 #ffff55
+color4 #589cf5
+color12 #589cf5
+color5 #934d95
+color13 #e75598
+color6 #1e9ee6
+color14 #3978bb
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #1c2836
diff --git a/kitty/kitty-themes/themes/Github.conf b/kitty/kitty-themes/themes/Github.conf
new file mode 100644
index 000000000..22122d731
--- /dev/null
+++ b/kitty/kitty-themes/themes/Github.conf
@@ -0,0 +1,21 @@
+background #f4f4f4
+foreground #3e3e3e
+cursor #3f3f3f
+selection_background #a9c1e2
+color0 #3e3e3e
+color8 #666666
+color1 #970b16
+color9 #de0000
+color2 #07962a
+color10 #87d5a2
+color3 #f7edc7
+color11 #f0cf06
+color4 #003e8a
+color12 #2e6cba
+color5 #e94691
+color13 #ffa29f
+color6 #89d1ec
+color14 #1cfafe
+color7 #ffffff
+color15 #ffffff
+selection_foreground #f4f4f4
diff --git a/kitty/kitty-themes/themes/Glacier.conf b/kitty/kitty-themes/themes/Glacier.conf
new file mode 100644
index 000000000..08de6979e
--- /dev/null
+++ b/kitty/kitty-themes/themes/Glacier.conf
@@ -0,0 +1,21 @@
+background #0c1115
+foreground #ffffff
+cursor #6c6c6c
+selection_background #bd2523
+color0 #2e343c
+color8 #404a55
+color1 #bd0f2f
+color9 #bd0f2f
+color2 #35a770
+color10 #49e998
+color3 #fb9435
+color11 #fddf6e
+color4 #1f5872
+color12 #2a8bc1
+color5 #bd2523
+color13 #ea4727
+color6 #778397
+color14 #a0b6d3
+color7 #ffffff
+color15 #ffffff
+selection_foreground #0c1115
diff --git a/kitty/kitty-themes/themes/GoaBase.conf b/kitty/kitty-themes/themes/GoaBase.conf
new file mode 100644
index 000000000..fcc67415d
--- /dev/null
+++ b/kitty/kitty-themes/themes/GoaBase.conf
@@ -0,0 +1,21 @@
+background #2f0033
+foreground #f6ed00
+cursor #1a6500
+selection_background #100a24
+color0 #880041
+color8 #411a6d
+color1 #f78000
+color9 #f800e1
+color2 #249000
+color10 #5743ff
+color3 #f40000
+color11 #ea00d7
+color4 #000482
+color12 #b90003
+color5 #f43bff
+color13 #9a5952
+color6 #3affff
+color14 #c8f9f3
+color7 #000000
+color15 #f5f4fb
+selection_foreground #2f0033
diff --git a/kitty/kitty-themes/themes/Grape.conf b/kitty/kitty-themes/themes/Grape.conf
new file mode 100644
index 000000000..38b8a18fb
--- /dev/null
+++ b/kitty/kitty-themes/themes/Grape.conf
@@ -0,0 +1,21 @@
+background #161423
+foreground #9e9ea0
+cursor #a188f7
+selection_background #483d70
+color0 #2d283e
+color8 #58506a
+color1 #ec2160
+color9 #f0719a
+color2 #1fa91b
+color10 #52a95d
+color3 #8ddc1f
+color11 #b2dc87
+color4 #487cf4
+color12 #a9bbeb
+color5 #8c35c8
+color13 #ac81c1
+color6 #3added
+color14 #9ce3ea
+color7 #9e9ea0
+color15 #a188f7
+selection_foreground #161423
diff --git a/kitty/kitty-themes/themes/Grass.conf b/kitty/kitty-themes/themes/Grass.conf
new file mode 100644
index 000000000..ef9c32174
--- /dev/null
+++ b/kitty/kitty-themes/themes/Grass.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #12773d
+foreground #fff0a4
+cursor #8b2800
+selection_background #b64825
+color0 #000000
+color8 #545454
+color1 #ba0000
+color9 #ba0000
+color2 #00ba00
+color10 #00ba00
+color3 #e6af00
+color11 #e6af00
+color4 #0000a3
+color12 #0000ba
+color5 #950062
+color13 #ff54ff
+color6 #00baba
+color14 #54ffff
+color7 #bababa
+color15 #ffffff
+selection_foreground #12773d
diff --git a/kitty/kitty-themes/themes/Hardcore.conf b/kitty/kitty-themes/themes/Hardcore.conf
new file mode 100644
index 000000000..9af78ea19
--- /dev/null
+++ b/kitty/kitty-themes/themes/Hardcore.conf
@@ -0,0 +1,21 @@
+background #121212
+foreground #a0a0a0
+cursor #bbbbbb
+selection_background #453a39
+color0 #1b1d1e
+color8 #505354
+color1 #f92672
+color9 #ff669d
+color2 #a6e22e
+color10 #beed5f
+color3 #fd971f
+color11 #e6db74
+color4 #66d9ef
+color12 #66d9ef
+color5 #9e6ffe
+color13 #9e6ffe
+color6 #5e7175
+color14 #a3babf
+color7 #ccccc6
+color15 #f8f8f2
+selection_foreground #121212
diff --git a/kitty/kitty-themes/themes/Harper.conf b/kitty/kitty-themes/themes/Harper.conf
new file mode 100644
index 000000000..2579aac7b
--- /dev/null
+++ b/kitty/kitty-themes/themes/Harper.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #a7a39c
+cursor #a7a39c
+selection_background #5a5753
+color0 #000000
+color8 #716d69
+color1 #f7b63e
+color9 #f7b63e
+color2 #7fb5e1
+color10 #7fb5e1
+color3 #d6da24
+color11 #d6da24
+color4 #489d48
+color12 #489d48
+color5 #b295c5
+color13 #b295c5
+color6 #f4bed6
+color14 #f4bed6
+color7 #a7a39c
+color15 #fefbe9
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Highway.conf b/kitty/kitty-themes/themes/Highway.conf
new file mode 100644
index 000000000..f0dfa4df3
--- /dev/null
+++ b/kitty/kitty-themes/themes/Highway.conf
@@ -0,0 +1,21 @@
+background #212224
+foreground #ededed
+cursor #dfd9b8
+selection_background #384563
+color0 #000000
+color8 #5c4f49
+color1 #cf0d17
+color9 #ef7d17
+color2 #128033
+color10 #b1d130
+color3 #ffca3d
+color11 #fff11f
+color4 #006ab3
+color12 #4fc2fd
+color5 #6a2674
+color13 #de0070
+color6 #384563
+color14 #5c4f49
+color7 #ededed
+color15 #fefffe
+selection_foreground #212224
diff --git a/kitty/kitty-themes/themes/Hipster_Green.conf b/kitty/kitty-themes/themes/Hipster_Green.conf
new file mode 100644
index 000000000..26adfe743
--- /dev/null
+++ b/kitty/kitty-themes/themes/Hipster_Green.conf
@@ -0,0 +1,21 @@
+background #0f0a05
+foreground #84c137
+cursor #23ff18
+selection_background #083905
+color0 #000000
+color8 #666666
+color1 #b6204a
+color9 #e50000
+color2 #00a600
+color10 #86a83e
+color3 #bebe00
+color11 #e5e500
+color4 #246db2
+color12 #0000ff
+color5 #b200b2
+color13 #e500e5
+color6 #00a6b2
+color14 #00e5e5
+color7 #bfbfbf
+color15 #e5e5e5
+selection_foreground #0f0a05
diff --git a/kitty/kitty-themes/themes/Homebrew.conf b/kitty/kitty-themes/themes/Homebrew.conf
new file mode 100644
index 000000000..d96bb7201
--- /dev/null
+++ b/kitty/kitty-themes/themes/Homebrew.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #000000
+foreground #00ff00
+cursor #23ff18
+selection_background #083905
+color0 #000000
+color8 #666666
+color1 #990000
+color9 #e50000
+color2 #00a600
+color10 #00d900
+color3 #999900
+color11 #e5e500
+color4 #0000b2
+color12 #0000ff
+color5 #b200b2
+color13 #e500e5
+color6 #00a6b2
+color14 #00e5e5
+color7 #bebebe
+color15 #e5e5e5
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Hurtado.conf b/kitty/kitty-themes/themes/Hurtado.conf
new file mode 100644
index 000000000..1ca0421e9
--- /dev/null
+++ b/kitty/kitty-themes/themes/Hurtado.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #dadbda
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #575757
+color8 #252525
+color1 #ff1b00
+color9 #d41c00
+color2 #a5df55
+color10 #a5df55
+color3 #fbe74a
+color11 #fbe749
+color4 #486387
+color12 #89bdff
+color5 #fc5ef0
+color13 #bf00c0
+color6 #85e9fe
+color14 #85e9fe
+color7 #cbcbcb
+color15 #dbdbdb
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Hybrid.conf b/kitty/kitty-themes/themes/Hybrid.conf
new file mode 100644
index 000000000..8f9dc50f9
--- /dev/null
+++ b/kitty/kitty-themes/themes/Hybrid.conf
@@ -0,0 +1,21 @@
+background #161718
+foreground #b7bcb9
+cursor #b7bcb9
+selection_background #1e1f22
+color0 #2a2e33
+color8 #1d1e21
+color1 #b74d50
+color9 #8c2d32
+color2 #b3be5a
+color10 #788331
+color3 #e3b55e
+color11 #e5894f
+color4 #6d90b0
+color12 #4b6b88
+color5 #a07eab
+color13 #6e4f79
+color6 #7fbeb3
+color14 #4d7b73
+color7 #b5b8b6
+color15 #5a6169
+selection_foreground #161718
diff --git a/kitty/kitty-themes/themes/IC_Green_PPL.conf b/kitty/kitty-themes/themes/IC_Green_PPL.conf
new file mode 100644
index 000000000..35587dd81
--- /dev/null
+++ b/kitty/kitty-themes/themes/IC_Green_PPL.conf
@@ -0,0 +1,21 @@
+background #3a3c3e
+foreground #d9eed2
+cursor #41ff58
+selection_background #2a9b34
+color0 #1e1e1e
+color8 #03260f
+color1 #fb0029
+color9 #a6ff3e
+color2 #329b24
+color10 #9fff6d
+color3 #649a25
+color11 #d1ff6d
+color4 #149b45
+color12 #72ffb5
+color5 #53b82b
+color13 #50ff3d
+color6 #2bb767
+color14 #22ff71
+color7 #dffeee
+color15 #daeed0
+selection_foreground #3a3c3e
diff --git a/kitty/kitty-themes/themes/IC_Orange_PPL.conf b/kitty/kitty-themes/themes/IC_Orange_PPL.conf
new file mode 100644
index 000000000..b8dead8af
--- /dev/null
+++ b/kitty/kitty-themes/themes/IC_Orange_PPL.conf
@@ -0,0 +1,21 @@
+background #262626
+foreground #ffcb83
+cursor #fb521c
+selection_background #c03f1f
+color0 #000000
+color8 #6a4e29
+color1 #c03900
+color9 #ff8b67
+color2 #a3a900
+color10 #f6ff3f
+color3 #caae00
+color11 #ffe36e
+color4 #bd6c00
+color12 #ffbd54
+color5 #fb5d00
+color13 #fc874f
+color6 #f79400
+color14 #c59752
+color7 #ffc88a
+color15 #f9f9fe
+selection_foreground #262626
diff --git a/kitty/kitty-themes/themes/IR_Black.conf b/kitty/kitty-themes/themes/IR_Black.conf
new file mode 100644
index 000000000..5b8709b1e
--- /dev/null
+++ b/kitty/kitty-themes/themes/IR_Black.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #f1f1f1
+cursor #7f7f7f
+selection_background #b4d5ff
+color0 #4f4f4f
+color8 #7b7b7b
+color1 #fa6c5f
+color9 #fcb6af
+color2 #a8fe60
+color10 #ceffab
+color3 #fffeb6
+color11 #fffecc
+color4 #96cafd
+color12 #b5dcfe
+color5 #fa72fc
+color13 #fb9bfe
+color6 #c6c4fd
+color14 #dfdffd
+color7 #eeedee
+color15 #fefffe
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Jackie_Brown.conf b/kitty/kitty-themes/themes/Jackie_Brown.conf
new file mode 100644
index 000000000..08a72e453
--- /dev/null
+++ b/kitty/kitty-themes/themes/Jackie_Brown.conf
@@ -0,0 +1,21 @@
+background #2c1c15
+foreground #ffcc2f
+cursor #23ff18
+selection_background #ae8c20
+color0 #2c1d16
+color8 #666666
+color1 #ef5734
+color9 #e50000
+color2 #2baf2b
+color10 #86a83e
+color3 #bdbe00
+color11 #e5e500
+color4 #246db2
+color12 #0000ff
+color5 #cf5ec0
+color13 #e500e5
+color6 #00acee
+color14 #00e5e5
+color7 #bfbfbf
+color15 #e5e5e5
+selection_foreground #2c1c15
diff --git a/kitty/kitty-themes/themes/Japanesque.conf b/kitty/kitty-themes/themes/Japanesque.conf
new file mode 100644
index 000000000..c04527378
--- /dev/null
+++ b/kitty/kitty-themes/themes/Japanesque.conf
@@ -0,0 +1,21 @@
+background #1d1d1d
+foreground #f7f6ec
+cursor #eccf4f
+selection_background #165776
+color0 #343835
+color8 #585a58
+color1 #ce3e60
+color9 #d18ea6
+color2 #7bb75b
+color10 #767e2b
+color3 #e8b32a
+color11 #77592e
+color4 #4c99d3
+color12 #135879
+color5 #a57fc4
+color13 #5f4190
+color6 #389aac
+color14 #76bbca
+color7 #f9faf6
+color15 #b1b5ae
+selection_foreground #1d1d1d
diff --git a/kitty/kitty-themes/themes/Jellybeans.conf b/kitty/kitty-themes/themes/Jellybeans.conf
new file mode 100644
index 000000000..bac5fb722
--- /dev/null
+++ b/kitty/kitty-themes/themes/Jellybeans.conf
@@ -0,0 +1,21 @@
+background #111111
+foreground #dedede
+cursor #ffa460
+selection_background #464d91
+color0 #919191
+color8 #bdbdbd
+color1 #e17373
+color9 #ffa0a0
+color2 #94b978
+color10 #bddeab
+color3 #ffb97b
+color11 #ffdba0
+color4 #96bddb
+color12 #b1d7f6
+color5 #e1c0fa
+color13 #fbdaff
+color6 #00988e
+color14 #19b2a7
+color7 #dedede
+color15 #ffffff
+selection_foreground #111111
diff --git a/kitty/kitty-themes/themes/JetBrains_Darcula.conf b/kitty/kitty-themes/themes/JetBrains_Darcula.conf
new file mode 100644
index 000000000..64ac1462b
--- /dev/null
+++ b/kitty/kitty-themes/themes/JetBrains_Darcula.conf
@@ -0,0 +1,21 @@
+background #202020
+foreground #adadad
+cursor #ffffff
+selection_background #1a3272
+color0 #000000
+color8 #545454
+color1 #fa5355
+color9 #fb7172
+color2 #126e00
+color10 #67ff4f
+color3 #c2c300
+color11 #ffff00
+color4 #4581eb
+color12 #6d9df1
+color5 #fa54ff
+color13 #fb82ff
+color6 #33c2c1
+color14 #60d3d1
+color7 #adadad
+color15 #eeeeee
+selection_foreground #202020
diff --git a/kitty/kitty-themes/themes/Kibble.conf b/kitty/kitty-themes/themes/Kibble.conf
new file mode 100644
index 000000000..3b131059c
--- /dev/null
+++ b/kitty/kitty-themes/themes/Kibble.conf
@@ -0,0 +1,21 @@
+background #0e100a
+foreground #f7f7f7
+cursor #9fda9c
+selection_background #9ba686
+color0 #4d4d4d
+color8 #5a5a5a
+color1 #c70031
+color9 #f01578
+color2 #29cf13
+color10 #6ce05c
+color3 #d8e30e
+color11 #f3f79e
+color4 #3449d1
+color12 #97a4f7
+color5 #8400ff
+color13 #c495f0
+color6 #0798ab
+color14 #68f2e0
+color7 #e2d1e3
+color15 #ffffff
+selection_foreground #0e100a
diff --git a/kitty/kitty-themes/themes/Later_This_Evening.conf b/kitty/kitty-themes/themes/Later_This_Evening.conf
new file mode 100644
index 000000000..135478849
--- /dev/null
+++ b/kitty/kitty-themes/themes/Later_This_Evening.conf
@@ -0,0 +1,21 @@
+background #212121
+foreground #949494
+cursor #424242
+selection_background #424242
+color0 #2b2b2b
+color8 #444747
+color1 #d35a5f
+color9 #d3222e
+color2 #afba66
+color10 #aabb39
+color3 #e5d289
+color11 #e4bd39
+color4 #a0b9d5
+color12 #6599d5
+color5 #bf92d5
+color13 #aa52d5
+color6 #91beb6
+color14 #5fbfad
+color7 #3b3c3c
+color15 #c0c2c2
+selection_foreground #212121
diff --git a/kitty/kitty-themes/themes/Lavandula.conf b/kitty/kitty-themes/themes/Lavandula.conf
new file mode 100644
index 000000000..14aa7aaaf
--- /dev/null
+++ b/kitty/kitty-themes/themes/Lavandula.conf
@@ -0,0 +1,21 @@
+background #050014
+foreground #736d7c
+cursor #8b91fa
+selection_background #36323b
+color0 #230045
+color8 #362c45
+color1 #7c1525
+color9 #df5066
+color2 #337e6f
+color10 #52e0c4
+color3 #7f6f49
+color11 #e0c286
+color4 #4f4a7f
+color12 #8e86df
+color5 #593f7e
+color13 #a675df
+color6 #57767f
+color14 #9ad3df
+color7 #736d7c
+color15 #8b91fa
+selection_foreground #050014
diff --git a/kitty/kitty-themes/themes/LiquidCarbon.conf b/kitty/kitty-themes/themes/LiquidCarbon.conf
new file mode 100644
index 000000000..2f3a9940a
--- /dev/null
+++ b/kitty/kitty-themes/themes/LiquidCarbon.conf
@@ -0,0 +1,21 @@
+background #2f2f2f
+foreground #afc2c2
+cursor #ffffff
+selection_background #7cbeff
+color0 #000000
+color8 #000000
+color1 #ff2f2f
+color9 #ff2f2f
+color2 #549a6f
+color10 #549a6f
+color3 #ccac00
+color11 #ccac00
+color4 #0099cc
+color12 #0099cc
+color5 #cc68c8
+color13 #cc68c8
+color6 #79c4cc
+color14 #79c4cc
+color7 #bccccc
+color15 #bccccc
+selection_foreground #2f2f2f
diff --git a/kitty/kitty-themes/themes/LiquidCarbonTransparent.conf b/kitty/kitty-themes/themes/LiquidCarbonTransparent.conf
new file mode 100644
index 000000000..41e5f8959
--- /dev/null
+++ b/kitty/kitty-themes/themes/LiquidCarbonTransparent.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #afc2c2
+cursor #ffffff
+selection_background #7cbeff
+color0 #000000
+color8 #000000
+color1 #ff2f2f
+color9 #ff2f2f
+color2 #549a6f
+color10 #549a6f
+color3 #ccac00
+color11 #ccac00
+color4 #0099cc
+color12 #0099cc
+color5 #cc68c8
+color13 #cc68c8
+color6 #79c4cc
+color14 #79c4cc
+color7 #bccccc
+color15 #bccccc
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/LiquidCarbonTransparentInverse.conf b/kitty/kitty-themes/themes/LiquidCarbonTransparentInverse.conf
new file mode 100644
index 000000000..d584624e8
--- /dev/null
+++ b/kitty/kitty-themes/themes/LiquidCarbonTransparentInverse.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #afc2c2
+cursor #ffffff
+selection_background #7cbeff
+color0 #bbcbcc
+color8 #ffffff
+color1 #ff2f2f
+color9 #ff2f2f
+color2 #549a6f
+color10 #549a6f
+color3 #ccac00
+color11 #ccac00
+color4 #0099cc
+color12 #0099cc
+color5 #cc68c8
+color13 #cc68c8
+color6 #79c4cc
+color14 #79c4cc
+color7 #000000
+color15 #000000
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Man_Page.conf b/kitty/kitty-themes/themes/Man_Page.conf
new file mode 100644
index 000000000..7c8aa3870
--- /dev/null
+++ b/kitty/kitty-themes/themes/Man_Page.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #fef49c
+foreground #000000
+cursor #7f7f7f
+selection_background #a4c9cd
+color0 #000000
+color8 #666666
+color1 #cc0000
+color9 #e50000
+color2 #00a600
+color10 #00d900
+color3 #999900
+color11 #e5e500
+color4 #0000b2
+color12 #0000ff
+color5 #b200b2
+color13 #e500e5
+color6 #00a6b2
+color14 #00e5e5
+color7 #cccccc
+color15 #e5e5e5
+selection_foreground #fef49c
diff --git a/kitty/kitty-themes/themes/Material.conf b/kitty/kitty-themes/themes/Material.conf
new file mode 100644
index 000000000..ba38846f2
--- /dev/null
+++ b/kitty/kitty-themes/themes/Material.conf
@@ -0,0 +1,21 @@
+background #eaeaea
+foreground #222221
+cursor #16aec9
+selection_background #c1c1c1
+color0 #212121
+color8 #424242
+color1 #b7141e
+color9 #e83a3f
+color2 #457b23
+color10 #7aba39
+color3 #f5971d
+color11 #fee92e
+color4 #134eb2
+color12 #53a4f3
+color5 #550087
+color13 #a94dbb
+color6 #0e707c
+color14 #26bad1
+color7 #eeeeee
+color15 #d8d8d8
+selection_foreground #eaeaea
diff --git a/kitty/kitty-themes/themes/MaterialDark.conf b/kitty/kitty-themes/themes/MaterialDark.conf
new file mode 100644
index 000000000..e599021c0
--- /dev/null
+++ b/kitty/kitty-themes/themes/MaterialDark.conf
@@ -0,0 +1,21 @@
+background #222221
+foreground #e4e4e4
+cursor #16aec9
+selection_background #dedede
+color0 #212121
+color8 #424242
+color1 #b7141e
+color9 #e83a3f
+color2 #457b23
+color10 #7aba39
+color3 #f5971d
+color11 #fee92e
+color4 #134eb2
+color12 #53a4f3
+color5 #550087
+color13 #a94dbb
+color6 #0e707c
+color14 #26bad1
+color7 #eeeeee
+color15 #d8d8d8
+selection_foreground #222221
diff --git a/kitty/kitty-themes/themes/Mathias.conf b/kitty/kitty-themes/themes/Mathias.conf
new file mode 100644
index 000000000..cd1ab1427
--- /dev/null
+++ b/kitty/kitty-themes/themes/Mathias.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #bbbbbb
+cursor #bbbbbb
+selection_background #545454
+color0 #000000
+color8 #545454
+color1 #e52222
+color9 #ff5555
+color2 #a6e32d
+color10 #55ff55
+color3 #fc951e
+color11 #ffff55
+color4 #c48dff
+color12 #5555ff
+color5 #fa2573
+color13 #ff55ff
+color6 #67d9f0
+color14 #55ffff
+color7 #f2f2f2
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Medallion.conf b/kitty/kitty-themes/themes/Medallion.conf
new file mode 100644
index 000000000..0ad880510
--- /dev/null
+++ b/kitty/kitty-themes/themes/Medallion.conf
@@ -0,0 +1,21 @@
+background #1d1808
+foreground #cac296
+cursor #d3b92f
+selection_background #616cab
+color0 #000000
+color8 #5e5118
+color1 #b54c00
+color9 #ff9148
+color2 #7c8a16
+color10 #b1c93a
+color3 #d2bd25
+color11 #ffe449
+color4 #606baf
+color12 #abb8ff
+color5 #8b5990
+color13 #fe9fff
+color6 #906b25
+color14 #ffbb51
+color7 #c9c199
+color15 #fed597
+selection_foreground #1d1808
diff --git a/kitty/kitty-themes/themes/Misterioso.conf b/kitty/kitty-themes/themes/Misterioso.conf
new file mode 100644
index 000000000..1960f9bda
--- /dev/null
+++ b/kitty/kitty-themes/themes/Misterioso.conf
@@ -0,0 +1,21 @@
+background #2d3743
+foreground #e1e1e0
+cursor #000000
+selection_background #2d37ff
+color0 #000000
+color8 #545454
+color1 #ff4141
+color9 #ff3241
+color2 #74ae68
+color10 #74cc68
+color3 #ffac28
+color11 #ffb928
+color4 #338e86
+color12 #23d6d6
+color5 #9413e5
+color13 #ff37ff
+color6 #23d6d6
+color14 #00ece1
+color7 #e1e1df
+color15 #ffffff
+selection_foreground #2d3743
diff --git a/kitty/kitty-themes/themes/Molokai.conf b/kitty/kitty-themes/themes/Molokai.conf
new file mode 100644
index 000000000..cd35d1f30
--- /dev/null
+++ b/kitty/kitty-themes/themes/Molokai.conf
@@ -0,0 +1,21 @@
+background #121212
+foreground #bbbbbb
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #121212
+color8 #545454
+color1 #fa2573
+color9 #f5669c
+color2 #97e123
+color10 #b0e05e
+color3 #dfd460
+color11 #fef26c
+color4 #0f7fcf
+color12 #00afff
+color5 #8700ff
+color13 #af87ff
+color6 #42a7cf
+color14 #50cdfe
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #121212
diff --git a/kitty/kitty-themes/themes/MonaLisa.conf b/kitty/kitty-themes/themes/MonaLisa.conf
new file mode 100644
index 000000000..3b1602dbc
--- /dev/null
+++ b/kitty/kitty-themes/themes/MonaLisa.conf
@@ -0,0 +1,21 @@
+background #110b0d
+foreground #f6d56a
+cursor #c36c32
+selection_background #f6d56a
+color0 #341a0d
+color8 #874227
+color1 #9b281b
+color9 #ff4230
+color2 #626132
+color10 #b3b163
+color3 #c26e27
+color11 #ff9565
+color4 #515b5c
+color12 #9eb2b3
+color5 #9b1d29
+color13 #ff5b6a
+color6 #588056
+color14 #89cc8e
+color7 #f6d75c
+color15 #ffe597
+selection_foreground #110b0d
diff --git a/kitty/kitty-themes/themes/Monokai.conf b/kitty/kitty-themes/themes/Monokai.conf
new file mode 100644
index 000000000..660c0cc7c
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai.conf
@@ -0,0 +1,41 @@
+# Monokai
+
+background #272822
+foreground #f8f8f2
+cursor #f8f8f2
+selection_background #f8f8f2
+selection_foreground #272822
+active_tab_background #75715e
+active_tab_foreground #272822
+active_border_color #75715e
+inactive_tab_background #272822
+inactive_tab_foreground #75715e
+inactive_border_color #75715e
+url_color #f8f8f2
+
+# 16 Color Space
+
+# black
+color0 #272822
+color8 #75715e
+# red
+color1 #f92672
+color9 #f92672
+# green
+color2 #a6e22e
+color10 #a6e22e
+# yellow
+color3 #e6db74
+color11 #e6db74
+# blue
+color4 #66d9ef
+color12 #66d9ef
+# magenta
+color5 #fd971f
+color13 #fd971f
+# cyan
+color6 #ae81ff
+color14 #ae81ff
+# white
+color7 #f8f8f2
+color15 #f8f8f2
diff --git a/kitty/kitty-themes/themes/Monokai_Classic.conf b/kitty/kitty-themes/themes/Monokai_Classic.conf
new file mode 100644
index 000000000..9c74f4023
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Classic.conf
@@ -0,0 +1,47 @@
+background #3b3c35
+foreground #fdfff1
+
+cursor #fdfff1
+cursor_text_color #000000
+selection_foreground #3b3c35
+selection_background #fdfff1
+
+# dull black
+color0 #3b3c35
+# light black
+color8 #6e7066
+
+# dull red
+color1 #f82570
+# light red
+color9 #f82570
+
+# dull green
+color2 #a6e12d
+# light green
+color10 #a6e12d
+
+# yellow
+color3 #e4db73
+# light yellow
+color11 #e4db73
+
+# blue
+color4 #fc961f
+# light blue
+color12 #fc961f
+
+# magenta
+color5 #ae81ff
+# light magenta
+color13 #ae81ff
+
+# cyan
+color6 #66d9ee
+# light cyan
+color14 #66d9ee
+
+# dull white
+color7 #fdfff1
+# bright white
+color15 #fdfff1
diff --git a/kitty/kitty-themes/themes/Monokai_Pro.conf b/kitty/kitty-themes/themes/Monokai_Pro.conf
new file mode 100644
index 000000000..f5a2e8ca3
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Pro.conf
@@ -0,0 +1,47 @@
+background #403e41
+foreground #fcfcfa
+
+cursor #fcfcfa
+cursor_text_color #000000
+selection_foreground #403e41
+selection_background #fcfcfa
+
+# dull black
+color0 #403e41
+# light black
+color8 #727072
+
+# dull red
+color1 #ff6188
+# light red
+color9 #ff6188
+
+# dull green
+color2 #a9dc76
+# light green
+color10 #a9dc76
+
+# yellow
+color3 #ffd866
+# light yellow
+color11 #ffd866
+
+# blue
+color4 #fc9867
+# light blue
+color12 #fc9867
+
+# magenta
+color5 #ab9df2
+# light magenta
+color13 #ab9df2
+
+# cyan
+color6 #78dce8
+# light cyan
+color14 #78dce8
+
+# dull white
+color7 #fcfcfa
+# bright white
+color15 #fcfcfa
diff --git a/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Machine).conf b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Machine).conf
new file mode 100644
index 000000000..b46e1d320
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Machine).conf
@@ -0,0 +1,47 @@
+background #3a4449
+foreground #f2fffc
+
+cursor #f2fffc
+cursor_text_color #000000
+selection_foreground #3a4449
+selection_background #f2fffc
+
+# dull black
+color0 #3a4449
+# light black
+color8 #6b7678
+
+# dull red
+color1 #ff6d7e
+# light red
+color9 #ff6d7e
+
+# dull green
+color2 #a2e57b
+# light green
+color10 #a2e57b
+
+# yellow
+color3 #ffed72
+# light yellow
+color11 #ffed72
+
+# blue
+color4 #ffb270
+# light blue
+color12 #ffb270
+
+# magenta
+color5 #baa0f8
+# light magenta
+color13 #baa0f8
+
+# cyan
+color6 #7cd5f1
+# light cyan
+color14 #7cd5f1
+
+# dull white
+color7 #f2fffc
+# bright white
+color15 #f2fffc
diff --git a/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Octagon).conf b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Octagon).conf
new file mode 100644
index 000000000..3aee34a2c
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Octagon).conf
@@ -0,0 +1,47 @@
+background #3a3d4b
+foreground #eaf2f1
+
+cursor #eaf2f1
+cursor_text_color #000000
+selection_foreground #3a3d4b
+selection_background #eaf2f1
+
+# dull black
+color0 #3a3d4b
+# light black
+color8 #696d77
+
+# dull red
+color1 #ff657a
+# light red
+color9 #ff657a
+
+# dull green
+color2 #bad761
+# light green
+color10 #bad761
+
+# yellow
+color3 #ffd76d
+# light yellow
+color11 #ffd76d
+
+# blue
+color4 #ff9b5e
+# light blue
+color12 #ff9b5e
+
+# magenta
+color5 #c39ac9
+# light magenta
+color13 #c39ac9
+
+# cyan
+color6 #9cd1bb
+# light cyan
+color14 #9cd1bb
+
+# dull white
+color7 #eaf2f1
+# bright white
+color15 #eaf2f1
diff --git a/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Ristretto).conf b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Ristretto).conf
new file mode 100644
index 000000000..599b0e174
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Ristretto).conf
@@ -0,0 +1,47 @@
+background #403838
+foreground #fff1f3
+
+cursor #fff1f3
+cursor_text_color #000000
+selection_foreground #403838
+selection_background #fff1f3
+
+# dull black
+color0 #403838
+# light black
+color8 #72696a
+
+# dull red
+color1 #fd6883
+# light red
+color9 #fd6883
+
+# dull green
+color2 #adda78
+# light green
+color10 #adda78
+
+# yellow
+color3 #f9cc6c
+# light yellow
+color11 #f9cc6c
+
+# blue
+color4 #f38d70
+# light blue
+color12 #f38d70
+
+# magenta
+color5 #a8a9eb
+# light magenta
+color13 #a8a9eb
+
+# cyan
+color6 #85dacc
+# light cyan
+color14 #85dacc
+
+# dull white
+color7 #fff1f3
+# bright white
+color15 #fff1f3
diff --git a/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Spectrum).conf b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Spectrum).conf
new file mode 100644
index 000000000..5617a6d8c
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Pro_(Filter_Spectrum).conf
@@ -0,0 +1,47 @@
+background #363537
+foreground #f7f1ff
+
+cursor #f7f1ff
+cursor_text_color #000000
+selection_foreground #363537
+selection_background #f7f1ff
+
+# dull black
+color0 #363537
+# light black
+color8 #69676c
+
+# dull red
+color1 #fc618d
+# light red
+color9 #fc618d
+
+# dull green
+color2 #7bd88f
+# light green
+color10 #7bd88f
+
+# yellow
+color3 #fce566
+# light yellow
+color11 #fce566
+
+# blue
+color4 #fd9353
+# light blue
+color12 #fd9353
+
+# magenta
+color5 #948ae3
+# light magenta
+color13 #948ae3
+
+# cyan
+color6 #5ad4e6
+# light cyan
+color14 #5ad4e6
+
+# dull white
+color7 #f7f1ff
+# bright white
+color15 #f7f1ff
diff --git a/kitty/kitty-themes/themes/Monokai_Soda.conf b/kitty/kitty-themes/themes/Monokai_Soda.conf
new file mode 100644
index 000000000..eb7a24d6a
--- /dev/null
+++ b/kitty/kitty-themes/themes/Monokai_Soda.conf
@@ -0,0 +1,21 @@
+background #191919
+foreground #c4c4b5
+cursor #f6f6ec
+selection_background #343434
+color0 #191919
+color8 #615e4b
+color1 #f3005f
+color9 #f3005f
+color2 #97e023
+color10 #97e023
+color3 #fa8419
+color11 #dfd561
+color4 #9c64fe
+color12 #9c64fe
+color5 #f3005f
+color13 #f3005f
+color6 #57d1ea
+color14 #57d1ea
+color7 #c4c4b5
+color15 #f6f6ee
+selection_foreground #191919
diff --git a/kitty/kitty-themes/themes/N0tch2k.conf b/kitty/kitty-themes/themes/N0tch2k.conf
new file mode 100644
index 000000000..3e2bb6cfc
--- /dev/null
+++ b/kitty/kitty-themes/themes/N0tch2k.conf
@@ -0,0 +1,21 @@
+background #222222
+foreground #a0a0a0
+cursor #a99075
+selection_background #4d4d4d
+color0 #383838
+color8 #474747
+color1 #a95551
+color9 #a97775
+color2 #666666
+color10 #8c8c8c
+color3 #a98051
+color11 #a99175
+color4 #657d3e
+color12 #98bd5e
+color5 #767676
+color13 #a3a3a3
+color6 #c9c9c9
+color14 #dcdcdc
+color7 #d0b8a3
+color15 #d8c8bb
+selection_foreground #222222
diff --git a/kitty/kitty-themes/themes/Neopolitan.conf b/kitty/kitty-themes/themes/Neopolitan.conf
new file mode 100644
index 000000000..2c6ffce14
--- /dev/null
+++ b/kitty/kitty-themes/themes/Neopolitan.conf
@@ -0,0 +1,21 @@
+background #271f19
+foreground #ffffff
+cursor #ffffff
+selection_background #253b76
+color0 #000000
+color8 #000000
+color1 #800000
+color9 #800000
+color2 #61ce3c
+color10 #61ce3c
+color3 #fbde2d
+color11 #fbde2d
+color4 #253b76
+color12 #253b76
+color5 #ff0080
+color13 #ff0080
+color6 #8da6ce
+color14 #8da6ce
+color7 #f8f8f8
+color15 #f8f8f8
+selection_foreground #271f19
diff --git a/kitty/kitty-themes/themes/Neutron.conf b/kitty/kitty-themes/themes/Neutron.conf
new file mode 100644
index 000000000..9f2fe4de7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Neutron.conf
@@ -0,0 +1,21 @@
+background #1b1d22
+foreground #e6e8ee
+cursor #f6f6ec
+selection_background #2e353d
+color0 #22252b
+color8 #22252b
+color1 #b53f36
+color9 #b53f36
+color2 #5ab977
+color10 #5ab977
+color3 #ddb566
+color11 #ddb566
+color4 #6a7b92
+color12 #6a7b92
+color5 #a3799d
+color13 #a3799d
+color6 #3f93a8
+color14 #3f93a8
+color7 #e6e8ee
+color15 #ebedf2
+selection_foreground #1b1d22
diff --git a/kitty/kitty-themes/themes/NightLion_v1.conf b/kitty/kitty-themes/themes/NightLion_v1.conf
new file mode 100644
index 000000000..1021c4687
--- /dev/null
+++ b/kitty/kitty-themes/themes/NightLion_v1.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #bbbbbb
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #4c4c4c
+color8 #545454
+color1 #bb0000
+color9 #ff5555
+color2 #5ede8f
+color10 #55ff55
+color3 #f2f067
+color11 #ffff55
+color4 #266ad7
+color12 #5555ff
+color5 #bb00bb
+color13 #ff55ff
+color6 #00d9df
+color14 #55ffff
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/NightLion_v2.conf b/kitty/kitty-themes/themes/NightLion_v2.conf
new file mode 100644
index 000000000..aed7f8dfe
--- /dev/null
+++ b/kitty/kitty-themes/themes/NightLion_v2.conf
@@ -0,0 +1,21 @@
+background #171717
+foreground #bbbbbb
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #4c4c4c
+color8 #545454
+color1 #bb0000
+color9 #ff5555
+color2 #03f622
+color10 #7df61c
+color3 #f2f067
+color11 #ffff55
+color4 #63d0f0
+color12 #62cae7
+color5 #ce6fda
+color13 #ff9af5
+color6 #00d9df
+color14 #00ccd7
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #171717
diff --git a/kitty/kitty-themes/themes/Nova.conf b/kitty/kitty-themes/themes/Nova.conf
new file mode 100644
index 000000000..c3f2da1d7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Nova.conf
@@ -0,0 +1,21 @@
+background #3c4c54
+foreground #8798a3
+cursor #7fc1c9
+color0 #8799a4
+color8 #c4d3dc
+color1 #efc08d
+color9 #ef8358
+color2 #a6cb91
+color10 #a8ce93
+color3 #d7d690
+color11 #e5e77f
+color4 #83afe4
+color12 #69c8ff
+color5 #d460da
+color13 #d18ec2
+color6 #7fc1b6
+color14 #00e59f
+color7 #c4d3dc
+color15 #e6eef3
+selection_foreground #3c4c54
+selection_background #7fc1ca
diff --git a/kitty/kitty-themes/themes/Novel.conf b/kitty/kitty-themes/themes/Novel.conf
new file mode 100644
index 000000000..03220e37e
--- /dev/null
+++ b/kitty/kitty-themes/themes/Novel.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #dfdbc3
+foreground #3b2322
+cursor #73635a
+selection_background #a4a390
+color0 #000000
+color8 #7f7f7f
+color1 #cc0000
+color9 #cc0000
+color2 #009600
+color10 #009600
+color3 #d06b00
+color11 #d06b00
+color4 #0000cc
+color12 #0000cc
+color5 #cc00cc
+color13 #cc00cc
+color6 #0087cc
+color14 #0086cb
+color7 #cccccc
+color15 #ffffff
+selection_foreground #dfdbc3
diff --git a/kitty/kitty-themes/themes/Obsidian.conf b/kitty/kitty-themes/themes/Obsidian.conf
new file mode 100644
index 000000000..7265d44c4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Obsidian.conf
@@ -0,0 +1,21 @@
+background #273032
+foreground #cccccc
+cursor #c0cad0
+selection_background #3d4b4e
+color0 #000000
+color8 #545454
+color1 #a50001
+color9 #ff0003
+color2 #00bb00
+color10 #92c763
+color3 #fecc22
+color11 #fef773
+color4 #399bda
+color12 #a0d6ff
+color5 #bb00bb
+color13 #ff55ff
+color6 #00bbbb
+color14 #55ffff
+color7 #bbbbbb
+color15 #ffffff
+selection_foreground #273032
diff --git a/kitty/kitty-themes/themes/Ocean.conf b/kitty/kitty-themes/themes/Ocean.conf
new file mode 100644
index 000000000..ad6205a65
--- /dev/null
+++ b/kitty/kitty-themes/themes/Ocean.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #214fbc
+foreground #ffffff
+cursor #7f7f7f
+selection_background #216dff
+color0 #000000
+color8 #666666
+color1 #990000
+color9 #e50000
+color2 #00a600
+color10 #00d900
+color3 #999900
+color11 #e5e500
+color4 #0000b2
+color12 #0000ff
+color5 #b200b2
+color13 #e500e5
+color6 #00a6b2
+color14 #00e5e5
+color7 #bebebe
+color15 #e5e5e5
+selection_foreground #214fbc
diff --git a/kitty/kitty-themes/themes/OceanicMaterial.conf b/kitty/kitty-themes/themes/OceanicMaterial.conf
new file mode 100644
index 000000000..9403518f4
--- /dev/null
+++ b/kitty/kitty-themes/themes/OceanicMaterial.conf
@@ -0,0 +1,21 @@
+background #1c262b
+foreground #c1c8d6
+cursor #b2b8c3
+selection_background #6dc1b8
+color0 #000000
+color8 #767676
+color1 #ee2a29
+color9 #dc5b60
+color2 #3fa33f
+color10 #70be71
+color3 #fee92e
+color11 #fef063
+color4 #1d80ef
+color12 #53a4f3
+color5 #8800a0
+color13 #a94dbb
+color6 #16aec9
+color14 #42c6d9
+color7 #a4a4a4
+color15 #fffefe
+selection_foreground #1c262b
diff --git a/kitty/kitty-themes/themes/Ollie.conf b/kitty/kitty-themes/themes/Ollie.conf
new file mode 100644
index 000000000..66eecf584
--- /dev/null
+++ b/kitty/kitty-themes/themes/Ollie.conf
@@ -0,0 +1,21 @@
+background #212024
+foreground #8a8dae
+cursor #5b6da7
+selection_background #1e3965
+color0 #000000
+color8 #5a3625
+color1 #ab2e30
+color9 #ff3d48
+color2 #31ab60
+color10 #3bff99
+color3 #ab4200
+color11 #ff5e1e
+color4 #2c56ab
+color12 #4487ff
+color5 #af8427
+color13 #ffc21c
+color6 #1fa5ab
+color14 #1efaff
+color7 #8a8dab
+color15 #5b6da7
+selection_foreground #212024
diff --git a/kitty/kitty-themes/themes/OneDark.conf b/kitty/kitty-themes/themes/OneDark.conf
new file mode 100644
index 000000000..ad6cb4e18
--- /dev/null
+++ b/kitty/kitty-themes/themes/OneDark.conf
@@ -0,0 +1,25 @@
+# One Dark by Giuseppe Cesarano, https://github.com/GiuseppeCesarano
+# This work is licensed under the terms of the GPL-2.0 license.
+# For a copy, see https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html.
+
+foreground #979eab
+background #282c34
+cursor #cccccc
+color0 #282c34
+color1 #e06c75
+color2 #98c379
+color3 #e5c07b
+color4 #61afef
+color5 #be5046
+color6 #56b6c2
+color7 #979eab
+color8 #393e48
+color9 #d19a66
+color10 #56b6c2
+color11 #e5c07b
+color12 #61afef
+color13 #be5046
+color14 #56b6c2
+color15 #abb2bf
+selection_foreground #282c34
+selection_background #979eab
diff --git a/kitty/kitty-themes/themes/Parasio_Dark.conf b/kitty/kitty-themes/themes/Parasio_Dark.conf
new file mode 100644
index 000000000..4cc1e8d61
--- /dev/null
+++ b/kitty/kitty-themes/themes/Parasio_Dark.conf
@@ -0,0 +1,21 @@
+background #2f1d2e
+foreground #a39d9b
+cursor #a39d9b
+selection_background #4f414c
+color0 #2f1d2e
+color8 #776d70
+color1 #ef6154
+color9 #ef6154
+color2 #48b685
+color10 #48b685
+color3 #fec418
+color11 #fec418
+color4 #05b6ef
+color12 #05b6ef
+color5 #805ba3
+color13 #805ba3
+color6 #5bc4be
+color14 #5bc4be
+color7 #a39d9b
+color15 #e6e9da
+selection_foreground #2f1d2e
diff --git a/kitty/kitty-themes/themes/PaulMillr.conf b/kitty/kitty-themes/themes/PaulMillr.conf
new file mode 100644
index 000000000..72cc95cb6
--- /dev/null
+++ b/kitty/kitty-themes/themes/PaulMillr.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #f1f1f1
+cursor #4c4c4c
+selection_background #414141
+color0 #2a2a2a
+color8 #666666
+color1 #ff0000
+color9 #ff007f
+color2 #78ff0e
+color10 #66ff66
+color3 #e6be00
+color11 #f3d64d
+color4 #396ad6
+color12 #7099ec
+color5 #b348bd
+color13 #da66e5
+color6 #66ccff
+color14 #79def1
+color7 #bababa
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/PencilDark.conf b/kitty/kitty-themes/themes/PencilDark.conf
new file mode 100644
index 000000000..3926f6cb0
--- /dev/null
+++ b/kitty/kitty-themes/themes/PencilDark.conf
@@ -0,0 +1,21 @@
+background #202020
+foreground #f0f0f0
+cursor #20bafb
+selection_background #b6d6fc
+color0 #202020
+color8 #414141
+color1 #c30670
+color9 #fb0079
+color2 #10a778
+color10 #5ed6ae
+color3 #a79c14
+color11 #f3e42f
+color4 #008ec4
+color12 #20bafb
+color5 #523b78
+color13 #6854de
+color6 #20a4b9
+color14 #4fb8cc
+color7 #d9d9d9
+color15 #f0f0f0
+selection_foreground #202020
diff --git a/kitty/kitty-themes/themes/PencilLight.conf b/kitty/kitty-themes/themes/PencilLight.conf
new file mode 100644
index 000000000..4311c705c
--- /dev/null
+++ b/kitty/kitty-themes/themes/PencilLight.conf
@@ -0,0 +1,21 @@
+background #f0f0f0
+foreground #414141
+cursor #20bafb
+selection_background #b6d6fc
+color0 #202020
+color8 #414141
+color1 #c30670
+color9 #fb0079
+color2 #10a778
+color10 #5ed6ae
+color3 #a79c14
+color11 #f3e42f
+color4 #008ec4
+color12 #20bafb
+color5 #523b78
+color13 #6854de
+color6 #20a4b9
+color14 #4fb8cc
+color7 #d9d9d9
+color15 #f0f0f0
+selection_foreground #f0f0f0
diff --git a/kitty/kitty-themes/themes/Piatto_Light.conf b/kitty/kitty-themes/themes/Piatto_Light.conf
new file mode 100644
index 000000000..401fe9119
--- /dev/null
+++ b/kitty/kitty-themes/themes/Piatto_Light.conf
@@ -0,0 +1,21 @@
+background #ffffff
+foreground #414141
+cursor #5e76c7
+selection_background #6f6a4e
+color0 #414141
+color8 #3e3e3e
+color1 #b23670
+color9 #da3365
+color2 #66781d
+color10 #829428
+color3 #cc6e33
+color11 #cc6e33
+color4 #3b5ea7
+color12 #3b5ea7
+color5 #a353b2
+color13 #a353b2
+color6 #66781d
+color14 #829428
+color7 #ffffff
+color15 #f1f1f1
+selection_foreground #ffffff
diff --git a/kitty/kitty-themes/themes/Pnevma.conf b/kitty/kitty-themes/themes/Pnevma.conf
new file mode 100644
index 000000000..1dda097c7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Pnevma.conf
@@ -0,0 +1,21 @@
+background #1c1c1c
+foreground #d0d0d0
+cursor #e3c8ae
+selection_background #4d4d4d
+color0 #2f2e2d
+color8 #4a4845
+color1 #a36666
+color9 #d78787
+color2 #90a57d
+color10 #afbea2
+color3 #d7af87
+color11 #e4c9af
+color4 #7fa5bd
+color12 #a1bdce
+color5 #c79ec4
+color13 #d7beda
+color6 #8adbb4
+color14 #b1e7dd
+color7 #d0d0d0
+color15 #efefef
+selection_foreground #1c1c1c
diff --git a/kitty/kitty-themes/themes/Pro.conf b/kitty/kitty-themes/themes/Pro.conf
new file mode 100644
index 000000000..6ffc047fc
--- /dev/null
+++ b/kitty/kitty-themes/themes/Pro.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #000000
+foreground #f2f2f2
+cursor #4d4d4d
+selection_background #414141
+color0 #000000
+color8 #666666
+color1 #990000
+color9 #e50000
+color2 #00a600
+color10 #00d900
+color3 #999900
+color11 #e5e500
+color4 #1f08db
+color12 #0000ff
+color5 #b200b2
+color13 #e500e5
+color6 #00a6b2
+color14 #00e5e5
+color7 #bfbfbf
+color15 #e5e5e5
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Red_Alert.conf b/kitty/kitty-themes/themes/Red_Alert.conf
new file mode 100644
index 000000000..020429ac0
--- /dev/null
+++ b/kitty/kitty-themes/themes/Red_Alert.conf
@@ -0,0 +1,21 @@
+background #762423
+foreground #ffffff
+cursor #ffffff
+selection_background #073642
+color0 #000000
+color8 #262626
+color1 #d52e4d
+color9 #e02453
+color2 #71be6b
+color10 #aff08b
+color3 #beb86b
+color11 #dfddb7
+color4 #479bed
+color12 #65a9f0
+color5 #e878d6
+color13 #ddb7df
+color6 #6bbeb8
+color14 #b7dfdd
+color7 #d6d6d6
+color15 #ffffff
+selection_foreground #762423
diff --git a/kitty/kitty-themes/themes/Red_Sands.conf b/kitty/kitty-themes/themes/Red_Sands.conf
new file mode 100644
index 000000000..a491f3d1b
--- /dev/null
+++ b/kitty/kitty-themes/themes/Red_Sands.conf
@@ -0,0 +1,23 @@
+# Theme ported from the Mac Terminal application.
+
+background #79241d
+foreground #d6c8a7
+cursor #ffffff
+selection_background #a4a390
+color0 #000000
+color8 #545454
+color1 #ff3e00
+color9 #ba0000
+color2 #00ba00
+color10 #00ba00
+color3 #e6af00
+color11 #e6af00
+color4 #0071ff
+color12 #0071ae
+color5 #ba00ba
+color13 #ff54ff
+color6 #00baba
+color14 #54ffff
+color7 #bababa
+color15 #ffffff
+selection_foreground #79241d
diff --git a/kitty/kitty-themes/themes/Relaxed_Afterglow.conf b/kitty/kitty-themes/themes/Relaxed_Afterglow.conf
new file mode 100644
index 000000000..598877783
--- /dev/null
+++ b/kitty/kitty-themes/themes/Relaxed_Afterglow.conf
@@ -0,0 +1,25 @@
+# Relaxed Afterglow by Michael Kühnel <mail@michael-kuehnel.de>, https://github.com/Relaxed-Theme/relaxed-terminal-themes
+# This work is licensed under the terms of the MIT license.
+# For a copy, see https://opensource.org/licenses/MIT.
+
+background #353a44
+foreground #d9d9d9
+cursor #d9d9d9
+selection_foreground #d8d8d8
+selection_background #6a7984
+color0 #151515
+color1 #bc5653
+color2 #909d63
+color3 #ebc17a
+color4 #6a8799
+color5 #b06698
+color6 #c9dfff
+color7 #d9d9d9
+color8 #636363
+color9 #bc5653
+color10 #a0ac77
+color11 #ebc17a
+color12 #7eaac7
+color13 #b06698
+color14 #acbbd0
+color15 #f7f7f7
diff --git a/kitty/kitty-themes/themes/Renault_Style.conf b/kitty/kitty-themes/themes/Renault_Style.conf
new file mode 100644
index 000000000..856818db9
--- /dev/null
+++ b/kitty/kitty-themes/themes/Renault_Style.conf
@@ -0,0 +1,22 @@
+background #3a3a3a
+foreground #e9cb7b
+cursor #7f7f7f
+selection_background #958553
+
+color0 #000000
+color1 #990000
+color2 #00A600
+color3 #999900
+color4 #0000B2
+color5 #B200B2
+color6 #00A6B2
+color7 #BFBFBF
+color8 #666666
+color9 #E50000
+color10 #00d800
+color11 #E5E500
+color12 #0000FF
+color13 #E500E5
+color14 #00e5e5
+color15 #E5E5E5
+selection_foreground #3a3a3a
diff --git a/kitty/kitty-themes/themes/Renault_Style_Light.conf b/kitty/kitty-themes/themes/Renault_Style_Light.conf
new file mode 100644
index 000000000..e08cd6a02
--- /dev/null
+++ b/kitty/kitty-themes/themes/Renault_Style_Light.conf
@@ -0,0 +1,21 @@
+background #3a3a3a
+foreground #e9cb7b
+cursor #7f7f7f
+selection_background #958553
+color0 #000000
+color8 #323232
+color1 #da4839
+color9 #ff7b6a
+color2 #509f50
+color10 #83d082
+color3 #ffd249
+color11 #ffff7b
+color4 #46657d
+color12 #9fcef0
+color5 #cfcfff
+color13 #ffffff
+color6 #87c1f1
+color14 #a4d4f8
+color7 #ffffff
+color15 #ffffff
+selection_foreground #3a3a3a
diff --git a/kitty/kitty-themes/themes/Rippedcasts.conf b/kitty/kitty-themes/themes/Rippedcasts.conf
new file mode 100644
index 000000000..20e987293
--- /dev/null
+++ b/kitty/kitty-themes/themes/Rippedcasts.conf
@@ -0,0 +1,21 @@
+background #2b2b2b
+foreground #ffffff
+cursor #7f7f7f
+selection_background #5a637e
+color0 #000000
+color8 #666666
+color1 #ccae95
+color9 #edcbac
+color2 #a7ff60
+color10 #bced68
+color3 #beba1f
+color11 #e5e500
+color4 #74a4af
+color12 #86bdc8
+color5 #ff73fd
+color13 #e500e5
+color6 #5a637e
+color14 #8b9bc4
+color7 #bebebe
+color15 #e5e5e5
+selection_foreground #2b2b2b
diff --git a/kitty/kitty-themes/themes/Royal.conf b/kitty/kitty-themes/themes/Royal.conf
new file mode 100644
index 000000000..0ebd236e4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Royal.conf
@@ -0,0 +1,21 @@
+background #100814
+foreground #504868
+cursor #514965
+selection_background #1e1d2a
+color0 #241f2a
+color8 #312d3c
+color1 #90274b
+color9 #d4346c
+color2 #23801c
+color10 #2cd845
+color3 #b49d27
+color11 #fde83a
+color4 #6480af
+color12 #8fb9f9
+color5 #664d96
+color13 #a479e2
+color6 #8aaabd
+color14 #abd3eb
+color7 #514965
+color15 #9d8bbd
+selection_foreground #100814
diff --git a/kitty/kitty-themes/themes/SeaShells.conf b/kitty/kitty-themes/themes/SeaShells.conf
new file mode 100644
index 000000000..60a2968b2
--- /dev/null
+++ b/kitty/kitty-themes/themes/SeaShells.conf
@@ -0,0 +1,21 @@
+background #08131a
+foreground #deb88d
+cursor #fba02f
+selection_background #1e4862
+color0 #17384c
+color8 #424b52
+color1 #d05023
+color9 #d38677
+color2 #027b9b
+color10 #618c98
+color3 #fba02f
+color11 #fdd29e
+color4 #1d4850
+color12 #1abcdd
+color5 #68d3f0
+color13 #bbe3ee
+color6 #50a3b5
+color14 #86abb3
+color7 #deb88d
+color15 #fee3cd
+selection_foreground #08131a
diff --git a/kitty/kitty-themes/themes/Seafoam_Pastel.conf b/kitty/kitty-themes/themes/Seafoam_Pastel.conf
new file mode 100644
index 000000000..c3e95a76f
--- /dev/null
+++ b/kitty/kitty-themes/themes/Seafoam_Pastel.conf
@@ -0,0 +1,21 @@
+background #243335
+foreground #d3e6d3
+cursor #576379
+selection_background #ffffff
+color0 #747474
+color8 #8a8a8a
+color1 #825d4c
+color9 #cf9279
+color2 #718b62
+color10 #98d9aa
+color3 #aca06d
+color11 #fae69c
+color4 #4c7b82
+color12 #79c3cf
+color5 #8a7166
+color13 #d6b2a0
+color6 #719494
+color14 #acdfdf
+color7 #dfdfdf
+color15 #dfdfdf
+selection_foreground #243335
diff --git a/kitty/kitty-themes/themes/Seti.conf b/kitty/kitty-themes/themes/Seti.conf
new file mode 100644
index 000000000..69c4105d7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Seti.conf
@@ -0,0 +1,21 @@
+background #111213
+foreground #cacecd
+cursor #e2be21
+selection_background #303233
+color0 #323232
+color8 #323232
+color1 #c22832
+color9 #c22832
+color2 #8ec43d
+color10 #8ec43d
+color3 #e0c64f
+color11 #e0c64f
+color4 #43a5d5
+color12 #43a5d5
+color5 #8b57b5
+color13 #8b57b5
+color6 #8ec43d
+color14 #8ec43d
+color7 #eeeeee
+color15 #ffffff
+selection_foreground #111213
diff --git a/kitty/kitty-themes/themes/Shaman.conf b/kitty/kitty-themes/themes/Shaman.conf
new file mode 100644
index 000000000..a316711e4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Shaman.conf
@@ -0,0 +1,21 @@
+background #001014
+foreground #405555
+cursor #49fcd5
+selection_background #415554
+color0 #012026
+color8 #374350
+color1 #b12f2c
+color9 #ff4242
+color2 #00a940
+color10 #2aea5e
+color3 #5d8aa9
+color11 #8dd3fd
+color4 #449985
+color12 #61d4b9
+color5 #00599c
+color13 #1298ff
+color6 #5c7e19
+color14 #98cf28
+color7 #405554
+color15 #58fad6
+selection_foreground #001014
diff --git a/kitty/kitty-themes/themes/Slate.conf b/kitty/kitty-themes/themes/Slate.conf
new file mode 100644
index 000000000..650e4abb7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Slate.conf
@@ -0,0 +1,21 @@
+background #212121
+foreground #34b0d2
+cursor #87d2c3
+selection_background #0f3754
+color0 #212121
+color8 #ffffff
+color1 #e1a7bf
+color9 #ffccd8
+color2 #80d778
+color10 #bdffa8
+color3 #c4c9bf
+color11 #d0cbc9
+color4 #254a49
+color12 #79afd2
+color5 #a380d3
+color13 #c4a7d8
+color6 #14ab9c
+color14 #8bdee0
+color7 #02c4e0
+color15 #e0e0e0
+selection_foreground #212121
diff --git a/kitty/kitty-themes/themes/Smyck.conf b/kitty/kitty-themes/themes/Smyck.conf
new file mode 100644
index 000000000..3c9725123
--- /dev/null
+++ b/kitty/kitty-themes/themes/Smyck.conf
@@ -0,0 +1,21 @@
+background #1b1b1b
+foreground #f7f7f7
+cursor #bbbbbb
+selection_background #207383
+color0 #000000
+color8 #7a7a7a
+color1 #b74131
+color9 #d6837b
+color2 #7da900
+color10 #c4f036
+color3 #c4a400
+color11 #fee14d
+color4 #62a3c4
+color12 #8dcff0
+color5 #b98acc
+color13 #f799ff
+color6 #207383
+color14 #69d9cf
+color7 #a0a0a0
+color15 #f7f7f7
+selection_foreground #1b1b1b
diff --git a/kitty/kitty-themes/themes/SoftServer.conf b/kitty/kitty-themes/themes/SoftServer.conf
new file mode 100644
index 000000000..e7eb5fe91
--- /dev/null
+++ b/kitty/kitty-themes/themes/SoftServer.conf
@@ -0,0 +1,21 @@
+background #242626
+foreground #99a3a2
+cursor #d1dfde
+selection_background #7f8786
+color0 #000000
+color8 #666c6b
+color1 #a16869
+color9 #dc5b5f
+color2 #99a569
+color10 #bfde54
+color3 #a29069
+color11 #deb35f
+color4 #6a8fa3
+color12 #62b1df
+color5 #6971a3
+color13 #5f6ede
+color6 #6ba48f
+color14 #64e39c
+color7 #99a3a2
+color15 #d1dfde
+selection_foreground #242626
diff --git a/kitty/kitty-themes/themes/Solarized_Darcula.conf b/kitty/kitty-themes/themes/Solarized_Darcula.conf
new file mode 100644
index 000000000..0a845d4c4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Solarized_Darcula.conf
@@ -0,0 +1,21 @@
+background #3d3f41
+foreground #d2d8d9
+cursor #708183
+selection_background #214283
+color0 #25292a
+color8 #25292a
+color1 #f24840
+color9 #f24840
+color2 #629655
+color10 #629655
+color3 #b68800
+color11 #b68800
+color4 #2074c7
+color12 #2074c7
+color5 #797fd4
+color13 #797fd4
+color6 #15968d
+color14 #15968d
+color7 #d2d8d9
+color15 #d2d8d9
+selection_foreground #3d3f41
diff --git a/kitty/kitty-themes/themes/Solarized_Dark.conf b/kitty/kitty-themes/themes/Solarized_Dark.conf
new file mode 100644
index 000000000..841942678
--- /dev/null
+++ b/kitty/kitty-themes/themes/Solarized_Dark.conf
@@ -0,0 +1,21 @@
+background #001e26
+foreground #708183
+cursor #708183
+selection_background #002731
+color0 #002731
+color8 #001e26
+color1 #d01b24
+color9 #bd3612
+color2 #728905
+color10 #465a61
+color3 #a57705
+color11 #52676f
+color4 #2075c7
+color12 #708183
+color5 #c61b6e
+color13 #5856b9
+color6 #259185
+color14 #81908f
+color7 #e9e2cb
+color15 #fcf4dc
+selection_foreground #001e26
diff --git a/kitty/kitty-themes/themes/Solarized_Dark_-_Patched.conf b/kitty/kitty-themes/themes/Solarized_Dark_-_Patched.conf
new file mode 100644
index 000000000..37c35979a
--- /dev/null
+++ b/kitty/kitty-themes/themes/Solarized_Dark_-_Patched.conf
@@ -0,0 +1,21 @@
+background #001e26
+foreground #708183
+cursor #708183
+selection_background #002731
+color0 #002731
+color8 #465a61
+color1 #d01b24
+color9 #bd3612
+color2 #728905
+color10 #465a61
+color3 #a57705
+color11 #52676f
+color4 #2075c7
+color12 #708183
+color5 #c61b6e
+color13 #5856b9
+color6 #259185
+color14 #81908f
+color7 #e9e2cb
+color15 #fcf4dc
+selection_foreground #001e26
diff --git a/kitty/kitty-themes/themes/Solarized_Dark_Higher_Contrast.conf b/kitty/kitty-themes/themes/Solarized_Dark_Higher_Contrast.conf
new file mode 100644
index 000000000..8477ea1f6
--- /dev/null
+++ b/kitty/kitty-themes/themes/Solarized_Dark_Higher_Contrast.conf
@@ -0,0 +1,21 @@
+background #001e26
+foreground #9bc1c2
+cursor #f34a00
+selection_background #003747
+color0 #002731
+color8 #006388
+color1 #d01b24
+color9 #f4153b
+color2 #6bbe6c
+color10 #50ee84
+color3 #a57705
+color11 #b17e28
+color4 #2075c7
+color12 #178dc7
+color5 #c61b6e
+color13 #e14d8e
+color6 #259185
+color14 #00b29e
+color7 #e9e2cb
+color15 #fcf4dc
+selection_foreground #001e26
diff --git a/kitty/kitty-themes/themes/Solarized_Light.conf b/kitty/kitty-themes/themes/Solarized_Light.conf
new file mode 100644
index 000000000..36e101b15
--- /dev/null
+++ b/kitty/kitty-themes/themes/Solarized_Light.conf
@@ -0,0 +1,21 @@
+background #fdf6e3
+foreground #52676f
+cursor #52676f
+selection_background #e9e2cb
+color0 #e4e4e4
+color8 #ffffd7
+color1 #d70000
+color9 #d75f00
+color2 #5f8700
+color10 #585858
+color3 #af8700
+color11 #626262
+color4 #0087ff
+color12 #808080
+color5 #af005f
+color13 #5f5faf
+color6 #00afaf
+color14 #8a8a8a
+color7 #262626
+color15 #1c1c1c
+selection_foreground #fcf4dc
diff --git a/kitty/kitty-themes/themes/Source_Code_X.conf b/kitty/kitty-themes/themes/Source_Code_X.conf
new file mode 100644
index 000000000..d3aefa367
--- /dev/null
+++ b/kitty/kitty-themes/themes/Source_Code_X.conf
@@ -0,0 +1,21 @@
+foreground #000000
+background #1f1f24
+cursor #7F7F7F
+color0 #4e596b
+color8 #91a0b1
+color1 #fb695d
+color7 #BFBFBF
+color9 #fb695d
+color2 #74b391
+color10 #aef37c
+color3 #fc8e3e
+color11 #fc8e3e
+color4 #9586f4
+color12 #53a4fb
+color5 #fb5ea3
+color13 #fb5ea3
+color6 #79c8b6
+color14 #83d2c0
+color15 #91a0b1
+selection_foreground #1f1f24
+selection_background #000000
diff --git a/kitty/kitty-themes/themes/SpaceGray.conf b/kitty/kitty-themes/themes/SpaceGray.conf
new file mode 100644
index 000000000..ba9afebfd
--- /dev/null
+++ b/kitty/kitty-themes/themes/SpaceGray.conf
@@ -0,0 +1,21 @@
+background #20232c
+foreground #b2b8c2
+cursor #b2b8c2
+selection_background #15171e
+color0 #000000
+color8 #000000
+color1 #af4b57
+color9 #af4b57
+color2 #87b279
+color10 #87b279
+color3 #e5c078
+color11 #e5c078
+color4 #7c8fa3
+color12 #7c8fa3
+color5 #a37996
+color13 #a37996
+color6 #84a6a4
+color14 #84a6a4
+color7 #b2b8c2
+color15 #fffefe
+selection_foreground #20232c
diff --git a/kitty/kitty-themes/themes/SpaceGray_Eighties.conf b/kitty/kitty-themes/themes/SpaceGray_Eighties.conf
new file mode 100644
index 000000000..8249a17c0
--- /dev/null
+++ b/kitty/kitty-themes/themes/SpaceGray_Eighties.conf
@@ -0,0 +1,21 @@
+background #212121
+foreground #bdb9ae
+cursor #bbbbbb
+selection_background #262e35
+color0 #15171c
+color8 #545454
+color1 #ec5f67
+color9 #ff6973
+color2 #80a763
+color10 #93d393
+color3 #fdc253
+color11 #ffd156
+color4 #5485c0
+color12 #4d83d0
+color5 #bf83c0
+color13 #ff55ff
+color6 #57c2c0
+color14 #83e8e4
+color7 #eeece7
+color15 #ffffff
+selection_foreground #212121
diff --git a/kitty/kitty-themes/themes/SpaceGray_Eighties_Dull.conf b/kitty/kitty-themes/themes/SpaceGray_Eighties_Dull.conf
new file mode 100644
index 000000000..eabf18450
--- /dev/null
+++ b/kitty/kitty-themes/themes/SpaceGray_Eighties_Dull.conf
@@ -0,0 +1,21 @@
+background #212121
+foreground #c8c5bc
+cursor #bbbbbb
+selection_background #262e36
+color0 #15171c
+color8 #545454
+color1 #b14956
+color9 #ec5f67
+color2 #91b377
+color10 #88e985
+color3 #c6725a
+color11 #fdc253
+color4 #7b8fa4
+color12 #5485c0
+color5 #a5779e
+color13 #bf83c0
+color6 #7fcccb
+color14 #58c2c0
+color7 #b2b8c2
+color15 #ffffff
+selection_foreground #212121
diff --git a/kitty/kitty-themes/themes/Spacedust.conf b/kitty/kitty-themes/themes/Spacedust.conf
new file mode 100644
index 000000000..08b93c4b7
--- /dev/null
+++ b/kitty/kitty-themes/themes/Spacedust.conf
@@ -0,0 +1,21 @@
+background #0a1e24
+foreground #ecefc1
+cursor #708183
+selection_background #0a385c
+color0 #6e5246
+color8 #674c31
+color1 #e35a00
+color9 #ff8a39
+color2 #5cab96
+color10 #adcab8
+color3 #e3cd7b
+color11 #ffc777
+color4 #0e548b
+color12 #67a0cd
+color5 #e35a00
+color13 #ff8a39
+color6 #06afc7
+color14 #83a6b3
+color7 #f0f1ce
+color15 #fefff0
+selection_foreground #0a1e24
diff --git a/kitty/kitty-themes/themes/Spiderman.conf b/kitty/kitty-themes/themes/Spiderman.conf
new file mode 100644
index 000000000..a72bbcadc
--- /dev/null
+++ b/kitty/kitty-themes/themes/Spiderman.conf
@@ -0,0 +1,21 @@
+background #1b1d1e
+foreground #e2e2e2
+cursor #2b3fff
+selection_background #070e4f
+color0 #1b1d1e
+color8 #505354
+color1 #e60712
+color9 #ff0325
+color2 #e22828
+color10 #ff3238
+color3 #e24655
+color11 #fe3935
+color4 #2b3fff
+color12 #1d4fff
+color5 #2435db
+color13 #737bff
+color6 #3255ff
+color14 #6083ff
+color7 #fffef6
+color15 #fefff9
+selection_foreground #1b1d1e
diff --git a/kitty/kitty-themes/themes/Spring.conf b/kitty/kitty-themes/themes/Spring.conf
new file mode 100644
index 000000000..4df6d1c25
--- /dev/null
+++ b/kitty/kitty-themes/themes/Spring.conf
@@ -0,0 +1,21 @@
+background #ffffff
+foreground #4d4d4c
+cursor #4d4d4c
+selection_background #d6d6d6
+color0 #000000
+color8 #000000
+color1 #ff4c83
+color9 #ff0021
+color2 #1f8c3a
+color10 #1fc231
+color3 #1fc95a
+color11 #d4b706
+color4 #1cd2ee
+color12 #15a9fd
+color5 #8959a8
+color13 #8959a8
+color6 #3e999f
+color14 #3e999f
+color7 #fffefe
+color15 #fffefe
+selection_foreground #ffffff
diff --git a/kitty/kitty-themes/themes/Square.conf b/kitty/kitty-themes/themes/Square.conf
new file mode 100644
index 000000000..e5457a5ea
--- /dev/null
+++ b/kitty/kitty-themes/themes/Square.conf
@@ -0,0 +1,21 @@
+background #1a1a1a
+foreground #acacab
+cursor #fbfacc
+selection_background #4d4d4d
+color0 #050505
+color8 #141414
+color1 #e9897c
+color9 #f99286
+color2 #b6377d
+color10 #c3f786
+color3 #ecebbe
+color11 #fcfbcc
+color4 #a9cdeb
+color12 #b6defb
+color5 #75507b
+color13 #ad7fa8
+color6 #c9caec
+color14 #d7d9fc
+color7 #f2f2f2
+color15 #e2e2e2
+selection_foreground #1a1a1a
diff --git a/kitty/kitty-themes/themes/Sundried.conf b/kitty/kitty-themes/themes/Sundried.conf
new file mode 100644
index 000000000..d5ff99d80
--- /dev/null
+++ b/kitty/kitty-themes/themes/Sundried.conf
@@ -0,0 +1,21 @@
+background #1a1818
+foreground #c8c8c8
+cursor #fffefe
+selection_background #302b2a
+color0 #302b2a
+color8 #4d4d47
+color1 #a6463d
+color9 #aa000c
+color2 #577644
+color10 #128c20
+color3 #9c5f2a
+color11 #fc6a20
+color4 #485a98
+color12 #7898f7
+color5 #854551
+color13 #fc89a0
+color6 #9c814e
+color14 #fad384
+color7 #c8c8c8
+color15 #fffefe
+selection_foreground #1a1818
diff --git a/kitty/kitty-themes/themes/Symfonic.conf b/kitty/kitty-themes/themes/Symfonic.conf
new file mode 100644
index 000000000..9b5e0d333
--- /dev/null
+++ b/kitty/kitty-themes/themes/Symfonic.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #ffffff
+cursor #dc322f
+selection_background #073642
+color0 #000000
+color8 #1b1d21
+color1 #dc322f
+color9 #dc322f
+color2 #56db3a
+color10 #56db3a
+color3 #ff8400
+color11 #ff8400
+color4 #0084d4
+color12 #0084d4
+color5 #b729d9
+color13 #b729d9
+color6 #ccccff
+color14 #ccccff
+color7 #ffffff
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Tango_Dark.conf b/kitty/kitty-themes/themes/Tango_Dark.conf
new file mode 100644
index 000000000..6a4673ae3
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tango_Dark.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #ffffff
+cursor #ffffff
+selection_background #b4d5ff
+color0 #000000
+color8 #545753
+color1 #cc0000
+color9 #ef2828
+color2 #4e9a05
+color10 #8ae234
+color3 #c4a000
+color11 #fce94e
+color4 #3464a4
+color12 #719ecf
+color5 #74507a
+color13 #ad7ea7
+color6 #05989a
+color14 #34e2e2
+color7 #d3d7cf
+color15 #ededec
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Tango_Light.conf b/kitty/kitty-themes/themes/Tango_Light.conf
new file mode 100644
index 000000000..07f82bf64
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tango_Light.conf
@@ -0,0 +1,21 @@
+background #ffffff
+foreground #000000
+cursor #000000
+selection_background #b4d5ff
+color0 #000000
+color8 #545753
+color1 #cc0000
+color9 #ef2828
+color2 #4e9a05
+color10 #8ae234
+color3 #c4a000
+color11 #fce94e
+color4 #3464a4
+color12 #719ecf
+color5 #74507a
+color13 #ad7ea7
+color6 #05989a
+color14 #34e2e2
+color7 #d3d7cf
+color15 #ededec
+selection_foreground #ffffff
diff --git a/kitty/kitty-themes/themes/Teerb.conf b/kitty/kitty-themes/themes/Teerb.conf
new file mode 100644
index 000000000..9e9cab76d
--- /dev/null
+++ b/kitty/kitty-themes/themes/Teerb.conf
@@ -0,0 +1,21 @@
+background #262626
+foreground #d0d0d0
+cursor #e3c8ae
+selection_background #4d4d4d
+color0 #1c1c1c
+color8 #1c1c1c
+color1 #d68686
+color9 #d68686
+color2 #aed686
+color10 #aed686
+color3 #d7af87
+color11 #e4c9af
+color4 #86aed6
+color12 #86aed6
+color5 #d6aed6
+color13 #d6aed6
+color6 #8adbb4
+color14 #b1e7dd
+color7 #d0d0d0
+color15 #efefef
+selection_foreground #262626
diff --git a/kitty/kitty-themes/themes/Thayer_Bright.conf b/kitty/kitty-themes/themes/Thayer_Bright.conf
new file mode 100644
index 000000000..b74bc6084
--- /dev/null
+++ b/kitty/kitty-themes/themes/Thayer_Bright.conf
@@ -0,0 +1,21 @@
+background #1b1d1e
+foreground #f8f8f8
+cursor #fc971e
+selection_background #4d4d4d
+color0 #1b1d1e
+color8 #505354
+color1 #f92672
+color9 #ff5995
+color2 #4df740
+color10 #b6e354
+color3 #f3fd21
+color11 #feed6c
+color4 #2656d6
+color12 #3f78ff
+color5 #8c54fe
+color13 #9e6ffe
+color6 #37c8b4
+color14 #23ced4
+color7 #ccccc6
+color15 #f8f8f2
+selection_foreground #1b1d1e
diff --git a/kitty/kitty-themes/themes/The_Hulk.conf b/kitty/kitty-themes/themes/The_Hulk.conf
new file mode 100644
index 000000000..81bd962d5
--- /dev/null
+++ b/kitty/kitty-themes/themes/The_Hulk.conf
@@ -0,0 +1,21 @@
+background #1b1d1e
+foreground #b4b4b4
+cursor #15b61a
+selection_background #4d4f4c
+color0 #1b1d1e
+color8 #505354
+color1 #259d1a
+color9 #8dff2a
+color2 #13ce2f
+color10 #48ff76
+color3 #62e456
+color11 #3afe15
+color4 #2424f4
+color12 #4f6a95
+color5 #641e73
+color13 #72579d
+color6 #378ca9
+color14 #3f85a5
+color7 #d8d8d0
+color15 #e5e5e0
+selection_foreground #1b1d1e
diff --git a/kitty/kitty-themes/themes/Tomorrow.conf b/kitty/kitty-themes/themes/Tomorrow.conf
new file mode 100644
index 000000000..23a8dfc5f
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tomorrow.conf
@@ -0,0 +1,21 @@
+background #ffffff
+foreground #4c4c4c
+cursor #4c4c4c
+selection_background #d6d6d6
+color0 #000000
+color8 #000000
+color1 #c82828
+color9 #c82828
+color2 #708b00
+color10 #708b00
+color3 #e9b600
+color11 #e9b600
+color4 #4170ae
+color12 #4170ae
+color5 #8958a7
+color13 #8958a7
+color6 #3d999f
+color14 #3d999f
+color7 #fffefe
+color15 #fffefe
+selection_foreground #ffffff
diff --git a/kitty/kitty-themes/themes/Tomorrow_Night.conf b/kitty/kitty-themes/themes/Tomorrow_Night.conf
new file mode 100644
index 000000000..0bf3cf7f5
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tomorrow_Night.conf
@@ -0,0 +1,21 @@
+background #1d1f21
+foreground #c4c8c5
+cursor #c4c8c5
+selection_background #363a41
+color0 #000000
+color8 #000000
+color1 #cc6666
+color9 #cc6666
+color2 #b5bd68
+color10 #b5bd68
+color3 #f0c574
+color11 #f0c574
+color4 #80a1bd
+color12 #80a1bd
+color5 #b294ba
+color13 #b294ba
+color6 #8abdb6
+color14 #8abdb6
+color7 #fffefe
+color15 #fffefe
+selection_foreground #1d1f21
diff --git a/kitty/kitty-themes/themes/Tomorrow_Night_Blue.conf b/kitty/kitty-themes/themes/Tomorrow_Night_Blue.conf
new file mode 100644
index 000000000..b32cbfdef
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tomorrow_Night_Blue.conf
@@ -0,0 +1,21 @@
+background #002450
+foreground #fffefe
+cursor #fffefe
+selection_background #003e8e
+color0 #000000
+color8 #000000
+color1 #ff9ca3
+color9 #ff9ca3
+color2 #d0f0a8
+color10 #d0f0a8
+color3 #ffedac
+color11 #ffedac
+color4 #badaff
+color12 #badaff
+color5 #ebbaff
+color13 #ebbaff
+color6 #99ffff
+color14 #99ffff
+color7 #fffefe
+color15 #fffefe
+selection_foreground #002450
diff --git a/kitty/kitty-themes/themes/Tomorrow_Night_Bright.conf b/kitty/kitty-themes/themes/Tomorrow_Night_Bright.conf
new file mode 100644
index 000000000..346f3dca4
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tomorrow_Night_Bright.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #e9e9e9
+cursor #e9e9e9
+selection_background #424242
+color0 #000000
+color8 #000000
+color1 #d44d53
+color9 #d44d53
+color2 #b9c949
+color10 #b9c949
+color3 #e6c446
+color11 #e6c446
+color4 #79a6da
+color12 #79a6da
+color5 #c396d7
+color13 #c396d7
+color6 #70c0b1
+color14 #70c0b1
+color7 #fffefe
+color15 #fffefe
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/Tomorrow_Night_Eighties.conf b/kitty/kitty-themes/themes/Tomorrow_Night_Eighties.conf
new file mode 100644
index 000000000..404efc7cc
--- /dev/null
+++ b/kitty/kitty-themes/themes/Tomorrow_Night_Eighties.conf
@@ -0,0 +1,21 @@
+background #2c2c2c
+foreground #cccccc
+cursor #cccccc
+selection_background #505050
+color0 #000000
+color8 #000000
+color1 #f17779
+color9 #f17779
+color2 #99cc99
+color10 #99cc99
+color3 #ffcc66
+color11 #ffcc66
+color4 #6699cc
+color12 #6699cc
+color5 #cc99cc
+color13 #cc99cc
+color6 #66cccc
+color14 #66cccc
+color7 #fffefe
+color15 #fffefe
+selection_foreground #2c2c2c
diff --git a/kitty/kitty-themes/themes/ToyChest.conf b/kitty/kitty-themes/themes/ToyChest.conf
new file mode 100644
index 000000000..040cb8d03
--- /dev/null
+++ b/kitty/kitty-themes/themes/ToyChest.conf
@@ -0,0 +1,21 @@
+background #23364a
+foreground #30cf7b
+cursor #d4d4d4
+selection_background #5f207a
+color0 #2c3f57
+color8 #326889
+color1 #be2d26
+color9 #dd5943
+color2 #199171
+color10 #30cf7b
+color3 #da8e26
+color11 #e7d74b
+color4 #325d96
+color12 #33a5d9
+color5 #8a5ddb
+color13 #ad6bdc
+color6 #35a08f
+color14 #41c3ad
+color7 #23d082
+color15 #d4d4d4
+selection_foreground #23364a
diff --git a/kitty/kitty-themes/themes/Treehouse.conf b/kitty/kitty-themes/themes/Treehouse.conf
new file mode 100644
index 000000000..940751e54
--- /dev/null
+++ b/kitty/kitty-themes/themes/Treehouse.conf
@@ -0,0 +1,21 @@
+background #191919
+foreground #776b53
+cursor #fac814
+selection_background #776b53
+color0 #321200
+color8 #423625
+color1 #b1270e
+color9 #ed5c20
+color2 #44a900
+color10 #55f237
+color3 #a9810b
+color11 #f1b731
+color4 #578499
+color12 #85cfec
+color5 #96363c
+color13 #e04b5a
+color6 #b2591d
+color14 #f07c14
+color7 #776b53
+color15 #ffc800
+selection_foreground #191919
diff --git a/kitty/kitty-themes/themes/Twilight.conf b/kitty/kitty-themes/themes/Twilight.conf
new file mode 100644
index 000000000..452a4d260
--- /dev/null
+++ b/kitty/kitty-themes/themes/Twilight.conf
@@ -0,0 +1,21 @@
+background #141414
+foreground #feffd3
+cursor #ffffff
+selection_background #303030
+color0 #141414
+color8 #262626
+color1 #c06c43
+color9 #dd7c4c
+color2 #afb979
+color10 #cbd88c
+color3 #c2a86c
+color11 #e1c47d
+color4 #444649
+color12 #5a5d61
+color5 #b4be7b
+color13 #d0db8e
+color6 #778284
+color14 #8a989a
+color7 #feffd3
+color15 #feffd3
+selection_foreground #141414
diff --git a/kitty/kitty-themes/themes/Ubuntu.conf b/kitty/kitty-themes/themes/Ubuntu.conf
new file mode 100644
index 000000000..96e9d09da
--- /dev/null
+++ b/kitty/kitty-themes/themes/Ubuntu.conf
@@ -0,0 +1,21 @@
+background #300a24
+foreground #eeeeec
+cursor #bbbbbb
+selection_background #b4d5ff
+color0 #2e3436
+color8 #555753
+color1 #cc0000
+color9 #ef2929
+color2 #4e9a06
+color10 #8ae234
+color3 #c4a000
+color11 #fce94f
+color4 #3465a4
+color12 #729fcf
+color5 #75507b
+color13 #ad7fa8
+color6 #06989a
+color14 #34e2e2
+color7 #d3d7cf
+color15 #eeeeec
+selection_foreground #300a24
diff --git a/kitty/kitty-themes/themes/Urple.conf b/kitty/kitty-themes/themes/Urple.conf
new file mode 100644
index 000000000..a29dcad75
--- /dev/null
+++ b/kitty/kitty-themes/themes/Urple.conf
@@ -0,0 +1,21 @@
+background #1b1b23
+foreground #86799a
+cursor #a062ea
+selection_background #a062ea
+color0 #000000
+color8 #5c3125
+color1 #af425b
+color9 #ff6387
+color2 #37a315
+color10 #28e51f
+color3 #ac5b41
+color11 #f08061
+color4 #554d9a
+color12 #8579ed
+color5 #6c3ba1
+color13 #a05dee
+color6 #808080
+color14 #eaeaea
+color7 #87799c
+color15 #bfa3ff
+selection_foreground #1b1b23
diff --git a/kitty/kitty-themes/themes/Vaughn.conf b/kitty/kitty-themes/themes/Vaughn.conf
new file mode 100644
index 000000000..26d188585
--- /dev/null
+++ b/kitty/kitty-themes/themes/Vaughn.conf
@@ -0,0 +1,21 @@
+background #25234e
+foreground #dcdccc
+cursor #ff5555
+selection_background #b5d5ff
+color0 #24234f
+color8 #709080
+color1 #705050
+color9 #dca3a3
+color2 #60b48a
+color10 #60b48a
+color3 #dfaf8f
+color11 #f0dfaf
+color4 #5454ff
+color12 #5454ff
+color5 #f08cc3
+color13 #ec93d3
+color6 #8cd0d3
+color14 #93e0e3
+color7 #709080
+color15 #ffffff
+selection_foreground #25234e
diff --git a/kitty/kitty-themes/themes/VibrantInk.conf b/kitty/kitty-themes/themes/VibrantInk.conf
new file mode 100644
index 000000000..5fbd281a0
--- /dev/null
+++ b/kitty/kitty-themes/themes/VibrantInk.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #ffffff
+cursor #ffffff
+selection_background #b4d5ff
+color0 #868686
+color8 #545454
+color1 #ff6600
+color9 #ff0000
+color2 #ccff04
+color10 #00ff00
+color3 #ffcc00
+color11 #ffff00
+color4 #44b3cc
+color12 #0000ff
+color5 #9933cc
+color13 #ff00ff
+color6 #44b3cc
+color14 #00ffff
+color7 #f4f4f4
+color15 #e5e5e5
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/WarmNeon.conf b/kitty/kitty-themes/themes/WarmNeon.conf
new file mode 100644
index 000000000..3256f5d8c
--- /dev/null
+++ b/kitty/kitty-themes/themes/WarmNeon.conf
@@ -0,0 +1,21 @@
+background #3f3f3f
+foreground #afdab6
+cursor #2fff24
+selection_background #b0ad21
+color0 #000000
+color8 #fdfcfc
+color1 #e24345
+color9 #e86f71
+color2 #38b139
+color10 #9bc08f
+color3 #dae145
+color11 #ddd979
+color4 #4260c5
+color12 #7a90d5
+color5 #f81ffb
+color13 #f674b9
+color6 #29bad3
+color14 #5ed1e4
+color7 #d0b8a3
+color15 #d8c8bb
+selection_foreground #3f3f3f
diff --git a/kitty/kitty-themes/themes/Wez.conf b/kitty/kitty-themes/themes/Wez.conf
new file mode 100644
index 000000000..11706abdd
--- /dev/null
+++ b/kitty/kitty-themes/themes/Wez.conf
@@ -0,0 +1,21 @@
+background #000000
+foreground #b3b3b3
+cursor #52ad70
+selection_background #4c52f8
+color0 #000000
+color8 #555555
+color1 #cc5555
+color9 #ff5555
+color2 #55cc55
+color10 #55ff55
+color3 #cdcd55
+color11 #ffff55
+color4 #5455cb
+color12 #5555ff
+color5 #cc55cc
+color13 #ff55ff
+color6 #7acaca
+color14 #55ffff
+color7 #cccccc
+color15 #ffffff
+selection_foreground #000000
diff --git a/kitty/kitty-themes/themes/WildCherry.conf b/kitty/kitty-themes/themes/WildCherry.conf
new file mode 100644
index 000000000..a4bfa476f
--- /dev/null
+++ b/kitty/kitty-themes/themes/WildCherry.conf
@@ -0,0 +1,21 @@
+background #1f1626
+foreground #d9faff
+cursor #dd00ff
+selection_background #002731
+color0 #000506
+color8 #009cc9
+color1 #d94085
+color9 #da6bab
+color2 #2ab250
+color10 #f4dba5
+color3 #ffd06e
+color11 #eac066
+color4 #873bdb
+color12 #2f8bb9
+color5 #ececec
+color13 #ae636b
+color6 #c1b8b6
+color14 #ff919d
+color7 #fff8dd
+color15 #e4838d
+selection_foreground #1f1626
diff --git a/kitty/kitty-themes/themes/Wombat.conf b/kitty/kitty-themes/themes/Wombat.conf
new file mode 100644
index 000000000..d4616fc1e
--- /dev/null
+++ b/kitty/kitty-themes/themes/Wombat.conf
@@ -0,0 +1,21 @@
+background #171717
+foreground #ded9ce
+cursor #bbbbbb
+selection_background #453a39
+color0 #000000
+color8 #313131
+color1 #ff605a
+color9 #f58b7f
+color2 #b1e869
+color10 #dcf88f
+color3 #ead89c
+color11 #eee5b2
+color4 #5da9f6
+color12 #a5c7ff
+color5 #e86aff
+color13 #ddaaff
+color6 #82fff6
+color14 #b6fff9
+color7 #ded9ce
+color15 #fefffe
+selection_foreground #171717
diff --git a/kitty/kitty-themes/themes/Wryan.conf b/kitty/kitty-themes/themes/Wryan.conf
new file mode 100644
index 000000000..73d758d34
--- /dev/null
+++ b/kitty/kitty-themes/themes/Wryan.conf
@@ -0,0 +1,21 @@
+background #101010
+foreground #999993
+cursor #9d9eca
+selection_background #4d4d4d
+color0 #333333
+color8 #3d3d3d
+color1 #8c4665
+color9 #bf4d80
+color2 #287373
+color10 #53a6a6
+color3 #7c7c99
+color11 #9e9ecb
+color4 #395573
+color12 #477ab3
+color5 #5e468c
+color13 #7e62b3
+color6 #31658c
+color14 #6096bf
+color7 #899ca1
+color15 #c0c0c0
+selection_foreground #101010
diff --git a/kitty/kitty-themes/themes/Zenburn.conf b/kitty/kitty-themes/themes/Zenburn.conf
new file mode 100644
index 000000000..032b99b41
--- /dev/null
+++ b/kitty/kitty-themes/themes/Zenburn.conf
@@ -0,0 +1,25 @@
+# Zenburn by jnurmine, https://github.com/jnurmine/Zenburn
+# This work is licensed under the terms of the GNU GPL license.
+# For a copy, see http://www.gnu.org/licenses/gpl.html.
+
+background #3f3f3f
+foreground #dcdccc
+cursor #73635a
+selection_background #21322f
+color0 #4d4d4d
+color8 #709080
+color1 #705050
+color9 #dca3a3
+color2 #60b48a
+color10 #c3bf9f
+color3 #f0deae
+color11 #dfcf9f
+color4 #506070
+color12 #94bff3
+color5 #dc8cc3
+color13 #ec93d3
+color6 #8cd0d3
+color14 #93e0e3
+color7 #dcdccc
+color15 #ffffff
+selection_foreground #3f3f3f
diff --git a/kitty/kitty-themes/themes/ayu.conf b/kitty/kitty-themes/themes/ayu.conf
new file mode 100644
index 000000000..80302632a
--- /dev/null
+++ b/kitty/kitty-themes/themes/ayu.conf
@@ -0,0 +1,21 @@
+background #0e1419
+foreground #e5e1cf
+cursor #f19618
+selection_background #243340
+color0 #000000
+color8 #323232
+color1 #ff3333
+color9 #ff6565
+color2 #b8cc52
+color10 #e9fe83
+color3 #e6c446
+color11 #fff778
+color4 #36a3d9
+color12 #68d4ff
+color5 #f07078
+color13 #ffa3aa
+color6 #95e5cb
+color14 #c7fffc
+color7 #ffffff
+color15 #ffffff
+selection_foreground #0e1419
diff --git a/kitty/kitty-themes/themes/ayu_light.conf b/kitty/kitty-themes/themes/ayu_light.conf
new file mode 100644
index 000000000..35c532ce0
--- /dev/null
+++ b/kitty/kitty-themes/themes/ayu_light.conf
@@ -0,0 +1,21 @@
+background #fafafa
+foreground #5b6673
+cursor #ff6900
+selection_background #f0ede4
+color0 #000000
+color8 #323232
+color1 #ff3333
+color9 #ff6565
+color2 #86b200
+color10 #b8e532
+color3 #f19618
+color11 #ffc849
+color4 #41a6d9
+color12 #73d7ff
+color5 #f07078
+color13 #ffa3aa
+color6 #4cbe99
+color14 #7ff0cb
+color7 #ffffff
+color15 #ffffff
+selection_foreground #fafafa
diff --git a/kitty/kitty-themes/themes/ayu_mirage.conf b/kitty/kitty-themes/themes/ayu_mirage.conf
new file mode 100644
index 000000000..19d2e4055
--- /dev/null
+++ b/kitty/kitty-themes/themes/ayu_mirage.conf
@@ -0,0 +1,21 @@
+background #212733
+foreground #d9d7ce
+cursor #ffcc66
+selection_background #343f4c
+color0 #191e2a
+color8 #686868
+color1 #ed8274
+color9 #f28779
+color2 #a6cc70
+color10 #bae67e
+color3 #fad07b
+color11 #ffd580
+color4 #6dcbfa
+color12 #73d0ff
+color5 #cfbafa
+color13 #d4bfff
+color6 #90e1c6
+color14 #95e6cb
+color7 #c7c7c7
+color15 #ffffff
+selection_foreground #212733
diff --git a/kitty/kitty-themes/themes/gruvbox_dark.conf b/kitty/kitty-themes/themes/gruvbox_dark.conf
new file mode 100644
index 000000000..369da8d42
--- /dev/null
+++ b/kitty/kitty-themes/themes/gruvbox_dark.conf
@@ -0,0 +1,49 @@
+# gruvbox dark by morhetz, https://github.com/morhetz/gruvbox
+# This work is licensed under the terms of the MIT license.
+# For a copy, see https://opensource.org/licenses/MIT.
+
+background #282828
+foreground #ebdbb2
+
+cursor #928374
+
+selection_foreground #928374
+selection_background #3c3836
+
+color0 #282828
+color8 #928374
+
+# red
+color1 #cc241d
+# light red
+color9 #fb4934
+
+# green
+color2 #98971a
+# light green
+color10 #b8bb26
+
+# yellow
+color3 #d79921
+# light yellow
+color11 #fabd2d
+
+# blue
+color4 #458588
+# light blue
+color12 #83a598
+
+# magenta
+color5 #b16286
+# light magenta
+color13 #d3869b
+
+# cyan
+color6 #689d6a
+# lighy cyan
+color14 #8ec07c
+
+# light gray
+color7 #a89984
+# dark gray
+color15 #928374
diff --git a/kitty/kitty-themes/themes/gruvbox_light.conf b/kitty/kitty-themes/themes/gruvbox_light.conf
new file mode 100644
index 000000000..6d8b89b2f
--- /dev/null
+++ b/kitty/kitty-themes/themes/gruvbox_light.conf
@@ -0,0 +1,49 @@
+# gruvbox light by morhetz, https://github.com/morhetz/gruvbox
+# This work is licensed under the terms of the MIT license.
+# For a copy, see https://opensource.org/licenses/MIT.
+
+background #fbf1c7
+foreground #3c3836
+
+cursor #928374
+
+selection_foreground #3c3836
+selection_background #928374
+
+color0 #fbf1c7
+color8 #282828
+
+# red
+color1 #cc241d
+# light red
+color9 #9d0006
+
+# green
+color2 #98971a
+# light green
+color10 #79740e
+
+# yellow
+color3 #d79921
+# light yellow
+color11 #b57614
+
+# blue
+color4 #458588
+# light blue
+color12 #076678
+
+# magenta
+color5 #b16286
+# light magenta
+color13 #8f3f71
+
+# cyan
+color6 #689d6a
+# lighy cyan
+color14 #427b58
+
+# light gray
+color7 #7c6f64
+# dark gray
+color15 #928374
diff --git a/kitty/kitty-themes/themes/idleToes.conf b/kitty/kitty-themes/themes/idleToes.conf
new file mode 100644
index 000000000..941d4b204
--- /dev/null
+++ b/kitty/kitty-themes/themes/idleToes.conf
@@ -0,0 +1,21 @@
+background #323232
+foreground #ffffff
+cursor #d6d6d6
+selection_background #5b5b5b
+color0 #323232
+color8 #535353
+color1 #d25252
+color9 #f07070
+color2 #7fe173
+color10 #9dff90
+color3 #ffc66d
+color11 #ffe48b
+color4 #4098ff
+color12 #5eb7f7
+color5 #f57fff
+color13 #ff9dff
+color6 #bed6ff
+color14 #dcf4ff
+color7 #eeeeec
+color15 #ffffff
+selection_foreground #323232
diff --git a/kitty/kitty-themes/themes/snazzy.conf b/kitty/kitty-themes/themes/snazzy.conf
new file mode 100644
index 000000000..2ed5ff578
--- /dev/null
+++ b/kitty/kitty-themes/themes/snazzy.conf
@@ -0,0 +1,46 @@
+# snazzy by Connor Holyday <connorholyday@gmail.com> (holyday.me)
+# This work is licensed under the terms of the MIT license.
+# For a copy, see https://opensource.org/licenses/MIT.
+
+# Snazzy Colorscheme for Kitty
+# Based on https://github.com/sindresorhus/hyper-snazzy
+
+foreground #eff0eb
+background #282a36
+selection_foreground #000000
+selection_background #FFFACD
+url_color #0087BD
+cursor #97979B
+cursor_text_color #282A36
+
+# black
+color0 #282a36
+color8 #686868
+
+# red
+color1 #FF5C57
+color9 #FF5C57
+
+# green
+color2 #5AF78E
+color10 #5AF78E
+
+# yellow
+color3 #F3F99D
+color11 #F3F99D
+
+# blue
+color4 #57C7FF
+color12 #57C7FF
+
+# magenta
+color5 #FF6AC1
+color13 #FF6AC1
+
+# cyan
+color6 #9AEDFE
+color14 #9AEDFE
+
+# white
+color7 #F1F1F0
+color15 #EFF0EB
diff --git a/kitty/kitty.conf b/kitty/kitty.conf
new file mode 100755
index 000000000..3c629a501
--- /dev/null
+++ b/kitty/kitty.conf
@@ -0,0 +1,11 @@
+#include ./theme.conf
+
+font_family EnvyCodeR Nerd Font Regular
+
+title
+ Kitty
+
+# BEGIN_KITTY_THEME
+# Floraverse
+include current-theme.conf
+# END_KITTY_THEME
diff --git a/kitty/kitty.conf.bak b/kitty/kitty.conf.bak
new file mode 100644
index 000000000..66489ded9
--- /dev/null
+++ b/kitty/kitty.conf.bak
@@ -0,0 +1,11 @@
+#include ./theme.conf
+
+font_family EnvyCodeR Nerd Font Regular
+
+title
+ Kitty
+
+# BEGIN_KITTY_THEME
+# Cyberpunk Neon
+include current-theme.conf
+# END_KITTY_THEME
diff --git a/kitty/theme.conf b/kitty/theme.conf
new file mode 120000
index 000000000..1feda60c0
--- /dev/null
+++ b/kitty/theme.conf
@@ -0,0 +1 @@
+./Floraverse.conf \ No newline at end of file
diff --git a/rofi/config.rasi b/rofi/config.rasi
new file mode 100644
index 000000000..4f7bbae2f
--- /dev/null
+++ b/rofi/config.rasi
@@ -0,0 +1,21 @@
+configuration {
+ modi: "drun,run";
+ font: "EnvyCodeR Nerd Font 11";
+ show-icons: true;
+ icon-theme: "kora";
+ display-drun: "APPS";
+ display-run: "RUN";
+ display-filebrowser: "FILES";
+ display-window: "WINDOW";
+ drun-display-format: "{name}";
+ hover-select: false;
+ scroll-method: 1;
+ me-select-entry: "";
+ me-accept-entry: "MousePrimary";
+ window-format: "{w} · {c} · {t}";
+
+}
+
+
+
+@import "~/.cache/wal/colors-rofi-dark.rasi" \ No newline at end of file
diff --git a/runcat/icons/cat/my-running-0-symbolic.svg b/runcat/icons/cat/my-running-0-symbolic.svg
new file mode 100644
index 000000000..f7965ac9b
--- /dev/null
+++ b/runcat/icons/cat/my-running-0-symbolic.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ height="248"
+ width="388"
+>
+ <metadata>
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title>RunCat: Frame 0</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <title>RunCat: Frame 0</title>
+ <path
+ transform="translate(0 -70)"
+ d="m 321.24,116.28019 c -0.01,-13.464 1.661,-33.778997 -8.15,-35.162997 -9.811,-1.384 -25.074,26.578997 -25.074,26.578997 l -4.43,0.554 c 0,0 3.6,-26.025997 -8.86,-23.256997 -12.46,2.769 -27.687,41.810997 -27.687,41.810997 0,0 -5.538,4.429 -9.414,18.3 -3.876,13.871 -18.55,14.09 -42.915,11.045 -24.365,-3.045 -47.345,17.443 -47.345,17.443 -22.15,-0.831 -40.977,2.215 -55.374,7.752 -14.397,5.537 -32.117,23.811 -55.375,22.15 -23.258,-1.661 -34.332,2.492 -32.947,10.521 1.385,8.029 9.413,9.414 22.426,10.8 13.013,1.386 44.853,-7.476 65.342,-19.381 a 78.147,78.147 0 0 1 41.53,-10.143 c -2.768,24.19 6.646,21.218 5.538,45.029 -1.108,23.811 8.583,46.791 24.365,59.527 15.782,12.736 21.6,6.091 22.149,-1.661 0.549,-7.752 -15.781,-27.687 -16.335,-35.44 -0.554,-7.753 9.137,-1.384 10.244,0.554 1.107,1.938 16.889,17.166 29.9,20.489 13.011,3.323 7.2,-15.782 2.492,-27.134 -4.708,-11.352 3.6,-22.15 19.1,-24.641 15.5,-2.491 22.7,5.814 19.658,16.058 -3.042,10.244 -4.153,24.919 8.86,24.088 13.013,-0.831 34.332,-32.117 35.993,-50.668 1.661,-18.551 4.153,-28.794 16.059,-32.67 11.906,-3.876 33.5,-15.782 33.5,-37.932 0,-22.15 -23.25,-34.61 -23.25,-34.61 z m -46.722,1.107 c -1.592,6.091 -16.4,11.144 -16.4,11.144 0,0 1.873,-21.665 17.862,-26.28 a 43.462,43.462 0 0 1 -1.462,15.136 z m 16.182,39.385 c -5.433,0 -9.85,-5.237 -9.85,-11.673 0,-6.436 4.417,-11.671 9.85,-11.671 5.433,0 9.85,5.235 9.85,11.671 0,6.436 -4.418,11.673 -9.85,11.673 z m 21.311,-43.907 c -4.155,-2.006 -6.5,-3.074 -10.883,-3.517 0,0 2.808,-11.618997 11.345,-14.110997 a 36.68,36.68 0 0 1 -0.462,17.627997 z m 11.6,40.931 c -5.433,0 -9.85,-5.223 -9.85,-11.644 0,-6.421 4.419,-11.648 9.852,-11.648 5.433,0 9.847,5.225 9.847,11.646 0,6.421 -4.418,11.646 -9.847,11.646 z"
+ style="fill:#bebebe;"/>
+</svg>
diff --git a/runcat/icons/cat/my-running-1-symbolic.svg b/runcat/icons/cat/my-running-1-symbolic.svg
new file mode 100644
index 000000000..fe829ec35
--- /dev/null
+++ b/runcat/icons/cat/my-running-1-symbolic.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ height="248"
+ width="388"
+ >
+ <metadata>
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title>RunCat: Frame 1</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <title>RunCat: Frame 1</title>
+ <path
+ transform="translate(0 -70)"
+ d="m 327.054,197.34487 1.662,-4.153 c 35.162,-4.43 46.517,-27.359 44.671,-42.219 -1.938,-15.6 -17.815,-29.352 -23.629,-31.705 0,0 4.43,-34.885998 -5.261,-34.885998 -11.365,0 -26.856,26.578998 -26.856,26.578998 h -4.153 c 0,0 -0.277,-24.363998 -7.2,-24.086998 -14.939,0.6 -31.01,42.083998 -31.01,42.083998 -3.6,3.876 -4.43,13.29 -14.951,24.088 -10.521,10.798 -36.244,9.357 -56.733,9.08 -20.489,-0.277 -40.724,16.669 -40.724,16.669 -6.368,0 -24.088,-3.323 -39.316,-4.43 -15.228,-1.107 -47.345,0.831 -55.928,1.938 -8.583,1.107 -60.358,12.459 -57.312,23.811 3.046,11.352 24.364,4.153 50.113,0 25.749,-4.153 65.342,-4.43 74.756,-1.384 9.414,3.046 -1.385,20.488 -18.551,25.2 -17.166,4.712 -32.117,22.421 -39.592,30.452 -7.475,8.031 -14.4,23.257 1.938,24.088 16.338,0.831 32.117,-16.613 39.869,-19.381 7.752,-2.768 2.215,8.306 -0.554,15.227 -2.769,6.921 -6.368,28.518 4.984,29.349 11.352,0.831 28.8,-25.472 32.117,-30.179 3.317,-4.707 18,-11.352 21.319,-14.4 3.319,-3.048 12.183,-12.46 12.183,-12.46 0,0 32.394,-0.83 48.729,-3.876 16.335,-3.046 31.84,-15.5 40.146,-16.612 8.306,-1.112 19.935,7.2 22.981,9.414 3.046,2.214 25.749,15.781 37.1,18.55 11.351,2.769 12.46,-12.182 12.46,-12.182 0,0 9.967,4.983 15.5,-6.368 5.533,-11.351 -38.758,-38.207 -38.758,-38.207 z m -28.425,-72.171 c -2.492,3.415 -12,4.984 -12,4.984 0,0 6.46,-19.2 16.8,-23.35 1.753,9.414 -1.739,14.174 -4.8,18.366 z m 53.251,7.5 c 5.5,0 9.967,5.578 9.967,12.459 0,6.881 -4.462,12.459 -9.967,12.459 -5.505,0 -9.967,-5.578 -9.967,-12.459 0,-6.881 4.462,-12.451 9.967,-12.451 z m -11.014,-32.22 c 0.655,6.977 -2.275,14.593 -2.275,14.593 a 30.833,30.833 0 0 0 -8.971,-1.753 c 4.614,-9.183 7.863,-11.931 11.246,-12.84 z m -22.118,58.868 c -5.5,0 -9.967,-5.579 -9.967,-12.46 0,-6.881 4.462,-12.459 9.967,-12.459 5.505,0 9.968,5.578 9.968,12.459 0,6.881 -4.463,12.46 -9.968,12.46 z"
+ style="fill:#bebebe;"/>
+</svg>
diff --git a/runcat/icons/cat/my-running-2-symbolic.svg b/runcat/icons/cat/my-running-2-symbolic.svg
new file mode 100644
index 000000000..3efb33243
--- /dev/null
+++ b/runcat/icons/cat/my-running-2-symbolic.svg
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ height="248"
+ width="388">
+ <metadata>
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title>RunCat: Frame 2</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <title>RunCat: Frame 2</title>
+ <path
+ transform="translate(0 -70)"
+ d="m 382.705,182.19956 c 4.43,-19.381 -18,-37.654 -18,-37.654 0,0 6.645,-31.148 0,-33.779 -11.665,-4.617 -30.733,22.427 -30.733,22.427 l -4.707,-0.831 c 5.123,-32.531999 -5.676,-26.3 -18.965,-14.4 -13.289,11.9 -25.334,36.27 -33.917,44.3 -8.583,8.03 -18.827,5.26 -38.208,-3.887 -19.381,-9.147 -42.085,-6.081 -50.668,-1.374 -8.583,4.707 -15.777,1.941 -15.777,1.941 0,0 -24.642,-17.443 -32.394,-20.765 -7.752,-3.322 -28.518,-12.736 -53.99,-13.29 -25.472,-0.554 -46.792,9.967 -46.792,9.967 -10.521,9.137 1.385,16.889 12.737,14.4 11.352,-2.489 38.208,-6.092 56.758,-1.939 18.55,4.153 46.791,25.2 46.238,31.287 -0.553,6.087 -12.09,16.8 -25.2,19.658 -12.9,2.815 -48.175,29.071 -49.283,42.638 -1.108,13.567 14.4,14.4 29.626,6.645 15.226,-7.755 26.856,-1.384 26.856,-1.384 -14.12,13.843 -15.5,30.732 -3.6,33.224 11.9,2.492 22.149,-9.69 37.1,-23.257 14.951,-13.567 29.9,-19.935 53.437,-17.166 23.537,2.769 60.911,-0.554 60.911,-0.554 9.968,9.691 42.915,30.179 55.1,35.993 12.185,5.814 25.749,2.492 27.41,-3.6 1.661,-6.092 -16.612,-20.765 -14.951,-24.641 1.661,-3.876 19.461,3.225 26.411,-7.1 6.4,-9.509 -26.134,-24.46 -31.4,-25.844 -5.266,-1.384 -2.215,-5.814 -2.215,-5.814 17.451,-1.667 33.787,-5.82 38.216,-25.201 z m -18.39,-23.248 c 5.561,0 10.069,5.279 10.069,11.79 0,6.511 -4.508,11.79 -10.069,11.79 -5.561,0 -10.068,-5.278 -10.068,-11.79 0,-6.512 4.508,-11.79 10.068,-11.79 z m -4.728,-35.033 c 0,0 1.28,6.61 -5.019,15.47 a 48.782,48.782 0 0 0 -9.056,-3.089 c 0,0 8.26,-11.689 14.075,-12.381 z m -47.207,20.627 c -3.2,2.628 -10.936,3.184 -10.936,3.184 0,0 5.587,-16.156 19.084,-21.763 -0.277,8.583 -1.872,13.422 -8.148,18.579 z m 19.566,35.506 c -6.015,0 -10.89,-5.608 -10.89,-12.526 0,-6.918 4.875,-12.526 10.89,-12.526 6.015,0 10.89,5.608 10.89,12.526 0,6.918 -4.876,12.526 -10.89,12.526 z"
+ style="fill:#bebebe;"/>
+</svg>
diff --git a/runcat/icons/cat/my-running-3-symbolic.svg b/runcat/icons/cat/my-running-3-symbolic.svg
new file mode 100644
index 000000000..e24c1f874
--- /dev/null
+++ b/runcat/icons/cat/my-running-3-symbolic.svg
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ height="248"
+ width="388">
+ <metadata>
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title>RunCat: Frame 3</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <title>RunCat: Frame 3</title>
+ <path
+ transform="translate(0 -70)"
+ d="m 364.709,159.58645 c 0,0 13.013,-29.833 4.983,-32.117 -15.7,-4.465 -32.344,14.823 -32.344,14.823 l -4.018,-0.887 c 0,0 3.415,-14.766 2.861,-21.688 -0.554,-6.922 -18.55,0.83 -28.795,9.413 -10.245,8.583 -29.9,36.271 -41.807,41.531 -11.907,5.26 -25.472,-13.013 -43.746,-26.026 -18.274,-13.013 -44.576,-2.492 -44.576,-2.492 -4.43,-1.384 -11.075,-13.566 -24.088,-26.3 C 140.166,103.10945 126.6,93.137455 96.7,88.153455 c -29.9,-4.984 -44.166,4.789 -42.5,11.157 1.666,6.367995 4.3,6.147995 38.352,9.331995 39.125,3.658 50.114,23.534 59.528,34.886 9.414,11.352 -3.046,22.7 -13.844,38.208 -10.798,15.508 -6.922,26.3 -4.984,39.316 1.938,13.016 13.567,16.335 15.5,35.162 1.933,18.827 6.645,25.2 18.551,21.043 11.636,-4.06 6.876,-43.539 6.655,-45.322 0.112,0.294 1.322,0.967 13,-4.515 13.567,-6.368 26.857,3.322 44.3,7.752 17.443,4.43 30.179,-0.277 34.609,9.691 8.9,20.018 23.257,45.13 40.7,53.99 17.443,8.86 20.765,-8.86 14.674,-16.059 -6.091,-7.199 -7.2,-19.1 -7.2,-19.1 34.885,4.984 43.191,-1.661 44.3,-10.244 1.109,-8.583 -17.72,-13.29 -26.857,-18 -9.137,-4.71 -2.768,-12.182 -2.768,-12.182 29.071,-3.323 45.868,-11.352 48.452,-32.394 2.143,-17.453 -12.459,-31.288 -12.459,-31.288 z m -62.3,-8.029 c 0,0 10.429,-15.874 22.242,-19.012 0,0 -0.554,11.352 -5.907,15.69 -6.296,5.105 -16.331,3.324 -16.331,3.324 z m 26.026,37.008 c -5.811,0 -10.521,-5.33 -10.521,-11.905 0,-6.575 4.71,-11.906 10.521,-11.906 5.811,0 10.521,5.331 10.521,11.906 0,6.575 -4.707,11.905 -10.517,11.905 z m 34.516,-49.744 c 0.018,3.471 -4.4,12.116 -6.959,13.62 a 16.906,16.906 0 0 0 -7.883,-4.3 c 1.756,-2.193 8.571,-9.345 14.846,-9.32 z m -2.857,55.638 c -5.084,0 -9.206,-4.913 -9.206,-10.974 0,-6.061 4.122,-10.973 9.206,-10.973 5.084,0 9.207,4.913 9.207,10.973 0,6.06 -4.122,10.974 -9.207,10.974 z"
+ style="fill:#bebebe;"/>
+</svg>
diff --git a/runcat/icons/cat/my-running-4-symbolic.svg b/runcat/icons/cat/my-running-4-symbolic.svg
new file mode 100644
index 000000000..823e40657
--- /dev/null
+++ b/runcat/icons/cat/my-running-4-symbolic.svg
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ height="248"
+ width="388">
+ <metadata>
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title>RunCat: Frame 4</dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <title>RunCat: Frame 4</title>
+ <path
+ transform="translate(0 -70)"
+ d="m 328.854,134.31128 c 0,0 9.967,-30.872 0.692,-34.194 -9.275,-3.322 -29.487,19.1 -29.487,19.1 l -4.983,-1.107 c 2.907,-25.057 0.277,-27.411 -14.536,-16.474 -14.813,10.937 -26.58,30.871 -29.625,34.055 -3.045,3.184 -5.953,14.951 -33.5,1.246 -27.547,-13.705 -44.714,-5.814 -60.635,-1.938 -15.921,3.876 -50.113,22.565 -68.941,29.763 -18.828,7.198 -37.931,4.154 -42.084,3.461 -4.153,-0.693 -23.4,-15.228 -30.594,-7.337 -7.194,7.891 0.692,16.336 8.583,22.7 7.891,6.364 27.272,9 43.745,8.444 16.473,-0.556 65.9,-18.273 65.9,-18.273 2.815,3.922 0.877,2.722 1.984,15.274 1.107,12.552 15.874,24 19.75,28.61 3.876,4.61 0.923,9.783 1.661,21.6 0.738,11.817 12,11.444 21.781,11.444 9.781,0 13.29,5.537 15.136,9.783 1.846,4.246 5.168,10.152 15.5,10.152 10.332,0 12.182,-4.061 14.951,-8.122 2.769,-4.061 12,-8.122 16.243,-7.752 4.243,0.37 7.014,21.042 11.259,28.24 4.245,7.198 19.75,11.26 22.519,9.045 2.769,-2.215 6.091,-3.323 1.292,-19.012 -4.799,-15.689 -1.292,-39.685 0.185,-47.253 1.477,-7.568 3.137,-18.458 30.271,-23.626 27.134,-5.168 40.608,-18.458 40.608,-36.178 0,-17.72 -17.675,-31.651 -17.675,-31.651 z m -49.468,-5.584 a 15.8,15.8 0 0 1 -11.905,3.921 c 0,0 7.752,-15.827 18.92,-18.412 -0.001,0.001 0.83,7.523 -7.015,14.491 z m 15.644,37.847 c -5.709,0 -10.337,-5.131 -10.337,-11.46 0,-6.329 4.628,-11.46 10.337,-11.46 5.709,0 10.336,5.131 10.336,11.46 0,6.329 -4.628,11.46 -10.336,11.46 z m 16.7,-41.908 c 0,0 7.16,-9.46 11.52,-10.429 0.277,5.446 -0.807,10.106 -4.453,13.8 a 26.262,26.262 0 0 0 -7.07,-3.371 z m 16.9,47.077 c -5.1,0 -9.229,-4.787 -9.229,-10.693 0,-5.906 4.132,-10.693 9.229,-10.693 5.097,0 9.229,4.788 9.229,10.693 0,5.905 -4.139,10.698 -9.236,10.698 z"
+ style="fill:#bebebe;"/>
+</svg>
diff --git a/runcat/icons/dab/dab00.png b/runcat/icons/dab/dab00.png
new file mode 100644
index 000000000..363740bea
--- /dev/null
+++ b/runcat/icons/dab/dab00.png
Binary files differ
diff --git a/runcat/icons/dab/dab01.png b/runcat/icons/dab/dab01.png
new file mode 100644
index 000000000..0caee2d9f
--- /dev/null
+++ b/runcat/icons/dab/dab01.png
Binary files differ
diff --git a/runcat/icons/dab/dab02.png b/runcat/icons/dab/dab02.png
new file mode 100644
index 000000000..21ab6bd85
--- /dev/null
+++ b/runcat/icons/dab/dab02.png
Binary files differ
diff --git a/runcat/icons/dab/dab03.png b/runcat/icons/dab/dab03.png
new file mode 100644
index 000000000..4bdb5df73
--- /dev/null
+++ b/runcat/icons/dab/dab03.png
Binary files differ
diff --git a/runcat/icons/dab/dab04.png b/runcat/icons/dab/dab04.png
new file mode 100644
index 000000000..8ea88541f
--- /dev/null
+++ b/runcat/icons/dab/dab04.png
Binary files differ
diff --git a/runcat/icons/dab/dab05.png b/runcat/icons/dab/dab05.png
new file mode 100644
index 000000000..8f1b15543
--- /dev/null
+++ b/runcat/icons/dab/dab05.png
Binary files differ
diff --git a/runcat/icons/dab/dab06.png b/runcat/icons/dab/dab06.png
new file mode 100644
index 000000000..6bd83f068
--- /dev/null
+++ b/runcat/icons/dab/dab06.png
Binary files differ
diff --git a/runcat/icons/dab/dab07.png b/runcat/icons/dab/dab07.png
new file mode 100644
index 000000000..6bd83f068
--- /dev/null
+++ b/runcat/icons/dab/dab07.png
Binary files differ
diff --git a/runcat/icons/dab/dab08.png b/runcat/icons/dab/dab08.png
new file mode 100644
index 000000000..df3b2ddc8
--- /dev/null
+++ b/runcat/icons/dab/dab08.png
Binary files differ
diff --git a/runcat/icons/mona/mona0.png b/runcat/icons/mona/mona0.png
new file mode 100644
index 000000000..86e217108
--- /dev/null
+++ b/runcat/icons/mona/mona0.png
Binary files differ
diff --git a/runcat/icons/mona/mona1.png b/runcat/icons/mona/mona1.png
new file mode 100644
index 000000000..f84cb164e
--- /dev/null
+++ b/runcat/icons/mona/mona1.png
Binary files differ
diff --git a/runcat/icons/mona/mona2.png b/runcat/icons/mona/mona2.png
new file mode 100644
index 000000000..cb51f7e3d
--- /dev/null
+++ b/runcat/icons/mona/mona2.png
Binary files differ
diff --git a/runcat/icons/mona/mona3.png b/runcat/icons/mona/mona3.png
new file mode 100644
index 000000000..2416c87fa
--- /dev/null
+++ b/runcat/icons/mona/mona3.png
Binary files differ
diff --git a/runcat/icons/mona/mona4.png b/runcat/icons/mona/mona4.png
new file mode 100644
index 000000000..720615bde
--- /dev/null
+++ b/runcat/icons/mona/mona4.png
Binary files differ
diff --git a/runcat/icons/mona/mona5.png b/runcat/icons/mona/mona5.png
new file mode 100644
index 000000000..ccc875db7
--- /dev/null
+++ b/runcat/icons/mona/mona5.png
Binary files differ
diff --git a/runcat/icons/mona/mona6.png b/runcat/icons/mona/mona6.png
new file mode 100644
index 000000000..6f9defc73
--- /dev/null
+++ b/runcat/icons/mona/mona6.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat00.png b/runcat/icons/partyblobcat/partyblobcat00.png
new file mode 100644
index 000000000..15e224bc3
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat00.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat01.png b/runcat/icons/partyblobcat/partyblobcat01.png
new file mode 100644
index 000000000..5bec3c727
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat01.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat02.png b/runcat/icons/partyblobcat/partyblobcat02.png
new file mode 100644
index 000000000..b786eee14
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat02.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat03.png b/runcat/icons/partyblobcat/partyblobcat03.png
new file mode 100644
index 000000000..f68f80630
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat03.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat04.png b/runcat/icons/partyblobcat/partyblobcat04.png
new file mode 100644
index 000000000..4dcc372d6
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat04.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat05.png b/runcat/icons/partyblobcat/partyblobcat05.png
new file mode 100644
index 000000000..432417a5e
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat05.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat06.png b/runcat/icons/partyblobcat/partyblobcat06.png
new file mode 100644
index 000000000..c71f285e3
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat06.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat07.png b/runcat/icons/partyblobcat/partyblobcat07.png
new file mode 100644
index 000000000..e4b07df98
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat07.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat08.png b/runcat/icons/partyblobcat/partyblobcat08.png
new file mode 100644
index 000000000..3b7a48c82
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat08.png
Binary files differ
diff --git a/runcat/icons/partyblobcat/partyblobcat09.png b/runcat/icons/partyblobcat/partyblobcat09.png
new file mode 100644
index 000000000..5e83df4ec
--- /dev/null
+++ b/runcat/icons/partyblobcat/partyblobcat09.png
Binary files differ
diff --git a/runcat/icons/runcat-logo.png b/runcat/icons/runcat-logo.png
new file mode 100644
index 000000000..253005862
--- /dev/null
+++ b/runcat/icons/runcat-logo.png
Binary files differ
diff --git a/sway/config b/sway/config
new file mode 100644
index 000000000..f339c2b31
--- /dev/null
+++ b/sway/config
@@ -0,0 +1,235 @@
+# Default config for sway
+#
+# Copy this to ~/.config/sway/config and edit it to your liking.
+#
+# Read `man 5 sway` for a complete reference.
+exec --no-startup-id dbus-update-activation-environment --all
+exec swayidle -w timeout 1800 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"'
+### Variables
+#
+# Logo key. Use Mod1 for Alt.
+set $mod Mod4
+# Home row direction keys, like vim
+set $left h
+set $down j
+set $up k
+set $right l
+# Your preferred terminal emulator
+set $term foot
+# Your preferred application launcher
+# Note: pass the final command to swaymsg so that the resulting window can be opened
+# on the original workspace that the command was run on.
+set $menu wofi --show run
+# set $menu ags -t applauncher
+
+
+
+set $swaylock swaylock -i "/home/indrajith/Pictures/wallhaven-q2957q_1920x1080.png" -k
+
+### Output configuration
+#
+# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
+output * bg /home/indrajith/Pictures/wallhaven-49p298_1920x1080.png fill
+#
+# Example configuration:
+#
+# output HDMI-A-1 resolution 1920x1080 position 1920,0
+#
+# You can get the names of your outputs by running: swaymsg -t get_outputs
+
+### Idle configuration
+#
+# Example configuration:
+#
+# exec swayidle -w \
+# timeout 300 'swaylock -f -c 000000' \
+# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
+# before-sleep 'swaylock -f -c 000000'
+#
+# This will lock your screen after 300 seconds of inactivity, then turn off
+# your displays after another 300 seconds, and turn your screens back on when
+# resumed. It will also lock your screen before your computer goes to sleep.
+
+### Input configuration
+#
+# Example configuration:
+#
+# input "2:14:SynPS/2_Synaptics_TouchPad" {
+# dwt enabled
+# tap enabled
+# natural_scroll enabled
+# middle_emulation enabled
+# }
+#
+# You can get the names of your inputs by running: swaymsg -t get_inputs
+# Read `man 5 sway-input` for more information about this section.
+
+### Key bindings
+#
+# Basics:
+#
+ # Start a terminal
+ bindsym $mod+Return exec $term
+
+ # Kill focused window
+ bindsym $mod+Shift+q kill
+
+ # Start your launcher
+ bindsym $mod+d exec $menu
+
+ # Drag floating windows by holding down $mod and left mouse button.
+ # Resize them with right mouse button + $mod.
+ # Despite the name, also works for non-floating windows.
+ # Change normal to inverse to use left mouse button for resizing and right
+ # mouse button for dragging.
+ floating_modifier $mod normal
+
+ # Reload the configuration file
+ bindsym $mod+Shift+c reload
+
+ # Exit sway (logs you out of your Wayland session)
+ bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
+#
+# Moving around:
+#
+ # Move your focus around
+ bindsym $mod+$left focus left
+ bindsym $mod+$down focus down
+ bindsym $mod+$up focus up
+ bindsym $mod+$right focus right
+ # Or use $mod+[up|down|left|right]
+ bindsym $mod+Left focus left
+ bindsym $mod+Down focus down
+ bindsym $mod+Up focus up
+ bindsym $mod+Right focus right
+
+ # Move the focused window with the same, but add Shift
+ bindsym $mod+Shift+$left move left
+ bindsym $mod+Shift+$down move down
+ bindsym $mod+Shift+$up move up
+ bindsym $mod+Shift+$right move right
+ # Ditto, with arrow keys
+ bindsym $mod+Shift+Left move left
+ bindsym $mod+Shift+Down move down
+ bindsym $mod+Shift+Up move up
+ bindsym $mod+Shift+Right move right
+#
+# Workspaces:
+#
+ # Switch to workspace
+ bindsym $mod+1 workspace number 1
+ bindsym $mod+2 workspace number 2
+ bindsym $mod+3 workspace number 3
+ bindsym $mod+4 workspace number 4
+ bindsym $mod+5 workspace number 5
+ bindsym $mod+6 workspace number 6
+ bindsym $mod+7 workspace number 7
+ bindsym $mod+8 workspace number 8
+ bindsym $mod+9 workspace number 9
+ bindsym $mod+0 workspace number 10
+ # Move focused container to workspace
+ bindsym $mod+Shift+1 move container to workspace number 1
+ bindsym $mod+Shift+2 move container to workspace number 2
+ bindsym $mod+Shift+3 move container to workspace number 3
+ bindsym $mod+Shift+4 move container to workspace number 4
+ bindsym $mod+Shift+5 move container to workspace number 5
+ bindsym $mod+Shift+6 move container to workspace number 6
+ bindsym $mod+Shift+7 move container to workspace number 7
+ bindsym $mod+Shift+8 move container to workspace number 8
+ bindsym $mod+Shift+9 move container to workspace number 9
+ bindsym $mod+Shift+0 move container to workspace number 10
+ # Note: workspaces can have any name you want, not just numbers.
+ # We just use 1-10 as the default.
+#
+# Layout stuff:
+#
+ # You can "split" the current object of your focus with
+ # $mod+b or $mod+v, for horizontal and vertical splits
+ # respectively.
+ bindsym $mod+b splith
+ bindsym $mod+v splitv
+
+ # Switch the current container between different layout styles
+ bindsym $mod+s layout stacking
+ bindsym $mod+w layout tabbed
+ bindsym $mod+e layout toggle split
+
+ # Make the current focus fullscreen
+ bindsym $mod+f fullscreen
+
+ # Toggle the current focus between tiling and floating mode
+ bindsym $mod+Shift+space floating toggle
+
+ # Swap focus between the tiling area and the floating area
+ bindsym $mod+space focus mode_toggle
+
+ # Move focus to the parent container
+ bindsym $mod+a focus parent
+#
+# Scratchpad:
+#
+ # Sway has a "scratchpad", which is a bag of holding for windows.
+ # You can send windows there and get them back later.
+
+ # Move the currently focused window to the scratchpad
+ bindsym $mod+Shift+minus move scratchpad
+
+ # Show the next scratchpad window or hide the focused scratchpad window.
+ # If there are multiple scratchpad windows, this command cycles through them.
+ bindsym $mod+minus scratchpad show
+#
+# Resizing containers:
+#
+mode "resize" {
+ # left will shrink the containers width
+ # right will grow the containers width
+ # up will shrink the containers height
+ # down will grow the containers height
+ bindsym $left resize shrink width 10px
+ bindsym $down resize grow height 10px
+ bindsym $up resize shrink height 10px
+ bindsym $right resize grow width 10px
+
+ # Ditto, with arrow keys
+ bindsym Left resize shrink width 10px
+ bindsym Down resize grow height 10px
+ bindsym Up resize shrink height 10px
+ bindsym Right resize grow width 10px
+
+ # Return to default mode
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+bindsym $mod+r mode "resize"
+
+# Lock Screen
+
+bindsym $mod+Shift+i exec $swaylock
+bindsym $mod+Shift+p exec grim -g "$(slurp -p)" -t ppm - | convert - -format '%[pixel:p{0,0}]' txt:- | tail -n 1 | cut -d ' ' -f 4 | wl-copy
+
+#
+# Status Bar:
+#
+# Read `man 5 sway-bar` for more information about this section.
+bar {
+ position top
+
+ # When the status_command prints a new line to stdout, swaybar updates.
+ # The default just shows the current date and time.
+ status_command while date +'%a %B %d, %Y %X'; do sleep 1; done
+ #swaybar_command waybar
+#+%a %d-%m-%Y %H:%M
+ colors {
+ statusline #ffffff
+ background #D4A8D3C7
+ inactive_workspace #D4A8D3C7 #D4A8D327 #5c5c5c
+ focused_workspace #BD93C3 #BD93C3 #000000
+ }
+}
+client.focused "#cbcbcb" "#fbe0e0" "#000000" "#fbe0e0" "#fbe0e0"
+client.focused_inactive "#fbe0e0" "#ffc8c8" "#7c7c7c" "#fbe0e0" "#fbe0e0"
+client.unfocused "#fbe0e0" "#cbcbcb" "#6c6c6c" "#fbe0e0" "#fbe0e0"
+
+for_window [app_id="qalculate-gtk"] floating enable
+
+include /etc/sway/config.d/*
diff --git a/waybar/config.jsonc b/waybar/config.jsonc
new file mode 100644
index 000000000..11bcb9cd1
--- /dev/null
+++ b/waybar/config.jsonc
@@ -0,0 +1,236 @@
+// -*- mode: jsonc -*-
+{
+ // "layer": "top", // Waybar at top layer
+ // "position": "bottom", // Waybar position (top|bottom|left|right)
+ "height": 30, // Waybar height (to be removed for auto height)
+ // "width": 1280, // Waybar width
+ "spacing": 4, // Gaps between modules (4px)
+ // Choose the order of the modules
+ "modules-left": [
+ "hyprland/workspaces",
+ "sway/mode",
+ "sway/scratchpad",
+ "custom/media",
+ "custom/keyboard-state"
+ ],
+ "modules-center": [
+ // "group/quicklinks",
+ // "hyprland/window",
+
+ "clock"
+ ],
+ "modules-right": [
+ "mpd",
+ "pulseaudio",
+ // "network",
+ "power-profiles-daemon",
+ "cpu",
+ // "memory",
+ "custom/mem",
+ "temperature",
+ "backlight",
+ "keyboard-state",
+ "sway/language",
+ "battery",
+ "battery#bat2",
+ "custom/exit",
+ "tray"
+ ],
+ // Modules configuration
+ "hyprland/workspaces": {
+ "disable-scroll": true,
+ "all-outputs": true,
+ "warp-on-scroll": false,
+ "format": "{}",
+ "format-icons": {
+ "urgent": "",
+ "focused": "",
+ "default": ""
+ },
+ "persistent-workspaces": {
+ "*": 5
+ }
+ },
+ "custom/keyboard-state": {
+ "numlock": true,
+ "capslock": true,
+ "format": "{name} {icon}",
+ "format-icons": {
+ "locked": "",
+ "unlocked": ""
+ }
+ },
+ "sway/mode": {
+ "format": "<span style=\"italic\">{}</span>"
+ },
+ "sway/scratchpad": {
+ "format": "{icon} {count}",
+ "show-empty": false,
+ "format-icons": ["", ""],
+ "tooltip": true,
+ "tooltip-format": "{app}: {title}"
+ },
+ "mpd": {
+ "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
+ "format-disconnected": "Disconnected ",
+ "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
+ "unknown-tag": "N/A",
+ "interval": 5,
+ "consume-icons": {
+ "on": " "
+ },
+ "random-icons": {
+ "off": "<span color=\"#f53c3c\"></span> ",
+ "on": " "
+ },
+ "repeat-icons": {
+ "on": " "
+ },
+ "single-icons": {
+ "on": "1 "
+ },
+ "state-icons": {
+ "paused": "",
+ "playing": ""
+ },
+ "tooltip-format": "MPD (connected)",
+ "tooltip-format-disconnected": "MPD (disconnected)"
+ },
+ "idle_inhibitor": {
+ "format": "{icon}",
+ "format-icons": {
+ "activated": "",
+ "deactivated": ""
+ }
+ },
+ "tray": {
+ // "icon-size": 21,
+ "spacing": 10
+ },
+ "clock": {
+ // "timezone": "America/New_York",
+ "format": "{:%a %b %d, %Y, %I:%M %p}",
+ "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
+ "format-alt": "{:%Y-%m-%d}"
+ },
+ "cpu": {
+ "format": "{usage}% ",
+ "tooltip": false
+ },
+ "memory": {
+ "format": "{}% "
+ },
+ "custom/mem": {
+ "format": "{} ",
+ "interval": 3,
+ "exec": "free -h | awk '/Mem:/{printf $3}'",
+ "tooltip": false,
+ },
+ "temperature": {
+ // "thermal-zone": 2,
+ // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
+ "critical-threshold": 80,
+ // "format-critical": "{temperatureC}°C {icon}",
+ "format": "{temperatureC}°C {icon}",
+ "format-icons": ["", "", ""]
+ },
+ "backlight": {
+ // "device": "acpi_video1",
+ "format": "{percent}% {icon}",
+ "format-icons": ["", "", "", "", "", "", "", "", ""]
+ },
+ "battery": {
+ "states": {
+ // "good": 95,
+ "warning": 30,
+ "critical": 15
+ },
+ "format": "{capacity}% {icon}",
+ "format-full": "{capacity}% {icon}",
+ "format-charging": "{capacity}% ",
+ "format-plugged": "{capacity}% ",
+ "format-alt": "{time} {icon}",
+ // "format-good": "", // An empty format will hide the module
+ // "format-full": "",
+ "format-icons": ["", "", "", "", ""]
+ },
+ "battery#bat2": {
+ "bat": "BAT2"
+ },
+ "power-profiles-daemon": {
+ "format": "{icon}",
+ "tooltip-format": "Power profile: {profile}\nDriver: {driver}",
+ "tooltip": true,
+ "format-icons": {
+ "default": "",
+ "performance": "",
+ "balanced": "",
+ "power-saver": ""
+ }
+ },
+ "network": {
+ // "interface": "wlp2*", // (Optional) To force the use of this interface
+ "format-wifi": "{essid} ({signalStrength}%) ",
+ "format-ethernet": "{ipaddr}/{cidr} ",
+ "tooltip-format": "{ifname} via {gwaddr} ",
+ "format-linked": "{ifname} (No IP) ",
+ "format-disconnected": "Disconnected ⚠",
+ "format-alt": "{ifname}: {ipaddr}/{cidr}"
+ },
+ "pulseaudio": {
+ // "scroll-step": 1, // %, can be a float
+ "format": "{volume}% {icon} {format_source}",
+ "format-bluetooth": "{volume}% {icon} {format_source}",
+ "format-bluetooth-muted": " {icon} {format_source}",
+ "format-muted": " {format_source}",
+ "format-source": "{volume}% ",
+ "format-source-muted": "",
+ "format-icons": {
+ "headphone": "",
+ "hands-free": "",
+ "headset": "",
+ "phone": "",
+ "portable": "",
+ "car": "",
+ "default": ["", "", ""]
+ },
+ "on-click": "pavucontrol"
+ },
+ "custom/media": {
+ "format": "{icon} {}",
+ "return-type": "json",
+ "max-length": 40,
+ "format-icons": {
+ "spotify": "",
+ "default": "🎜"
+ },
+ "escape": true,
+ "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
+ // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
+ },
+ "custom/exit": {
+ "format": "",
+ "on-click": "wlogout",
+ "tooltip-format": "Power Menu"
+ },
+ "group/quicklinks": {
+ "orientation": "horizontal",
+ "modules": [
+ "custom/browser",
+ "custom/filemanager",
+ ]
+ },
+ "custom/browser": {
+ "format": "",
+ "on-click": "~/.config/hypr/scripts/browser.sh",
+ "tooltip-format": "Open browser"
+ },
+ // Filemanager Launcher
+ "custom/filemanager": {
+ "format": "",
+ "on-click": "~/.config/hypr/scripts/filemanager.sh",
+ "tooltip-format": "Open filemanager"
+ }
+
+
+}
diff --git a/waybar/style.css b/waybar/style.css
new file mode 100644
index 000000000..5ab5ab669
--- /dev/null
+++ b/waybar/style.css
@@ -0,0 +1,273 @@
+@import url("/home/indrajith/.cache/wal/colors-waybar.css");
+
+* {
+ all: unset;
+ font-family: 'EnvyCodeR Nerd Font';
+ transition: background-color .3s ease;
+ color: @foreground
+}
+
+tooltip,
+#tray menu{
+ background: @background;
+ border: 2px solid @color12;
+ border-radius: 7.5px;
+ color: @foreground;
+ padding: 5px;
+}
+
+#tray menu * {
+ border-radius: 2.5px;
+ transition: all .3s ease;
+}
+
+#tray menu *:hover {
+ background: @color1;
+}
+
+
+window#waybar {
+ background: transparent;
+}
+
+window#waybar.hidden {
+ opacity: 0.2;
+}
+
+window {
+ background: transparent;
+}
+
+#custom-sep {
+ color: @color1;
+ font-size: 20px;
+}
+
+#custom-sep2 {
+ color: transparent;
+ font-size: 4px;
+}
+
+
+.modules-right {
+ padding-top: 0;
+}
+
+.modules-center {
+ padding: 0;
+}
+
+
+#workspaces>button.empty {
+ color: @color8;
+}
+
+#workspaces>button.urgent {
+ color: @color2;
+}
+
+#workspaces>button.active {
+ color: @foreground;
+ background: #9b59b6;
+}
+
+#workspaces>button {
+ color: @foreground;
+ font-size: 12.5px;
+ transition: all 0.3s ease;
+ padding: 0 6px;
+ margin: 0;
+ border-radius: 2.5px;
+}
+
+#workspaces>button:nth-child(1) {
+ border-radius: 100px 16px 16px 100px
+}
+
+#workspaces>button:last-child {
+ border-radius: 16px 100px 100px 16px
+}
+
+#group-player {
+ background-color: @color1;
+ border-radius: 16px 100px 100px 16px;
+ padding: 0 16px;
+}
+
+#group-power {
+ padding: 7px;
+}
+
+#custom-notif {
+ padding: 2.5px 15px;
+ border-radius: 100px;
+ margin: 7.5px;
+ background: @color3;
+}
+
+#custom-infolabel {
+ font-size: 20px;
+ margin-right: 5px;
+ padding: 0 5px;
+ padding-right: 5px;
+}
+
+#tray {
+ padding: 2px;
+ background: @foreground;
+ border-radius: 16px 100px 100px 16px;
+}
+
+#clock {
+ padding-left: 10px;
+ padding-right: 10px;
+ border-radius: 16px;
+ font-weight: bold;
+ border: 1px solid #e74c3c;
+}
+
+#win {
+ padding: 2px 7px;
+ background-color: @color1;
+ border-radius: 16px 100px 100px 16px;
+ min-width: 20px;
+}
+
+#window {
+ color: @foreground;
+ padding-left: 5px;
+ padding-right: 5px;
+}
+
+#window.win2 {
+ color: @foreground;
+ opacity: 0.7;
+}
+
+#group-info {
+ background: @color1;
+ margin: 0;
+ border-radius: 16px 100px 100px 16px;
+}
+
+
+#pulseaudio {
+ background-color: #2ecc71;
+ padding: 0 8px;
+ margin: 2px;
+ border-radius: 2px;
+ /* border-radius: 100px 16px 16px 100px; */
+ color: #ffffff;
+}
+#taskbar button {
+ margin: 5px 0;
+ transition: all .3s ease;
+}
+#taskbar button.active {
+ margin: 0 0 10px 0;
+}
+
+#cpu {
+ background-color: #f1c40f;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+ color: #ffffff;
+}
+
+#custom-pacman {
+ background-color: @color3;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+}
+
+#memory {
+ background-color: #3498db;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+ color: #ffffff;
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+#custom-mem {
+ margin-left: 10px;
+ margin-right: 10px
+}
+
+#battery {
+ background-color: @color7;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+}
+
+#custom-kb {
+ background-color: @color6;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+}
+#backlight {
+ background-color: @color4;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 3.5px;
+}
+
+#disk {
+ background-color: @color5;
+ padding: 0 10px;
+ margin: 1px;
+ border-radius: 16px 100px 100px 16px;
+}
+
+#custom-wal {
+ background-color: @color6;
+ padding: 0 10px;
+ border-radius: 100px 16px 16px 100px;
+ font-size: 20px;
+}
+
+#custom-sback,
+#custom-playpause,
+#custom-sfw {
+ margin: 8px 2px;
+ border-radius: 3.5px;
+ padding: 2px 8px;
+}
+
+#custom-sback {
+ background: @color3;
+}
+
+#custom-playpause {
+ background: @color4;
+}
+
+#custom-sfw {
+ background: @color5;
+}
+
+.modules-left,
+.modules-center{
+ background: @background;
+ border: 2px solid @color12;
+ border-radius: 100px;
+ padding: 2px 2px;
+}
+
+/* .modules-right {
+
+} */
+
+#custom-exit {
+ padding-right: 10px;
+}
+
+#custom-browser,
+#custom-filemanager {
+ margin-right: 23px;
+} \ No newline at end of file
diff --git a/wofi/style.css b/wofi/style.css
new file mode 100644
index 000000000..f8ae0512e
--- /dev/null
+++ b/wofi/style.css
@@ -0,0 +1,19 @@
+window {
+ font-size: 15px;
+ font-family:"EnvyCodeR Nerd Font Mono";
+ background-color: rgba(22, 22, 22, 0.98);
+ color: #ffffff;
+}
+
+#entry:selected {
+ background-color: rgb(34,34,34)
+}
+
+#input {
+ background-color: rgba(22, 22, 22, 0.98);
+ color: #ffffff;
+}
+
+#input:focus {
+ border: 1px solid #ffffff;
+} \ No newline at end of file