From 57eb70137b5bbcdabdc0f02eea5477b3e5f845a1 Mon Sep 17 00:00:00 2001 From: Indrajith K L Date: Thu, 27 Jun 2024 17:51:18 +0530 Subject: [PATCH] Adds Arch Linux dotfiles --- .gitignore | 19 + fish/completions/fisher.fish | 7 + fish/completions/fzf_configure_bindings.fish | 8 + fish/completions/nvm.fish | 21 + fish/conf.d/fzf.fish | 28 ++ fish/conf.d/nvm.fish | 28 ++ fish/conf.d/rustup.fish | 1 + fish/config.fish | 5 + fish/fish_plugins | 3 + fish/fish_variables | 36 ++ .../_fzf_configure_bindings_help.fish | 43 ++ fish/functions/_fzf_extract_var_info.fish | 15 + fish/functions/_fzf_preview_changed_file.fish | 49 ++ fish/functions/_fzf_preview_file.fish | 43 ++ fish/functions/_fzf_report_diff_type.fish | 18 + fish/functions/_fzf_report_file_type.fish | 6 + fish/functions/_fzf_search_directory.fish | 33 ++ fish/functions/_fzf_search_git_log.fish | 36 ++ fish/functions/_fzf_search_git_status.fish | 41 ++ fish/functions/_fzf_search_history.fish | 39 ++ fish/functions/_fzf_search_processes.fish | 32 ++ fish/functions/_fzf_search_variables.fish | 47 ++ fish/functions/_fzf_wrapper.fish | 21 + fish/functions/_nvm_index_update.fish | 20 + fish/functions/_nvm_list.fish | 11 + fish/functions/_nvm_version_activate.fish | 4 + fish/functions/_nvm_version_deactivate.fish | 5 + fish/functions/fisher.fish | 240 +++++++++ fish/functions/fzf_configure_bindings.fish | 46 ++ fish/functions/nvm.fish | 234 +++++++++ foot/catppuccin-frappe.ini | 30 ++ foot/catppuccin-latte.ini | 30 ++ foot/catppuccin-macchiato.ini | 30 ++ foot/catppuccin-mocha.ini | 30 ++ foot/foot.ini | 14 + gtk-3.0/assets/close-active.svg | 39 ++ gtk-3.0/assets/close-backdrop-active.svg | 39 ++ gtk-3.0/assets/close-backdrop-hover.svg | 39 ++ gtk-3.0/assets/close-backdrop-normal.svg | 27 + gtk-3.0/assets/close-hover.svg | 39 ++ gtk-3.0/assets/close-normal.svg | 27 + gtk-3.0/assets/maximize-active.svg | 33 ++ gtk-3.0/assets/maximize-backdrop-active.svg | 33 ++ gtk-3.0/assets/maximize-backdrop-hover.svg | 33 ++ gtk-3.0/assets/maximize-backdrop-normal.svg | 27 + gtk-3.0/assets/maximize-hover.svg | 33 ++ gtk-3.0/assets/maximize-normal.svg | 27 + gtk-3.0/assets/maximized-active.svg | 33 ++ gtk-3.0/assets/maximized-backdrop-active.svg | 33 ++ gtk-3.0/assets/maximized-backdrop-hover.svg | 33 ++ gtk-3.0/assets/maximized-backdrop-normal.svg | 27 + gtk-3.0/assets/maximized-hover.svg | 33 ++ gtk-3.0/assets/maximized-normal.svg | 27 + gtk-3.0/assets/minimize-active.svg | 33 ++ gtk-3.0/assets/minimize-backdrop-active.svg | 33 ++ gtk-3.0/assets/minimize-backdrop-hover.svg | 33 ++ gtk-3.0/assets/minimize-backdrop-normal.svg | 27 + gtk-3.0/assets/minimize-hover.svg | 33 ++ gtk-3.0/assets/minimize-normal.svg | 27 + gtk-3.0/bookmarks | 4 + gtk-3.0/colors.css | 84 ++++ gtk-3.0/gtk.css | 37 ++ gtk-3.0/settings.ini | 16 + gtk-3.0/window_decorations.css | 71 +++ gtk-4.0/colors.css | 84 ++++ gtk-4.0/gtk.css | 1 + gtk-4.0/settings.ini | 12 + gtk-4.0/window_decorations.css | 71 +++ gtkrc | 6 + gtkrc-2.0 | 5 + hypr/hypridle.conf | 11 + hypr/hyprland.conf | 265 ++++++++++ hypr/hyprlock.conf | 86 ++++ hypr/hyprpaper.conf | 4 + hypr/scripts/browser.sh | 1 + hypr/scripts/filemanager.sh | 1 + kitty/current-theme.conf | 21 + kitty/kitty-themes/.all-contributorsrc | 111 +++++ .../.github/ISSUE_TEMPLATE/theme-request.md | 10 + .../.github/PULL_REQUEST_TEMPLATE.md | 9 + kitty/kitty-themes/.github/kitty-themes.jpg | Bin 0 -> 157126 bytes kitty/kitty-themes/.tools/README.md | 9 + kitty/kitty-themes/.tools/color_table.sh | 26 + kitty/kitty-themes/.tools/convert.py | 30 ++ kitty/kitty-themes/.tools/convert_conf.swift | 57 +++ kitty/kitty-themes/.tools/extract-vscode.sh | 5 + kitty/kitty-themes/.tools/generate_conf.sh | 10 + .../.tools/generate_theme_preview.sh | 22 + .../.tools/generate_themes_previews.sh | 32 ++ kitty/kitty-themes/.tools/libcapture.sh | 23 + kitty/kitty-themes/.tools/markdown.sh | 15 + kitty/kitty-themes/.tools/palette.py | 91 ++++ kitty/kitty-themes/.tools/preview.py | 136 +++++ kitty/kitty-themes/.tools/previews.sh | 24 + kitty/kitty-themes/.tools/template.conf | 37 ++ kitty/kitty-themes/.tools/template.conf.j2 | 91 ++++ kitty/kitty-themes/.tools/windowid.swift | 20 + kitty/kitty-themes/CONTRIBUTING.md | 8 + kitty/kitty-themes/LICENSE.md | 21 + kitty/kitty-themes/README.md | 465 ++++++++++++++++++ kitty/kitty-themes/themes/3024_Day.conf | 21 + kitty/kitty-themes/themes/3024_Night.conf | 21 + kitty/kitty-themes/themes/AdventureTime.conf | 21 + kitty/kitty-themes/themes/Afterglow.conf | 21 + kitty/kitty-themes/themes/AlienBlood.conf | 21 + kitty/kitty-themes/themes/Alucard.conf | 21 + kitty/kitty-themes/themes/Apprentice.conf | 26 + kitty/kitty-themes/themes/Argonaut.conf | 21 + kitty/kitty-themes/themes/Arthur.conf | 21 + .../themes/AtelierSulphurpool.conf | 21 + kitty/kitty-themes/themes/Atom.conf | 21 + kitty/kitty-themes/themes/AtomOneLight.conf | 21 + kitty/kitty-themes/themes/Batman.conf | 21 + kitty/kitty-themes/themes/Belafonte_Day.conf | 21 + .../kitty-themes/themes/Belafonte_Night.conf | 21 + .../kitty-themes/themes/BirdsOfParadise.conf | 21 + kitty/kitty-themes/themes/Blazer.conf | 21 + kitty/kitty-themes/themes/Borland.conf | 21 + kitty/kitty-themes/themes/Bright_Lights.conf | 21 + kitty/kitty-themes/themes/Broadcast.conf | 21 + kitty/kitty-themes/themes/Brogrammer.conf | 21 + kitty/kitty-themes/themes/C64.conf | 21 + kitty/kitty-themes/themes/CLRS.conf | 21 + kitty/kitty-themes/themes/Chalk.conf | 21 + kitty/kitty-themes/themes/Chalkboard.conf | 21 + kitty/kitty-themes/themes/Ciapre.conf | 21 + kitty/kitty-themes/themes/Cobalt2.conf | 21 + kitty/kitty-themes/themes/Cobalt_Neon.conf | 21 + kitty/kitty-themes/themes/CrayonPonyFish.conf | 21 + kitty/kitty-themes/themes/Dark_Pastel.conf | 21 + kitty/kitty-themes/themes/Darkside.conf | 21 + kitty/kitty-themes/themes/Desert.conf | 21 + kitty/kitty-themes/themes/DimmedMonokai.conf | 21 + kitty/kitty-themes/themes/DotGov.conf | 21 + kitty/kitty-themes/themes/Dracula.conf | 21 + kitty/kitty-themes/themes/Dumbledore.conf | 21 + kitty/kitty-themes/themes/Duotone_Dark.conf | 21 + kitty/kitty-themes/themes/ENCOM.conf | 21 + kitty/kitty-themes/themes/Earthsong.conf | 21 + kitty/kitty-themes/themes/Elemental.conf | 21 + kitty/kitty-themes/themes/Espresso.conf | 27 + kitty/kitty-themes/themes/Espresso_Libre.conf | 21 + kitty/kitty-themes/themes/Fideloper.conf | 21 + kitty/kitty-themes/themes/FishTank.conf | 21 + kitty/kitty-themes/themes/Flat.conf | 21 + kitty/kitty-themes/themes/Flatland.conf | 21 + kitty/kitty-themes/themes/Floraverse.conf | 21 + .../kitty-themes/themes/FrontEndDelight.conf | 21 + kitty/kitty-themes/themes/FunForrest.conf | 21 + kitty/kitty-themes/themes/Galaxy.conf | 21 + kitty/kitty-themes/themes/Github.conf | 21 + kitty/kitty-themes/themes/Glacier.conf | 21 + kitty/kitty-themes/themes/GoaBase.conf | 21 + kitty/kitty-themes/themes/Grape.conf | 21 + kitty/kitty-themes/themes/Grass.conf | 23 + kitty/kitty-themes/themes/Hardcore.conf | 21 + kitty/kitty-themes/themes/Harper.conf | 21 + kitty/kitty-themes/themes/Highway.conf | 21 + kitty/kitty-themes/themes/Hipster_Green.conf | 21 + kitty/kitty-themes/themes/Homebrew.conf | 23 + kitty/kitty-themes/themes/Hurtado.conf | 21 + kitty/kitty-themes/themes/Hybrid.conf | 21 + kitty/kitty-themes/themes/IC_Green_PPL.conf | 21 + kitty/kitty-themes/themes/IC_Orange_PPL.conf | 21 + kitty/kitty-themes/themes/IR_Black.conf | 21 + kitty/kitty-themes/themes/Jackie_Brown.conf | 21 + kitty/kitty-themes/themes/Japanesque.conf | 21 + kitty/kitty-themes/themes/Jellybeans.conf | 21 + .../themes/JetBrains_Darcula.conf | 21 + kitty/kitty-themes/themes/Kibble.conf | 21 + .../themes/Later_This_Evening.conf | 21 + kitty/kitty-themes/themes/Lavandula.conf | 21 + kitty/kitty-themes/themes/LiquidCarbon.conf | 21 + .../themes/LiquidCarbonTransparent.conf | 21 + .../LiquidCarbonTransparentInverse.conf | 21 + kitty/kitty-themes/themes/Man_Page.conf | 23 + kitty/kitty-themes/themes/Material.conf | 21 + kitty/kitty-themes/themes/MaterialDark.conf | 21 + kitty/kitty-themes/themes/Mathias.conf | 21 + kitty/kitty-themes/themes/Medallion.conf | 21 + kitty/kitty-themes/themes/Misterioso.conf | 21 + kitty/kitty-themes/themes/Molokai.conf | 21 + kitty/kitty-themes/themes/MonaLisa.conf | 21 + kitty/kitty-themes/themes/Monokai.conf | 41 ++ .../kitty-themes/themes/Monokai_Classic.conf | 47 ++ kitty/kitty-themes/themes/Monokai_Pro.conf | 47 ++ .../themes/Monokai_Pro_(Filter_Machine).conf | 47 ++ .../themes/Monokai_Pro_(Filter_Octagon).conf | 47 ++ .../Monokai_Pro_(Filter_Ristretto).conf | 47 ++ .../themes/Monokai_Pro_(Filter_Spectrum).conf | 47 ++ kitty/kitty-themes/themes/Monokai_Soda.conf | 21 + kitty/kitty-themes/themes/N0tch2k.conf | 21 + kitty/kitty-themes/themes/Neopolitan.conf | 21 + kitty/kitty-themes/themes/Neutron.conf | 21 + kitty/kitty-themes/themes/NightLion_v1.conf | 21 + kitty/kitty-themes/themes/NightLion_v2.conf | 21 + kitty/kitty-themes/themes/Nova.conf | 21 + kitty/kitty-themes/themes/Novel.conf | 23 + kitty/kitty-themes/themes/Obsidian.conf | 21 + kitty/kitty-themes/themes/Ocean.conf | 23 + .../kitty-themes/themes/OceanicMaterial.conf | 21 + kitty/kitty-themes/themes/Ollie.conf | 21 + kitty/kitty-themes/themes/OneDark.conf | 25 + kitty/kitty-themes/themes/Parasio_Dark.conf | 21 + kitty/kitty-themes/themes/PaulMillr.conf | 21 + kitty/kitty-themes/themes/PencilDark.conf | 21 + kitty/kitty-themes/themes/PencilLight.conf | 21 + kitty/kitty-themes/themes/Piatto_Light.conf | 21 + kitty/kitty-themes/themes/Pnevma.conf | 21 + kitty/kitty-themes/themes/Pro.conf | 23 + kitty/kitty-themes/themes/Red_Alert.conf | 21 + kitty/kitty-themes/themes/Red_Sands.conf | 23 + .../themes/Relaxed_Afterglow.conf | 25 + kitty/kitty-themes/themes/Renault_Style.conf | 22 + .../themes/Renault_Style_Light.conf | 21 + kitty/kitty-themes/themes/Rippedcasts.conf | 21 + kitty/kitty-themes/themes/Royal.conf | 21 + kitty/kitty-themes/themes/SeaShells.conf | 21 + kitty/kitty-themes/themes/Seafoam_Pastel.conf | 21 + kitty/kitty-themes/themes/Seti.conf | 21 + kitty/kitty-themes/themes/Shaman.conf | 21 + kitty/kitty-themes/themes/Slate.conf | 21 + kitty/kitty-themes/themes/Smyck.conf | 21 + kitty/kitty-themes/themes/SoftServer.conf | 21 + .../themes/Solarized_Darcula.conf | 21 + kitty/kitty-themes/themes/Solarized_Dark.conf | 21 + .../themes/Solarized_Dark_-_Patched.conf | 21 + .../Solarized_Dark_Higher_Contrast.conf | 21 + .../kitty-themes/themes/Solarized_Light.conf | 21 + kitty/kitty-themes/themes/Source_Code_X.conf | 21 + kitty/kitty-themes/themes/SpaceGray.conf | 21 + .../themes/SpaceGray_Eighties.conf | 21 + .../themes/SpaceGray_Eighties_Dull.conf | 21 + kitty/kitty-themes/themes/Spacedust.conf | 21 + kitty/kitty-themes/themes/Spiderman.conf | 21 + kitty/kitty-themes/themes/Spring.conf | 21 + kitty/kitty-themes/themes/Square.conf | 21 + kitty/kitty-themes/themes/Sundried.conf | 21 + kitty/kitty-themes/themes/Symfonic.conf | 21 + kitty/kitty-themes/themes/Tango_Dark.conf | 21 + kitty/kitty-themes/themes/Tango_Light.conf | 21 + kitty/kitty-themes/themes/Teerb.conf | 21 + kitty/kitty-themes/themes/Thayer_Bright.conf | 21 + kitty/kitty-themes/themes/The_Hulk.conf | 21 + kitty/kitty-themes/themes/Tomorrow.conf | 21 + kitty/kitty-themes/themes/Tomorrow_Night.conf | 21 + .../themes/Tomorrow_Night_Blue.conf | 21 + .../themes/Tomorrow_Night_Bright.conf | 21 + .../themes/Tomorrow_Night_Eighties.conf | 21 + kitty/kitty-themes/themes/ToyChest.conf | 21 + kitty/kitty-themes/themes/Treehouse.conf | 21 + kitty/kitty-themes/themes/Twilight.conf | 21 + kitty/kitty-themes/themes/Ubuntu.conf | 21 + kitty/kitty-themes/themes/Urple.conf | 21 + kitty/kitty-themes/themes/Vaughn.conf | 21 + kitty/kitty-themes/themes/VibrantInk.conf | 21 + kitty/kitty-themes/themes/WarmNeon.conf | 21 + kitty/kitty-themes/themes/Wez.conf | 21 + kitty/kitty-themes/themes/WildCherry.conf | 21 + kitty/kitty-themes/themes/Wombat.conf | 21 + kitty/kitty-themes/themes/Wryan.conf | 21 + kitty/kitty-themes/themes/Zenburn.conf | 25 + kitty/kitty-themes/themes/ayu.conf | 21 + kitty/kitty-themes/themes/ayu_light.conf | 21 + kitty/kitty-themes/themes/ayu_mirage.conf | 21 + kitty/kitty-themes/themes/gruvbox_dark.conf | 49 ++ kitty/kitty-themes/themes/gruvbox_light.conf | 49 ++ kitty/kitty-themes/themes/idleToes.conf | 21 + kitty/kitty-themes/themes/snazzy.conf | 46 ++ kitty/kitty.conf | 11 + kitty/kitty.conf.bak | 11 + kitty/theme.conf | 1 + rofi/config.rasi | 21 + runcat/icons/cat/my-running-0-symbolic.svg | 26 + runcat/icons/cat/my-running-1-symbolic.svg | 26 + runcat/icons/cat/my-running-2-symbolic.svg | 25 + runcat/icons/cat/my-running-3-symbolic.svg | 25 + runcat/icons/cat/my-running-4-symbolic.svg | 25 + runcat/icons/dab/dab00.png | Bin 0 -> 2717 bytes runcat/icons/dab/dab01.png | Bin 0 -> 2798 bytes runcat/icons/dab/dab02.png | Bin 0 -> 2994 bytes runcat/icons/dab/dab03.png | Bin 0 -> 2927 bytes runcat/icons/dab/dab04.png | Bin 0 -> 3067 bytes runcat/icons/dab/dab05.png | Bin 0 -> 2916 bytes runcat/icons/dab/dab06.png | Bin 0 -> 2567 bytes runcat/icons/dab/dab07.png | Bin 0 -> 2567 bytes runcat/icons/dab/dab08.png | Bin 0 -> 3880 bytes runcat/icons/mona/mona0.png | Bin 0 -> 1587 bytes runcat/icons/mona/mona1.png | Bin 0 -> 1579 bytes runcat/icons/mona/mona2.png | Bin 0 -> 1558 bytes runcat/icons/mona/mona3.png | Bin 0 -> 1580 bytes runcat/icons/mona/mona4.png | Bin 0 -> 1583 bytes runcat/icons/mona/mona5.png | Bin 0 -> 1594 bytes runcat/icons/mona/mona6.png | Bin 0 -> 1594 bytes runcat/icons/partyblobcat/partyblobcat00.png | Bin 0 -> 1867 bytes runcat/icons/partyblobcat/partyblobcat01.png | Bin 0 -> 1886 bytes runcat/icons/partyblobcat/partyblobcat02.png | Bin 0 -> 1905 bytes runcat/icons/partyblobcat/partyblobcat03.png | Bin 0 -> 1971 bytes runcat/icons/partyblobcat/partyblobcat04.png | Bin 0 -> 1907 bytes runcat/icons/partyblobcat/partyblobcat05.png | Bin 0 -> 1998 bytes runcat/icons/partyblobcat/partyblobcat06.png | Bin 0 -> 1610 bytes runcat/icons/partyblobcat/partyblobcat07.png | Bin 0 -> 1974 bytes runcat/icons/partyblobcat/partyblobcat08.png | Bin 0 -> 1854 bytes runcat/icons/partyblobcat/partyblobcat09.png | Bin 0 -> 1454 bytes runcat/icons/runcat-logo.png | Bin 0 -> 3753 bytes sway/config | 235 +++++++++ waybar/config.jsonc | 236 +++++++++ waybar/style.css | 273 ++++++++++ wofi/style.css | 19 + 309 files changed, 8851 insertions(+) create mode 100644 .gitignore create mode 100644 fish/completions/fisher.fish create mode 100644 fish/completions/fzf_configure_bindings.fish create mode 100644 fish/completions/nvm.fish create mode 100644 fish/conf.d/fzf.fish create mode 100644 fish/conf.d/nvm.fish create mode 100644 fish/conf.d/rustup.fish create mode 100644 fish/config.fish create mode 100644 fish/fish_plugins create mode 100644 fish/fish_variables create mode 100644 fish/functions/_fzf_configure_bindings_help.fish create mode 100644 fish/functions/_fzf_extract_var_info.fish create mode 100644 fish/functions/_fzf_preview_changed_file.fish create mode 100644 fish/functions/_fzf_preview_file.fish create mode 100644 fish/functions/_fzf_report_diff_type.fish create mode 100644 fish/functions/_fzf_report_file_type.fish create mode 100644 fish/functions/_fzf_search_directory.fish create mode 100644 fish/functions/_fzf_search_git_log.fish create mode 100644 fish/functions/_fzf_search_git_status.fish create mode 100644 fish/functions/_fzf_search_history.fish create mode 100644 fish/functions/_fzf_search_processes.fish create mode 100644 fish/functions/_fzf_search_variables.fish create mode 100644 fish/functions/_fzf_wrapper.fish create mode 100644 fish/functions/_nvm_index_update.fish create mode 100644 fish/functions/_nvm_list.fish create mode 100644 fish/functions/_nvm_version_activate.fish create mode 100644 fish/functions/_nvm_version_deactivate.fish create mode 100644 fish/functions/fisher.fish create mode 100644 fish/functions/fzf_configure_bindings.fish create mode 100644 fish/functions/nvm.fish create mode 100644 foot/catppuccin-frappe.ini create mode 100644 foot/catppuccin-latte.ini create mode 100644 foot/catppuccin-macchiato.ini create mode 100644 foot/catppuccin-mocha.ini create mode 100644 foot/foot.ini create mode 100644 gtk-3.0/assets/close-active.svg create mode 100644 gtk-3.0/assets/close-backdrop-active.svg create mode 100644 gtk-3.0/assets/close-backdrop-hover.svg create mode 100644 gtk-3.0/assets/close-backdrop-normal.svg create mode 100644 gtk-3.0/assets/close-hover.svg create mode 100644 gtk-3.0/assets/close-normal.svg create mode 100644 gtk-3.0/assets/maximize-active.svg create mode 100644 gtk-3.0/assets/maximize-backdrop-active.svg create mode 100644 gtk-3.0/assets/maximize-backdrop-hover.svg create mode 100644 gtk-3.0/assets/maximize-backdrop-normal.svg create mode 100644 gtk-3.0/assets/maximize-hover.svg create mode 100644 gtk-3.0/assets/maximize-normal.svg create mode 100644 gtk-3.0/assets/maximized-active.svg create mode 100644 gtk-3.0/assets/maximized-backdrop-active.svg create mode 100644 gtk-3.0/assets/maximized-backdrop-hover.svg create mode 100644 gtk-3.0/assets/maximized-backdrop-normal.svg create mode 100644 gtk-3.0/assets/maximized-hover.svg create mode 100644 gtk-3.0/assets/maximized-normal.svg create mode 100644 gtk-3.0/assets/minimize-active.svg create mode 100644 gtk-3.0/assets/minimize-backdrop-active.svg create mode 100644 gtk-3.0/assets/minimize-backdrop-hover.svg create mode 100644 gtk-3.0/assets/minimize-backdrop-normal.svg create mode 100644 gtk-3.0/assets/minimize-hover.svg create mode 100644 gtk-3.0/assets/minimize-normal.svg create mode 100644 gtk-3.0/bookmarks create mode 100644 gtk-3.0/colors.css create mode 100644 gtk-3.0/gtk.css create mode 100644 gtk-3.0/settings.ini create mode 100644 gtk-3.0/window_decorations.css create mode 100644 gtk-4.0/colors.css create mode 100644 gtk-4.0/gtk.css create mode 100644 gtk-4.0/settings.ini create mode 100644 gtk-4.0/window_decorations.css create mode 100644 gtkrc create mode 100644 gtkrc-2.0 create mode 100644 hypr/hypridle.conf create mode 100644 hypr/hyprland.conf create mode 100644 hypr/hyprlock.conf create mode 100644 hypr/hyprpaper.conf create mode 100755 hypr/scripts/browser.sh create mode 100755 hypr/scripts/filemanager.sh create mode 100644 kitty/current-theme.conf create mode 100644 kitty/kitty-themes/.all-contributorsrc create mode 100644 kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md create mode 100644 kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md create mode 100644 kitty/kitty-themes/.github/kitty-themes.jpg create mode 100644 kitty/kitty-themes/.tools/README.md create mode 100755 kitty/kitty-themes/.tools/color_table.sh create mode 100644 kitty/kitty-themes/.tools/convert.py create mode 100755 kitty/kitty-themes/.tools/convert_conf.swift create mode 100755 kitty/kitty-themes/.tools/extract-vscode.sh create mode 100755 kitty/kitty-themes/.tools/generate_conf.sh create mode 100755 kitty/kitty-themes/.tools/generate_theme_preview.sh create mode 100755 kitty/kitty-themes/.tools/generate_themes_previews.sh create mode 100755 kitty/kitty-themes/.tools/libcapture.sh create mode 100755 kitty/kitty-themes/.tools/markdown.sh create mode 100644 kitty/kitty-themes/.tools/palette.py create mode 100644 kitty/kitty-themes/.tools/preview.py create mode 100755 kitty/kitty-themes/.tools/previews.sh create mode 100644 kitty/kitty-themes/.tools/template.conf create mode 100644 kitty/kitty-themes/.tools/template.conf.j2 create mode 100755 kitty/kitty-themes/.tools/windowid.swift create mode 100644 kitty/kitty-themes/CONTRIBUTING.md create mode 100644 kitty/kitty-themes/LICENSE.md create mode 100644 kitty/kitty-themes/README.md create mode 100644 kitty/kitty-themes/themes/3024_Day.conf create mode 100644 kitty/kitty-themes/themes/3024_Night.conf create mode 100644 kitty/kitty-themes/themes/AdventureTime.conf create mode 100644 kitty/kitty-themes/themes/Afterglow.conf create mode 100644 kitty/kitty-themes/themes/AlienBlood.conf create mode 100644 kitty/kitty-themes/themes/Alucard.conf create mode 100644 kitty/kitty-themes/themes/Apprentice.conf create mode 100644 kitty/kitty-themes/themes/Argonaut.conf create mode 100644 kitty/kitty-themes/themes/Arthur.conf create mode 100644 kitty/kitty-themes/themes/AtelierSulphurpool.conf create mode 100644 kitty/kitty-themes/themes/Atom.conf create mode 100644 kitty/kitty-themes/themes/AtomOneLight.conf create mode 100644 kitty/kitty-themes/themes/Batman.conf create mode 100644 kitty/kitty-themes/themes/Belafonte_Day.conf create mode 100644 kitty/kitty-themes/themes/Belafonte_Night.conf create mode 100644 kitty/kitty-themes/themes/BirdsOfParadise.conf create mode 100644 kitty/kitty-themes/themes/Blazer.conf create mode 100644 kitty/kitty-themes/themes/Borland.conf create mode 100644 kitty/kitty-themes/themes/Bright_Lights.conf create mode 100644 kitty/kitty-themes/themes/Broadcast.conf create mode 100644 kitty/kitty-themes/themes/Brogrammer.conf create mode 100644 kitty/kitty-themes/themes/C64.conf create mode 100644 kitty/kitty-themes/themes/CLRS.conf create mode 100644 kitty/kitty-themes/themes/Chalk.conf create mode 100644 kitty/kitty-themes/themes/Chalkboard.conf create mode 100644 kitty/kitty-themes/themes/Ciapre.conf create mode 100644 kitty/kitty-themes/themes/Cobalt2.conf create mode 100644 kitty/kitty-themes/themes/Cobalt_Neon.conf create mode 100644 kitty/kitty-themes/themes/CrayonPonyFish.conf create mode 100644 kitty/kitty-themes/themes/Dark_Pastel.conf create mode 100644 kitty/kitty-themes/themes/Darkside.conf create mode 100644 kitty/kitty-themes/themes/Desert.conf create mode 100644 kitty/kitty-themes/themes/DimmedMonokai.conf create mode 100644 kitty/kitty-themes/themes/DotGov.conf create mode 100644 kitty/kitty-themes/themes/Dracula.conf create mode 100644 kitty/kitty-themes/themes/Dumbledore.conf create mode 100644 kitty/kitty-themes/themes/Duotone_Dark.conf create mode 100644 kitty/kitty-themes/themes/ENCOM.conf create mode 100644 kitty/kitty-themes/themes/Earthsong.conf create mode 100644 kitty/kitty-themes/themes/Elemental.conf create mode 100644 kitty/kitty-themes/themes/Espresso.conf create mode 100644 kitty/kitty-themes/themes/Espresso_Libre.conf create mode 100644 kitty/kitty-themes/themes/Fideloper.conf create mode 100644 kitty/kitty-themes/themes/FishTank.conf create mode 100644 kitty/kitty-themes/themes/Flat.conf create mode 100644 kitty/kitty-themes/themes/Flatland.conf create mode 100644 kitty/kitty-themes/themes/Floraverse.conf create mode 100644 kitty/kitty-themes/themes/FrontEndDelight.conf create mode 100644 kitty/kitty-themes/themes/FunForrest.conf create mode 100644 kitty/kitty-themes/themes/Galaxy.conf create mode 100644 kitty/kitty-themes/themes/Github.conf create mode 100644 kitty/kitty-themes/themes/Glacier.conf create mode 100644 kitty/kitty-themes/themes/GoaBase.conf create mode 100644 kitty/kitty-themes/themes/Grape.conf create mode 100644 kitty/kitty-themes/themes/Grass.conf create mode 100644 kitty/kitty-themes/themes/Hardcore.conf create mode 100644 kitty/kitty-themes/themes/Harper.conf create mode 100644 kitty/kitty-themes/themes/Highway.conf create mode 100644 kitty/kitty-themes/themes/Hipster_Green.conf create mode 100644 kitty/kitty-themes/themes/Homebrew.conf create mode 100644 kitty/kitty-themes/themes/Hurtado.conf create mode 100644 kitty/kitty-themes/themes/Hybrid.conf create mode 100644 kitty/kitty-themes/themes/IC_Green_PPL.conf create mode 100644 kitty/kitty-themes/themes/IC_Orange_PPL.conf create mode 100644 kitty/kitty-themes/themes/IR_Black.conf create mode 100644 kitty/kitty-themes/themes/Jackie_Brown.conf create mode 100644 kitty/kitty-themes/themes/Japanesque.conf create mode 100644 kitty/kitty-themes/themes/Jellybeans.conf create mode 100644 kitty/kitty-themes/themes/JetBrains_Darcula.conf create mode 100644 kitty/kitty-themes/themes/Kibble.conf create mode 100644 kitty/kitty-themes/themes/Later_This_Evening.conf create mode 100644 kitty/kitty-themes/themes/Lavandula.conf create mode 100644 kitty/kitty-themes/themes/LiquidCarbon.conf create mode 100644 kitty/kitty-themes/themes/LiquidCarbonTransparent.conf create mode 100644 kitty/kitty-themes/themes/LiquidCarbonTransparentInverse.conf create mode 100644 kitty/kitty-themes/themes/Man_Page.conf create mode 100644 kitty/kitty-themes/themes/Material.conf create mode 100644 kitty/kitty-themes/themes/MaterialDark.conf create mode 100644 kitty/kitty-themes/themes/Mathias.conf create mode 100644 kitty/kitty-themes/themes/Medallion.conf create mode 100644 kitty/kitty-themes/themes/Misterioso.conf create mode 100644 kitty/kitty-themes/themes/Molokai.conf create mode 100644 kitty/kitty-themes/themes/MonaLisa.conf create mode 100644 kitty/kitty-themes/themes/Monokai.conf create mode 100644 kitty/kitty-themes/themes/Monokai_Classic.conf create mode 100644 kitty/kitty-themes/themes/Monokai_Pro.conf create mode 100644 kitty/kitty-themes/themes/Monokai_Pro_(Filter_Machine).conf create mode 100644 kitty/kitty-themes/themes/Monokai_Pro_(Filter_Octagon).conf create mode 100644 kitty/kitty-themes/themes/Monokai_Pro_(Filter_Ristretto).conf create mode 100644 kitty/kitty-themes/themes/Monokai_Pro_(Filter_Spectrum).conf create mode 100644 kitty/kitty-themes/themes/Monokai_Soda.conf create mode 100644 kitty/kitty-themes/themes/N0tch2k.conf create mode 100644 kitty/kitty-themes/themes/Neopolitan.conf create mode 100644 kitty/kitty-themes/themes/Neutron.conf create mode 100644 kitty/kitty-themes/themes/NightLion_v1.conf create mode 100644 kitty/kitty-themes/themes/NightLion_v2.conf create mode 100644 kitty/kitty-themes/themes/Nova.conf create mode 100644 kitty/kitty-themes/themes/Novel.conf create mode 100644 kitty/kitty-themes/themes/Obsidian.conf create mode 100644 kitty/kitty-themes/themes/Ocean.conf create mode 100644 kitty/kitty-themes/themes/OceanicMaterial.conf create mode 100644 kitty/kitty-themes/themes/Ollie.conf create mode 100644 kitty/kitty-themes/themes/OneDark.conf create mode 100644 kitty/kitty-themes/themes/Parasio_Dark.conf create mode 100644 kitty/kitty-themes/themes/PaulMillr.conf create mode 100644 kitty/kitty-themes/themes/PencilDark.conf create mode 100644 kitty/kitty-themes/themes/PencilLight.conf create mode 100644 kitty/kitty-themes/themes/Piatto_Light.conf create mode 100644 kitty/kitty-themes/themes/Pnevma.conf create mode 100644 kitty/kitty-themes/themes/Pro.conf create mode 100644 kitty/kitty-themes/themes/Red_Alert.conf create mode 100644 kitty/kitty-themes/themes/Red_Sands.conf create mode 100644 kitty/kitty-themes/themes/Relaxed_Afterglow.conf create mode 100644 kitty/kitty-themes/themes/Renault_Style.conf create mode 100644 kitty/kitty-themes/themes/Renault_Style_Light.conf create mode 100644 kitty/kitty-themes/themes/Rippedcasts.conf create mode 100644 kitty/kitty-themes/themes/Royal.conf create mode 100644 kitty/kitty-themes/themes/SeaShells.conf create mode 100644 kitty/kitty-themes/themes/Seafoam_Pastel.conf create mode 100644 kitty/kitty-themes/themes/Seti.conf create mode 100644 kitty/kitty-themes/themes/Shaman.conf create mode 100644 kitty/kitty-themes/themes/Slate.conf create mode 100644 kitty/kitty-themes/themes/Smyck.conf create mode 100644 kitty/kitty-themes/themes/SoftServer.conf create mode 100644 kitty/kitty-themes/themes/Solarized_Darcula.conf create mode 100644 kitty/kitty-themes/themes/Solarized_Dark.conf create mode 100644 kitty/kitty-themes/themes/Solarized_Dark_-_Patched.conf create mode 100644 kitty/kitty-themes/themes/Solarized_Dark_Higher_Contrast.conf create mode 100644 kitty/kitty-themes/themes/Solarized_Light.conf create mode 100644 kitty/kitty-themes/themes/Source_Code_X.conf create mode 100644 kitty/kitty-themes/themes/SpaceGray.conf create mode 100644 kitty/kitty-themes/themes/SpaceGray_Eighties.conf create mode 100644 kitty/kitty-themes/themes/SpaceGray_Eighties_Dull.conf create mode 100644 kitty/kitty-themes/themes/Spacedust.conf create mode 100644 kitty/kitty-themes/themes/Spiderman.conf create mode 100644 kitty/kitty-themes/themes/Spring.conf create mode 100644 kitty/kitty-themes/themes/Square.conf create mode 100644 kitty/kitty-themes/themes/Sundried.conf create mode 100644 kitty/kitty-themes/themes/Symfonic.conf create mode 100644 kitty/kitty-themes/themes/Tango_Dark.conf create mode 100644 kitty/kitty-themes/themes/Tango_Light.conf create mode 100644 kitty/kitty-themes/themes/Teerb.conf create mode 100644 kitty/kitty-themes/themes/Thayer_Bright.conf create mode 100644 kitty/kitty-themes/themes/The_Hulk.conf create mode 100644 kitty/kitty-themes/themes/Tomorrow.conf create mode 100644 kitty/kitty-themes/themes/Tomorrow_Night.conf create mode 100644 kitty/kitty-themes/themes/Tomorrow_Night_Blue.conf create mode 100644 kitty/kitty-themes/themes/Tomorrow_Night_Bright.conf create mode 100644 kitty/kitty-themes/themes/Tomorrow_Night_Eighties.conf create mode 100644 kitty/kitty-themes/themes/ToyChest.conf create mode 100644 kitty/kitty-themes/themes/Treehouse.conf create mode 100644 kitty/kitty-themes/themes/Twilight.conf create mode 100644 kitty/kitty-themes/themes/Ubuntu.conf create mode 100644 kitty/kitty-themes/themes/Urple.conf create mode 100644 kitty/kitty-themes/themes/Vaughn.conf create mode 100644 kitty/kitty-themes/themes/VibrantInk.conf create mode 100644 kitty/kitty-themes/themes/WarmNeon.conf create mode 100644 kitty/kitty-themes/themes/Wez.conf create mode 100644 kitty/kitty-themes/themes/WildCherry.conf create mode 100644 kitty/kitty-themes/themes/Wombat.conf create mode 100644 kitty/kitty-themes/themes/Wryan.conf create mode 100644 kitty/kitty-themes/themes/Zenburn.conf create mode 100644 kitty/kitty-themes/themes/ayu.conf create mode 100644 kitty/kitty-themes/themes/ayu_light.conf create mode 100644 kitty/kitty-themes/themes/ayu_mirage.conf create mode 100644 kitty/kitty-themes/themes/gruvbox_dark.conf create mode 100644 kitty/kitty-themes/themes/gruvbox_light.conf create mode 100644 kitty/kitty-themes/themes/idleToes.conf create mode 100644 kitty/kitty-themes/themes/snazzy.conf create mode 100755 kitty/kitty.conf create mode 100644 kitty/kitty.conf.bak create mode 120000 kitty/theme.conf create mode 100644 rofi/config.rasi create mode 100644 runcat/icons/cat/my-running-0-symbolic.svg create mode 100644 runcat/icons/cat/my-running-1-symbolic.svg create mode 100644 runcat/icons/cat/my-running-2-symbolic.svg create mode 100644 runcat/icons/cat/my-running-3-symbolic.svg create mode 100644 runcat/icons/cat/my-running-4-symbolic.svg create mode 100644 runcat/icons/dab/dab00.png create mode 100644 runcat/icons/dab/dab01.png create mode 100644 runcat/icons/dab/dab02.png create mode 100644 runcat/icons/dab/dab03.png create mode 100644 runcat/icons/dab/dab04.png create mode 100644 runcat/icons/dab/dab05.png create mode 100644 runcat/icons/dab/dab06.png create mode 100644 runcat/icons/dab/dab07.png create mode 100644 runcat/icons/dab/dab08.png create mode 100644 runcat/icons/mona/mona0.png create mode 100644 runcat/icons/mona/mona1.png create mode 100644 runcat/icons/mona/mona2.png create mode 100644 runcat/icons/mona/mona3.png create mode 100644 runcat/icons/mona/mona4.png create mode 100644 runcat/icons/mona/mona5.png create mode 100644 runcat/icons/mona/mona6.png create mode 100644 runcat/icons/partyblobcat/partyblobcat00.png create mode 100644 runcat/icons/partyblobcat/partyblobcat01.png create mode 100644 runcat/icons/partyblobcat/partyblobcat02.png create mode 100644 runcat/icons/partyblobcat/partyblobcat03.png create mode 100644 runcat/icons/partyblobcat/partyblobcat04.png create mode 100644 runcat/icons/partyblobcat/partyblobcat05.png create mode 100644 runcat/icons/partyblobcat/partyblobcat06.png create mode 100644 runcat/icons/partyblobcat/partyblobcat07.png create mode 100644 runcat/icons/partyblobcat/partyblobcat08.png create mode 100644 runcat/icons/partyblobcat/partyblobcat09.png create mode 100644 runcat/icons/runcat-logo.png create mode 100644 sway/config create mode 100644 waybar/config.jsonc create mode 100644 waybar/style.css create mode 100644 wofi/style.css 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 Install plugins" + echo " fisher remove Remove installed plugins" + echo " fisher update Update installed plugins" + echo " fisher update Update all installed plugins" + echo " fisher list [] 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 Download and activate the specified Node version" + echo " nvm install Install the version specified in the nearest .nvmrc file" + echo " nvm use 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 List Node versions matching a given regex pattern" + echo " nvm current Print the currently-active Node version" + echo " nvm uninstall 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(?\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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + + + + + 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 @@ + + +Qt SVG Document +Generated with Qt + + + + + + + + + + + + + + + + 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 = Input Password... # 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 = $FAIL ($ATTEMPTS) # 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": "\"><%= contributor.name %>
<%= 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 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 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 0000000000000000000000000000000000000000..cfc02fe5d5d407d6dd2fa6fa3a2581654cae51cc GIT binary patch literal 157126 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%0A+HfNAOfJ8UPjNo|M`lHaXR1uJ|C6+zo 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 yiY$Axe;9eGvKUpa0nmec{;v literal 0 HcmV?d00001 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 | ascii_upcase) | ltrimstr(\"terminal\") | sub(\"(?.)\"; .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 + +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)): + + + + + + + + + + + + + + + + + +
Anthony Scopatz
📖
RCKT
😻
varmanishant
😻
Rasmus Lerdorf
🐛 🤔
Luflosi
🛠️ 💬 📖
Connor Holyday
🛠️
BlueDrink9
🐛
Anders Brujordet
😻
Rajesh Rajendran
🛠️
+ + + +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 , 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 (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 @@ + + + + + + image/svg+xml + + RunCat: Frame 0 + + + + RunCat: Frame 0 + + 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 @@ + + + + + + image/svg+xml + + RunCat: Frame 1 + + + + RunCat: Frame 1 + + 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 @@ + + + + + + image/svg+xml + + RunCat: Frame 2 + + + + RunCat: Frame 2 + + 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 @@ + + + + + + image/svg+xml + + RunCat: Frame 3 + + + + RunCat: Frame 3 + + 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 @@ + + + + + + image/svg+xml + + RunCat: Frame 4 + + + + RunCat: Frame 4 + + diff --git a/runcat/icons/dab/dab00.png b/runcat/icons/dab/dab00.png new file mode 100644 index 0000000000000000000000000000000000000000..363740beaa04b050d01078eea74728870bf7c610 GIT binary patch literal 2717 zcmV;O3S#w%P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw0003F zP)t-sA08nB0s;pI2n!1g6B8618yzAcBr7T{FfTGRGd3nBC>ItOFD@}VIy?&m1Vckb zadLHof`nFBT1rYxo12}})79+k?A+YlYHDoddWD!^6cD1_hj+qg7T|$H>Zhdwz6wc~VnVKR-cbW@*pR z(i{m0DGUod5)gGHAdD*~l`bht78IH=D|{v*Cn+jzA|75|VI&F&TpSs?yS=x#yE6_9 zgefIu9~@U37?hTpkC2s%jgo(WgoA~Nhl!16Xl$matfQr>zre%a;Nh#Sv97SRetv?z zzrnP&xlT?{#>dGY9wEX}tH=NV00DGTPE!Ct=GbNc0004EOGiWihy@);00007bV*G` z2jvS10th$rWu;>P00@6cL_t(&-tC%eTN67F$IWK5yKT2nC~R55QV)W3MG!;;6gXZB zs36|I|0g+_B%4jr(oM?NS7#pIz$5)J|G8u`;oiOf&Bah|f1T@Lp9DcbeEe7G2w@UN zHEvP8;r%T*1qV5oTS)#29Kf|9iyKpCj|4|i97O@1E*yCzYHHqwVUU|YMK(fyofA1e zDzH;#BSf^^3Wki}>9CQfL^&D(o*Ek=g&YUB7@3&@TT%NKml>K?c;#d)yGRs_v+4_6 z${odH$<>D&;W3GAuq$>uclx$46Ro_fbvm~68GemQGY$FnalVYuqos?YLv)Lg4x#G{4|2i`uCW|9kdq~lcckhyG<%YLqoZh zOX9i3Bu$g#ekjqEu>l<$z#_=YD-@ej_TmFld5S}Ag`|LydMLAbyGms}1u5ulTE7uvEm3``wURaVOp}Y3i?dcc}A*oW*N*a46kSV7-eafD*^(!+g2`>z=K@KE|pi0*U+s||MZprbI!$z05{ zSJLgnj|h1_%PbY4;0(_Xvh&^8Lq5?r8+T&odpbFfQm}`^-SaFvZ{xF%Cm&v5(#pUF>mkCr;CBkQ zSY$}2!H;lhkhAEJLUt}PVS`h`9IqtY`N}H4^iZuE8-q;R<@V)yrr4(@!a93W$r0aU zaHk2&uG*(;oDJqN)>_)6H@|!>D#gY-gRI1MvElbblILsDP^1{fr)6Mjr=EXz$whX{ z*$A~Q$k}Hf>*xu3xy&(HC|`8Q)m7HLzFN7`zk5z}^dv)ra9VB?2wGPNU-vpUH=Rxg z#_z3fYNiE7u-%WaJkpAA1^UfRqFTCjU7$nHM7z2z(mTp~BWd7P{_(xUw9a?Qu9;}p zSxGc+IH%>s^#}j#>&0Z)Zhq$IXIMS9iM!kUtW@_#5>2IUQ=~U@+e4BxP=2G_YJyPjJ=edTVQF zf@Au*-_tSZWRJOBXCpcMK|%gLMC=t8oh;VT%VW}8xXl{NGOI3e-nuSqMNu1_c!z#$ zXDmAT3g{iUeTj!|x#F-@oa?PS%?_?_AH z_JrRc(Qg{+v<#iX)G!Zu78&pRR%=sUT9HmBkYzv1$h?_u!$2IHXq#Xg4{Cf*fg#Jb z%F%F!T=+EDvH8Sr6KodhNKG-A!Gn@6ss=m8MT$EeAuQC2)68x3fQ~1nStiQsw~}Wr zXnvzs(QJpYTi#HZ{efV^wa*mXBG|^-hOYqGobbyAy$II;IK0FkE4j=I=G!R`bx1$) zj}1D7IVqy$73=NHCeMtwQ@)*ns^XGhDXm&x*iHeT27<~DhT z;$bvy&<1{0+RJ2lUC=gOH#%u~KjXbjYv1&TYMEu0iSnZ3f@mrVx-7*hx~b2DfIhX& zGErW;C~qpE{lb<{D1jkt z{!}mtS|3IcOyJknq2^uXfhaHK`s3_%(C}cB@z$Q4++1f_iz^;0ckNO%F}-H3Y{U{{ zjQwN{Euei|{UrAcch;MqoNX8m!#Z(5n}2WQGrfPgklA3m?fL5ClWj{;^OE1Io%Ci` zfkEBV$>nI{ZHf1juHAttts}aM%CH|HF!Z!42h&(`G;l)W;?4m+g&48|3&o@$@G*H#C~foU2+Y zzJrKESsU#P^A(|UmT|=|eeCqcsm=;?C}Xc3&RHg|yU&o*?o6#N-&^8~cXu>XoSxcF zXfMvEIpV$MPdxT#bz#uQv&YC`3|DWO4Y=fG*2Dh@#aq~SSzpOKqqV^w?+qle001R)MObuXVRU6WZEs|0W_bWIFfuVMF)=MLIaDw*IxsUjGB_(R XFgh?W|F%dR00000NkvXXu0mjfN@Nx% literal 0 HcmV?d00001 diff --git a/runcat/icons/dab/dab01.png b/runcat/icons/dab/dab01.png new file mode 100644 index 0000000000000000000000000000000000000000..0caee2d9f1b786fd5769d512aa460744b1ea90ce GIT binary patch literal 2798 zcmV004R>004l5008;`004mK004C`008P>0026e000+ooVrmw0003I zP)t-sA08n9000640tW{O3kwVr6BHa99U>tlD=IB8FETVUHYO%07Zw;VE-^bgJPQN_ zLqkPza&?1(gjQHuN=i(do1N3s)$Hu-+}z!2YHa1?<+!)GK0ZLIs;ovvNur{ql#`Xr z%gtL`T~JR_ii(Z0v$kz*aARU)H#j=O!^IT_1)QFvRaRKX$jW+qesp$uQd3nwKS5?13=2FG5OpLVj4LOVE-6YD6q+zAd?q3%DJpFu9$sEyBnk*z92vU1y|=i# zGY$-dDJ5ke99J6{l$M&0kd=##l7E1NgN2EQiH&DyY^JEJqou09z{B6*;j68&uCTOz zeuBNf!L+uyPEJt9$H^ZaA?hP00_)UL_t(&-sPHWTiZ4ifHzq>wi7!L2sn79Azce49)-dv zrF6i$OGD`frPuxcKQbN3b|fXSL1A8$vAqqM6 z=Ljs3{{Rg(l?9q-c++S?%PJE3RZ^MYi=hj1hjAsj+TDww39SfhgI%HaLTJC*&7h@s zlW0O?N1gF&%#XB1(9E6e`?OKC-*G4NAa4>K*t5#T;`PyaQn#yt4i;Yk&8+4I6l;tx zfQ~HY27kG`vTAqs0%)jI8vNecdXn@v3bmm@G!~S(T!>fJlQd0|AA%B1nncG2aN^_# zn;e^R_WDDxg!lsJ00&+rqS`?j?a=ulSs!c-k^ZPa)5g$Vpx7JQKdw9;Y(9RNzurnV zTZBD9lW!MauQ@c=x(qT{9t?LN7$n0T@$%_#*C%9@p~Y94N7JCNH^5JO$qGMZttH8B zhrb6urO)up#~yKqZ#9ngxWP-$?k4FnM?HP~B;7&uM%oqU&7hwogQBXirqDz|@ALc( z1#5%bmrFN!EM6XPgAa1<=r$LbO$NQVVV0)p?Tvf(OX!z zjy765n_Zv&e0==#lHcX!1m8{jJzMXp@9U^U!-{~U!xew@;^gJ&>C2NBOTk(y3h8cK zqNAp?hE9pzNd=@gdUbM^%j@G&w~xhaO{wv-EnXk(m(3a;9C7sKFQfCbiJZP#Iv8^H z1x9?Ov+JV+WlrF6wg#6cXPW%F)OnNq7Ek7sITo*rCR9Oli*K>t|2Q+`eB=+dkvz$4 z(g<1^6d>%v?=R1$U@M>*En4=d;kSh_3a_ z7_W=QK|z_pfsRh5$$u_UF{i0t@!n{8zE$Tk?{Y?%Q4wQ`$!7&xU9{L_w9C-NhaL;| zsrW-VL9zfVXnJ2XA+dVsk-CxN*8+WdTIvj-D?M|yQ4<}>l@SzVY0S&lrP`-&3GtYS zFbzG!+qKa7p+1->jR4-DN9Vb{U%sN99(SyOYwT&0*Fh5z-sSu+p3aB|y>39?iu^vg zq^slX>M-^Q1AVhG&8~qi_H^Yu%E2BD4zIH8sz)#1p8xrRLN`MhZwG|x2A_6!9W>LH zgMfMj8{>k-hZHz?m*q0P0HJt=yWP>n%Bnc@a9c+^7T=xV*ss${%MsaDdAlb<^}UyGK;rU&E9B8Sw_n=OJa)}lckVw7Ikz+5goHs9pV zXkXjL0_i!Bv%eVC(P}MsM3*sECd%JB>7=W!X!`W&Jb3+%NRtz^mzqw0PN%w9i=)g14v@RM7Pv?~^qTS;0!^D*S zr;^<=(aNmkgwBgM_UZEA`dL2vc0HMvyDtU$IaS*>XllEmBlCWxM9(5~_SYQ!jTmGl zx1G?r(vv+MH@HOaC9~x&5A_RT^iHLuxuEmRQkIjz*fl=+YdQy=3?+J-n0F~?)VNyd zBo%7Ei)gu^Hjnx)Xn$(!4>ab_{ghUqlOv&aTa4uRgM#9I2nvha(Rn3{b@YRZ@Xpm1 zh2??BuDsvs3tI=_|kJE>|4P741(eEgILyYO)NpZI8P; zFwl`3IxnJnA!b-nK3LERTKqH5t^z$dwFryb(aca9BUa?rkqs>@&i@zM1zKCK*wHX` z!2>eD`!=+&c#BNXo7B72_;4?)Sk3EmJGh$$(Mz#YUFJ zbRP%e*hHhVt!Vv1P3|cuM%kVnjXmTYY(L`T1AT;#-Y8S2>Az{jmJLI;OJ~CTKlqc1t{i(uP*3y zJO*I%%73h+%?mcPad#?R9q=dqU)579P z1GJ)1B>tbYuj6P&K?ejK^tnI&EFd_VehYX z$YLIo zL%7ASseUT}#D>-{^Y~~qu9;ee#qj{7?o_P(+PFuIM89+y{--VeH;t4#PL~16S1*?+ zv+a#$3&!{rc>0xFJv3R)YG-w6@dE-{T02doMG>NMMOZt^q{Xip)$cfMXk}L5Lz%ek zs2yebarZgVcV{-Vl3mQ(kc;>FXkl^QwQHfhxR~a^`$b;yxcBObU>(n%5_Jr(ang+N zke4|R|1&J!rA%F4Sf`KkS!+rmV^uyQ;GisWG{+|Nia1`my!~MSqiSDZF$Yw)#WDI9;2^s=wsu&BRhI z_Uw~Pl82|afzU~Nv|~bIN=#gWtsT0!2i5ZZ&m{-97K>8=3rZhP{nL-1x7|)9@BlR z^4HN3C%m$mnwyoAU3*Ag3E!@YJ6wz!&IulR=G69QxxhQCmF`(%@jbK;F+6Z1Kd;QD z>_gw|SN83-5mi;{(}1@9teVZg(M#0|Q5YDTy_)@W{VAg`ld2(+o4+m>YJ%OrYA%=| zgUh87)I8ntTtPHL*q4kqU@SOjZ^B5G-}{8vtmx4RHwcIGanjvG2sY8}v~k%4TkP|% z*uwkoMa8l?z6z7iO`b0luwJ-OF8t;vzlTO-1guk3JQbSh@4_+|f5WT;A`oc`6V%%L z$+ZU=EJd0HiKBS~r*MmoMbAhsPz*MkEgYSB?cP<&hOuX2KXM;+JJWv@I>N=>nAh7C zufs=b=pTG!AC6nY52lN^Bl0cozSux@y&>uxgJ(;>@3KB1jBs@e8j?g5`4zX-n?0EK zvl?c5OIS9RP)N&>v&yw^J7t5kVIv6Jip>nyjJFsD^s&XA=(uY#8cv;JNp zZzYNPm#aXN*#s596(B1H0*Q5QTJ+u}`@#Y+Zhg}ABt`Xbf9`rm&!JLX zYcR&n%3$2iJ)duOrd~{hWOZxHYAv2{J+Ia*c{=p>DNq;cy?Gs?$JM*|qkq5$Q*g@( zpP-7V&!J{QH93pT39;WcO!t35&00QY@Z0MJOqy?SZ=W2d>f}3)^mrO?QjdI$EMH7~ zwh{ZnU6ZktoZhAGt_Id%?A0D$_l59@PCWm6KHQ0(i*?8-|7U+oOT6~vzD#!85R%JY zY|TLdBmquL0K3dtRWgLQ#76kND=OBHzddW0^O3WuuQ`Gz~s&Uwzqryz;D{o!<{_} z@cA2tYZQnM#vif`ARs)b;fR5ddqZyNhvx=+uNQa2vezuM@Sl*^rv2-;y3Sn>*ih%| z(=X#o912Kj%B78M41c+2AQ*E{_CONtZJuB!#%ud7dy?U()3v9}R&%r-el_;tfoshS zk&G=|l3qV|&@|saGqomw-6nd;kN19$a5c|iR}2V~r^meu2}sUsOT7SRK6p{Fb9&jS zc2TS~(|HNgNm;Z{egRcXySzQ_(iHqT;__r`IldX2&bv=wwCb*bn9Wq@6Sg;@xk2+ zIWrqLNE1hYRWNbCYOqHaJ2%rL&WUhs1l(H83@|N51V^Kc8;Wqik4>7IF-jNGk*{ZclZ&7e@Io#WlUZyIUkhRtSY6_8a|lZ6oFz-xSpcf1E~` zF{^2ovPfteV)7X}hG_1~;=8As;EaS!#j?!kz$xmL)KGZ%aLlqIYaH6z0@NPNR5$Y2lQqsrQ?&a5YJ4B+f|frod8cM!K+4#Fpi*^Et>! zi>$}0g92%BheJ8&eRD<6h{o>m`vv4Ob-cM4CC`^8_swp;o zS*iAFW;C9AM}*Cs?e8j=#Z1M9cx?~$~$hY7h{ee51@yD4{2Iz$<&K8?@J zS#7LZee)*id=PKln&Pz`xku}}bi_n;yFePQVgZ(E)c>NMcV`ARcE`aoDnu#}Ntk)~ z;{ur8LYx!6S#~1)Ri^hxh?w||5%Nhh>Pxwvg?YaS0?6O4zw^@A;}75aPS@ZtRlXs8 zYxI}-$q(qb@tqpK+rv&!?dXsT2cBWI#nknWEf)Yk=w!ALDaOxZC; zBx#=TN+W(_?J+fjjppdA{iveQJ4R7@B3?`Egc6=urw({}iWO`SiYVM|AGem>UbfE% zI?)B*>M1;*RJT_(wS|4alxq=+YvXX|l;=G7V;pmuV^k#LTUQurU}n&fmQ_>dlRi%i zZzLq*KO&#yeOJn?Gb0%w#pUOPWT}cJNsS z+DV$Y(oPdbZ!Hro0C$ z_uDMg0Dul|Zfvb5Bq&1j(9_d{K;TRK0-_?~ygYoIoLtPzXa5Un1&z=+R7MV_0GE=y z%+D{NtfWHo$jifMan&1Y=4O^I&Te)nw6?acySrywd*{r|?DF^J@$rerq=t}?&|klP z#l|IAT3UVnJf*LXeA4i;x{44L6>E=nEGw%hC@2bxi0SR^8yp;Z_PnXFk(`*Atf{F* zsHyeF_@`%NgBTbDn9qo_o;Bs;_7=XRcK)0KOc7yVXliQVCdi)!l`4Zl!HkSjmu0Lj z@Z!aVkvyD<(&8hd6klKeLix)IY!GJ`_W)7BtnB>zmBie^x?zD^qQdi3wGrv&| zLUAE@-iyKVA8)RguCIeKO6mBu0=qf5n6<|~h_?IQ4MOM4Qx zT>XWu(8-}2!fpQ3_!+jECUkmrv`BNCDs||}So_0x(jlXT7 zlITQtQ3R4h)Mp``-b`zJgb?%Z_L%tg?XSStZ2uk@%=zMxZpe#F$=qu8@fdWIs8nAN zfXdb=m_s>VhwYP+V0s^~6wF+Y+nr2j*>-^zbw|bN4Y@ zL)O#id=_xu6c=U%rwktab$QH#-i#fzjnfw^G+ywDvkS%4H_u710OkiuW6#aO@OY2y z>Al)BF}Ly7pN`*|4cq!fE~787aT7UK0@|=YV;f6f9U#j|Z&amj+6lCkOa%I67ci+g z-D2ibF0)R1$kZv)R)Lk3#~QR>B><_9DK$QN7n0_E$cNusC5Evxid83uHW(W{Is2Jm zCXGPc*MJp_X@f#v5lFsK6<2&Nd@~)&lUmVKgiZL(ogu^>p^wnba@E!H<|30M?3`w504ofUeIHlr?SeGL8@w0BI9t!ePO@s3$jNbocJcx}3tE2@<$Z;T!1PkC8Rl}86|nr#c8wZ7x_c_mT!W; zS~b(3?QPd^R87@SU)zMqk88v~(!bCCtAp1p9#!$$VybByhF^SmG}OG;~h>1oU4kM4Po!ho4%_$ zQste$)Ev8+(^RMjTPjg5wTc{Q91Jh935uTQo7%qlAQ&Fbbc(Dlh7OJOj9X!k2jzS5O^ck>dz<2L zm5xn_=1DltEO38exEzZIQSuj+zNSj@l-9I-<&QifZ57;o%S*Z@ds#zi2eP(E&#>eg z{0~bRRXAeTu(M5ad^8ltfL^vKJlwEIZ+p2D6xk5j8na)pH+-9mkvC&>+3T3tvwl(S zoxK0%Dx1*1U7wS@nbU}K>Ngb8{T0z04NRxrBSqdDm52SYj1u^b^#^NiUG%!QJQu!J zaraOi<3635CidEtv&)cY{hgcU9*BVd^tE-~W2-ds3>OM?ebcSeVOw4WcIp_X&v@C_ z7GBDBWAJfDa@duE!2xu@=KIq0v587!yWb)qA%4==1CWiVZP@NFaZEC&Um76&md-6a1*Pzdr9f-h@i^2eN%z7d0>eP22dun(SMxmyo6kX%EQygCj-X_4o@XG_N=n{%$Azc2R-qp!`R)1Db*wc|;@E8dE1 zY|g&BW1&T?Z4_8r1Y{jg6l(V)US`279gaftFhJ}ig8+|)3S#SUts;(FPRT`lr0U7e z-E#1pw8j(9gNi2}Y@I2jNNj1i4Oq4NjNE;7L8rFy;QlqJ5RFIUIKE&kID>beaGGRB z>70xHF-KX#SVp9Y4pFY~wq5d=oy=W6w_YdpakBG+Zs`#_0PBPAc7O!X#c1e&#&OHh z{e8I;w53k-jPTGH$_Zl`B^Li8eDh(gQ*1(z4$=}bmN%jNS0o)b5b?N>90}R{LA=E(k(Z_+hY+zN~J)qd{?OUWavCap@_uHa9^a1 z=;ux`#6>e@O{L_{)27kq@oe*40!kDv4k(D#DfZOwD{VWh4(Zy{OAh$&Qtj~8({C)V zoN3>+wLg(?Sy5Mpk+ULdI7r1=?_|i1QBYLZsNXDUh9>9$o>T7vOTHVDRai+UAah6|(Gr6C@H+#h-M~1ZpvC$}bQ($$6avJ=~T@ zmUC@2OZFaRtDU>_EF5pz>Cjw6+Vi`YPW@gJ4$zt5i3fZTde0^+T+yUrB4>N$?|Hg~ zw0jCOU%n0Rx&;rXY}VPNZkFuH>bH{UA_?{c2QO0cjC`jJ-D;=KvTeTlHQp^bMwHrg z+FEhg^&Xjy3SypV10sqs7o^WHKv5!6Eb4<~$({OQHhRa|Hwh+QiZ7f2Um{}9uM{0d z{FI6OY-5D7XjL`zSOp3uM28?z*r9lF2eN?sRY#~;0lI1eW+*WoQ6_pukAz@1=$#BT z+B}Y}I*#!T3q`nTm407l9IVZVaO%09H(;Th3BT#`w|m4=a*qckNN?d5T$Wp7d2mTR zicO)V?8bVgz0nal=QF(SPJOqqYFgZ@wT@W3(R97`NZjB25nH*X_U7s^%H4+cl2<*< za<->aGA@@L-l-Z*p_~R-aj~vD$V9OEO56JxV>gZ9`x~z->L&}MwwMSp%Z6JP(!G*i zPx*GKCFKtfst|S5=ugDd(YWncA>{Kzc;&0H5C+uoZHAT^HEhxc&B zd#btzd(s4e!{CZ?ii&cu>((&1DojZgehmtPsls46KYv&MPapv2;o}wg{{#PC8C;?T O0HmI&?o(}-#Qy;C(^78$ literal 0 HcmV?d00001 diff --git a/runcat/icons/dab/dab04.png b/runcat/icons/dab/dab04.png new file mode 100644 index 0000000000000000000000000000000000000000..8ea88541f4b3a86d0fbf37794ae5a874cb00a5dc GIT binary patch literal 3067 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 Bp?m-U literal 0 HcmV?d00001 diff --git a/runcat/icons/dab/dab05.png b/runcat/icons/dab/dab05.png new file mode 100644 index 0000000000000000000000000000000000000000..8f1b155436b783b79d4bc9af6150d72ec52df78d GIT binary patch literal 2916 zcmV-q3!C(bP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw0002| zP)t-sA08n9000640t*Wa8yX!G5)>jLBs4QN3*hT3oZUwNg`6LqkQD zn4C^dQF3x~larMk2?!Mi1!H4nqobuH3J6>r8FeHef+!?Y85iW^
L4ku4~jFe`i} zB1#q%tE;R$5)fw~94`(Hla-mw%*~7|CqonxK0QHQUSV@}d7Pf3hKP)Wg^Fx#ac5|3 zZg6vpjgpU$m4AVSii(ZBzQL}rw5+YM@bK_eR#>O0t!is-WM*k-XKA*#x?o>oJGO4H z00002bW%=J004HA%{Tx600Cl4M??UK1szBL000McNliru+eR9I%iJ`wB)=F8avW{}O39^e=w^4#F2o64Skic#Zu|fLOW&E1ENL#1 zOgWnm%X|pOCt@DG_Y3~!oBz+V@m0QIq6KY7E0aiyN5F|jlzY)c;tMuT#^OH%*Sc2MD6#;eK2sl>$gGY{23eL3fj^v$x=w0jq!JF& zW9tSvF^}W(TI~-5b8}&FmC$I^x`QTUxB?G`qJC1jJ{-MOL`||rQy-dD78cf7U+bl= z8N*RC zNuX$wH0a#@4PK^APiAPS%tD)&9d@DH*rY8pD52ZXgHCee3Jbgn_$evtCXXkh>nrC^GndgQwN6G|{5Jz8!Wg zdo{0s)k^@ahh;A`bhGOshujpnD${M~-a^;d^@s|FX3Bv+9@?;L5tW3^#V9l^ZV!VRuoxvV-AyGtQd)7t(Vry!bDr-@G2 ziY;wGJxBF;jxswBG|{pZ?M)IS?M0SMSVCLnL$%(jhe)TF^PFY&ZgK+PeDCP^)vM}Q|_ecefgs4VBZqSZ9tpYNCpw;<6N}uHH`B# z)%wL2L#A0`HC_-7ZPhYEK;6C#l2#wOt{4oAVda^WB$gCQ6buqi&qrf_JSuNwMlT!v z&|Gno?{>%M89K?!SFhi^dHwyFnkkYfNjxnS_xrdW6Z9&C^hFbZ>|}d3$$wz+*{in~ z7Z*SNx+xGum5^x#<#@Z0dYdx z$X@UE2A5>-^LsRL4eaYSQ$l@VT@FP;@ZdCT6-{mg zNp&pBm}eE(TUVG`cGmP=R<#wmW&6==kjyQZBS57OR$o{SGDocdES7-L?t~RB$Tq%Svs8L>Q$Dm`yRYxMhi*&OE9oa!~aQL}zqW=+3E4`8FfjGp%h@_rDgaW6WJX#$pre9V`2F&^nwy zY7axbA1`X>MppKMxV$TUB($279bws~_D?A0I<$--z(qWk&CSd)?Hg^Ru$F!h+VP~!c1v!L86Ymer4BOO4h zUVX~*y~|HOpV!gP5=FK;hc!A+|h{>CyRQvV|Q4 z$;J+OnP01T)}g-d1PKJ4Jp64ONxAwe44voW{gcb(Yzyy^?B}I}p1oIF&_nHQr^2&g z;A^1`9Z$^0dq2FJEb)FM^K*y1oNTG})vsj5ms2O4tl`o z`1z+Yz9Z6C>~=JfGRl=T|En<N78^r^CS(J~I2QOls6Efqj=(7J73wS?>L=$zNu! z%%|DTfw6d**hWOR5>|h@KAOs-+46EyXRnzOGgc5Yl)UU8sp3tVJ$VZmeBIbwJ}mbn&>9@76>cFFzzu z=lXm+gf4=SFmk^p+9b7)oHmW^YCM3}uc^L%$jFy<(X(HQ0@lbWU4KNj$R>%eNiM{G zMpLVNrG3!mLH&hhO0#@jv=KXsi?tF2jO{~<>Z@$3H65>uHe%n9w7F2WTQmg!0cW(7 zpJW^j{{R30C3HntbYx+4WjbSWWnpw>05UK#F)cAMEigG$FfuwYGdeOjD=;uRFffkm z@Sp$y03~!qSaf7zbY(hiZ)9m^c>ppnGBGVNF)c7TR4_6+Ff%$bI4dwPIxsN*wn!WR O0000LIQ0R zEEa2cc*MsCNAK!RO(mT_Zxj?1Y-NQN6%>#LgAAnhT~kvb!_?C>)B;r$jb)@fu6S#R zLGpDpis3N5eG)ab4Gs=YiR!ABvNG-p2OpMJI2?o~CZ~snM_zJq&o6l3=N~}6edl^& z>W!P(R|A4Qy>RKITl!}WqOQf&Q(I{5Pdhrho>bO#KksGyHTLe^`{D!U$y* zRVyni(Xj~=6H|@Nw4UBR?Xg8JZx+Htd#nRb|9d*-?aO!{J|8PH3~&>qXwEByh!!>` zLTrc#zcA{T9|gxFYzvH$BYuWk47ntOl1T`An)p!S%>58~z)g+V-kOc3}k4bF^n!Bj>P* zYPzx1YqYR<#EKyYF0Udh9(b_-VM6@ro2G?g)|q`@-FqRDXngu?igw>`CSK=qCUXoN zTlmTjla6669)PA~84smB-Q0`?6geNUYWM6{FD9~o*U3OdBlmZt`w(}9fb7mWugv$P zMAA5@Q0zmIV8!7^CSJyIPD#p&ROeHoF|-a_;VHGMtg~t8ae};SXY@ zqd~f7OAIw>k2Ma~&nQp==>7(_q-BeCp(m!;kGIBpw}xDj)fbJW6}OU8mP2z$wqMFw zA03kiU>&G>&q3knyD2lFl6|?ovwGeO;|!9etKnq+!}gQoUzqeg8_ZRKX4WrRo7Nt+YC&dz^a9XCDM_G)1B z)Q~H@t2Nwg{aEoHnN3QMku4UIjL3J-+F%dayiJjv1%FbgnkBB`A89?l zarV~s*VRUJ5H?wF*(mfp9OL~&tXdg9H*1T2_Ks>etYs8Pmdd7j*9$MgI0Fsn1`X#+i6y$$vFg_oUv zdf%wqN{ZP(9m17+ny2o@qrdf6ie|@$;MHBtDw3gjeNJv%2AQt?j!J2f8~e4R^bq**}k+aFl z61a%ec_HV*a8H$+Z7>%EgOcXCiw6DG9EnMnyc@3-wLw_Vq0*l(T5fD1*34S@wQ6bJ zf&7HmLpL{Cwa)IF0@ZRKT(%GR8#kqd4C-hUxbrOEBG&(({2kYl6zB40Er~KZp;4;@ zX=-mZ?_u(n1j;MgVS;icb1qOPPhHK6-7+}ZioX3Fz;y9zo2fRa-4pGIpsXkxywQx! zgF5_jqV8ypMa^ef>tIZGOezPd3O7>_Q&o{gB)$=xoBV@{-vJ+U`O1?S#*)aFN>CA` zkk#Q(1--#3!~nn?Z!#R)+Ld-Xx&%MTrX0s4d|02LH=XKl)V&~^;)CrPwmj&6MfSc& z%Ha#Fr9yPhsKHoDBq{H?jI{qx{WNy0SI+Ct#&?_<)0Q||On%$op#$uUg%O+_^|QFT z?7fXtKdvAdagJAlHnBH?+Ol;p@exH-q!}bvLK+-jxjIuw~?`#;KUur-=Bd>KF4GZ>ToU zNm_*XMAr@f>BL9p{@n5Val-9|__CSYU-UlroHR|8bVs{c41LCrSC#7~J-B{+@@(==tO6wo62!PSOF6 zpM9umR8#Xg&er}J^6pqgv|^yAL^sXNWV^rRkT)J6aH{=64L-}@ejE~OF z#$K$Q4lQsHoxks}X!B^=o{$((dmov7-D0g4Mc3VIu4geIaa-NvltB{#)wqo(@8`QE zr4@tMmG7HyL9LcDYCPUI6-TQ$^9qln%z6u{aj)@uqPg75c=6> zZ~Ncn;3(0=h3M-|^wY-?{CEQB!gUea2!uBLj3ZoEAAV9__cRO+*N4MzFRncPpFl{M ZZ-9U7{}1f7n=9}FfQ1PbLq&U~{s%-tpH2V( literal 0 HcmV?d00001 diff --git a/runcat/icons/dab/dab07.png b/runcat/icons/dab/dab07.png new file mode 100644 index 0000000000000000000000000000000000000000..6bd83f0682c3057abe5b6c02242841e6b41f8907 GIT binary patch literal 2567 zcmZ{mdpy(s7so#?o6B4ZnS_WELz||RsLb41?ztqFp}8}YTkfW0LP;nJ&E4GQ(j-Zd z%f9G_CS7doi;40jxBT|~{rCIh_kKLy@7Mc0&+GNi`RiobV$H-wLIQ0R zEEa2cc*MsCNAK!RO(mT_Zxj?1Y-NQN6%>#LgAAnhT~kvb!_?C>)B;r$jb)@fu6S#R zLGpDpis3N5eG)ab4Gs=YiR!ABvNG-p2OpMJI2?o~CZ~snM_zJq&o6l3=N~}6edl^& z>W!P(R|A4Qy>RKITl!}WqOQf&Q(I{5Pdhrho>bO#KksGyHTLe^`{D!U$y* zRVyni(Xj~=6H|@Nw4UBR?Xg8JZx+Htd#nRb|9d*-?aO!{J|8PH3~&>qXwEByh!!>` zLTrc#zcA{T9|gxFYzvH$BYuWk47ntOl1T`An)p!S%>58~z)g+V-kOc3}k4bF^n!Bj>P* zYPzx1YqYR<#EKyYF0Udh9(b_-VM6@ro2G?g)|q`@-FqRDXngu?igw>`CSK=qCUXoN zTlmTjla6669)PA~84smB-Q0`?6geNUYWM6{FD9~o*U3OdBlmZt`w(}9fb7mWugv$P zMAA5@Q0zmIV8!7^CSJyIPD#p&ROeHoF|-a_;VHGMtg~t8ae};SXY@ zqd~f7OAIw>k2Ma~&nQp==>7(_q-BeCp(m!;kGIBpw}xDj)fbJW6}OU8mP2z$wqMFw zA03kiU>&G>&q3knyD2lFl6|?ovwGeO;|!9etKnq+!}gQoUzqeg8_ZRKX4WrRo7Nt+YC&dz^a9XCDM_G)1B z)Q~H@t2Nwg{aEoHnN3QMku4UIjL3J-+F%dayiJjv1%FbgnkBB`A89?l zarV~s*VRUJ5H?wF*(mfp9OL~&tXdg9H*1T2_Ks>etYs8Pmdd7j*9$MgI0Fsn1`X#+i6y$$vFg_oUv zdf%wqN{ZP(9m17+ny2o@qrdf6ie|@$;MHBtDw3gjeNJv%2AQt?j!J2f8~e4R^bq**}k+aFl z61a%ec_HV*a8H$+Z7>%EgOcXCiw6DG9EnMnyc@3-wLw_Vq0*l(T5fD1*34S@wQ6bJ zf&7HmLpL{Cwa)IF0@ZRKT(%GR8#kqd4C-hUxbrOEBG&(({2kYl6zB40Er~KZp;4;@ zX=-mZ?_u(n1j;MgVS;icb1qOPPhHK6-7+}ZioX3Fz;y9zo2fRa-4pGIpsXkxywQx! zgF5_jqV8ypMa^ef>tIZGOezPd3O7>_Q&o{gB)$=xoBV@{-vJ+U`O1?S#*)aFN>CA` zkk#Q(1--#3!~nn?Z!#R)+Ld-Xx&%MTrX0s4d|02LH=XKl)V&~^;)CrPwmj&6MfSc& z%Ha#Fr9yPhsKHoDBq{H?jI{qx{WNy0SI+Ct#&?_<)0Q||On%$op#$uUg%O+_^|QFT z?7fXtKdvAdagJAlHnBH?+Ol;p@exH-q!}bvLK+-jxjIuw~?`#;KUur-=Bd>KF4GZ>ToU zNm_*XMAr@f>BL9p{@n5Val-9|__CSYU-UlroHR|8bVs{c41LCrSC#7~J-B{+@@(==tO6wo62!PSOF6 zpM9umR8#Xg&er}J^6pqgv|^yAL^sXNWV^rRkT)J6aH{=64L-}@ejE~OF z#$K$Q4lQsHoxks}X!B^=o{$((dmov7-D0g4Mc3VIu4geIaa-NvltB{#)wqo(@8`QE zr4@tMmG7HyL9LcDYCPUI6-TQ$^9qln%z6u{aj)@uqPg75c=6> zZ~Ncn;3(0=h3M-|^wY-?{CEQB!gUea2!uBLj3ZoEAAV9__cRO+*N4MzFRncPpFl{M ZZ-9U7{}1f7n=9}FfQ1PbLq&U~{s%-tpH2V( literal 0 HcmV?d00001 diff --git a/runcat/icons/dab/dab08.png b/runcat/icons/dab/dab08.png new file mode 100644 index 0000000000000000000000000000000000000000..df3b2ddc8ce5411d1261997f264fc64cff38be7a GIT binary patch literal 3880 zcmZ{nXE+;N8^=>y)p%?{P;803iaFeX@jCE2003Y#GSssmYb1FG(@~O7 z{FL$=vQT;HnCbukO_>aTT&c;ipu3@kDVY-k03Ig*0O#b?;|&1dAs7JIx(@)T7XScU zfhC=Hp#Z?O2j+LIU;-c^GDAT@K}$==3*?uUlD(y*!oYBYjg9^0O%ZW139!7Pyqtos zuOAmDx2~=pJrxz1{4XFRLgwY z`1nLVdb$Wvp^nI~$)O=~cMWwY7F%U*W>Ezh6vh7sxs%!(-+AuZnxsN78!2B|zL;AVNJ zl62hrvvg)}XRl6#QgauwyH+B&-Sp*ZZ*gYKujaTHGWs|B;L-6T1>nd*_NK6#f>^@W z%n^YM8tw|2m($znkt|?iEzTHj;F^U^K;KJB?#VQURPF20U?3Ix-{AQ2ksP7Q<45v9 zS0U;diah?fShXksP)Lenrg%)1>dZV;0VpI&nD`TqW>$_A0=kNc69!W!(;k(R(35nM z!P%bFkIYm)V!36LvcIcA96jlE6K_mX+Kaa)>&3WNuM5^Q?DDugZL-hXw?#y;fapFgxKv%T26wQEx}x zS*d+pI7bMHmtnGGtSs^DAO>?fgETaPLIr`xtf(tyE;(IW$6j`Q(jQ$J4KA1DeP|I! zd4-b(^7(U}i?a~{u6$1I#A+{yj{zyTDHC4^<_Hyx%bT-qq{wSlP6mj^?aOsCz(Is(av*tq~;}S*|FiB3@tVar8Zy;P34Zy^u^r z_{OOIY*U!cZ4hH@Xlirluk)WF#wnwFA0M`+ZLDkr;X6TL zhPo`#M>dot8_gfPT7U1Ve)T^54iicB5Vn$;&n#1{t?GYx|BFkaTIZ*$NEk*`12p4r zJ@!FG&0eUGO(62H)#BB8V0zh-o&D^M1=43~2Gnd=u3uUH?ifl75-yeRk*~Nh7~&qX@;fW` zRqy==*XGpXm^C4wsBq_sb)lTk?Lh9OWX7JCBif5 zUipPxtS2-k-JpB<2a`?wB&YkE{?+0z&nQpmc}iBL7mN8gQC#257H|0p(Gp|T0!POg zur|)c1n+Hrdj9LQ%>RK_^sGtxu1I^I2kuZ3NbOuGV~t1w*Pblv%Kh|=!}$mP^=hN40t{G4*|mV?Wt3!yKp zxsc-F0gioL?s_&2FMD|(sGH5V#w{fs2RA5I4NnJkXS4po^3hJb>j@`-l2)Pvo@_bY zlwdUu&+ot+1J^(OGdZ{jz7KN=(^Gn@;(lndL3ME%m`Q}bh`#0{8I_lB>Ziq@QE$~s zz*l)MWE4%hJ=1E*nWXhPJJ!}dktj_l;rtX%qePPLHeWb*hy|2w$zI5%S*<4$NR&S<5 zA&_Q}=b9#>@00m01VupSuSam_b6X=9&JH$PWW5sI=ZQuGi)Mswm7jz|Y8lA#>(-o1 zk#BsDkHO^`<&IyA6wCW5_1p8`%m-3o;*O!g)#4l-R;A{yrMlXATs@p8%(hEOhRDNy z`De=tbI-)_W`*Z9`|mkTu&&i6Rkb%7TG*uOmKMYf4&QE*(4N&Ct99{vAO7l%beA#t zkGi$7%f`q)pRho#F8kaGpY)NNX-9f;-Fe*j{4Fwx^;IMWGgV|e96z(zq-27{xgTz( zC=D+a<;G7sb}tWHBzUx6i4X+FSz49z?Vx31ZqTJ~%Fh=-BjrQ*33C%oF2*O9-{$-u zKF$hSxp3{(T+l;$#*Y8)IE|bZhp1lPk`zicqYIieVltiFi!>>xZTFFo<{74Sjq;~< zM~c2xWxd>|vp)=KyRCXYPSDmBesREbl>KW!)t3GkAuIBEfGa1)@=>};2-i+{KO-ID znznlPXhLe~m(QFDPWE4LKAh^wpwlnL$Na_}2M_vFlZ^C+JM1OVp}zt%T39^@TQUKB zh3cUhzve2%?Z8Yfy z8crR`X(|eNPm@=$VC+B%zHnt9=S35>K5COTO;w_1pWO+QjOP@=@t6~HWE}X1zkKwf z*bscd=pTgi9o{#crjng;kep8c4Nr8wdyuf`j6M8^XAaZu!2K`}aW@Jt3#Wy*awK5b zo~Qbc%Q&bSTC@P0e03wL*Waqrn!T~ji^^Z_j=88!DLWQ*u#d)5Z_8@2n=TDhC-_e` zG0^WhU4PK7EIck9bxV0!p|xsq*R~Ueohuw)N{(q1*)x1Kt~^iEHYshCw>WYX0aL{G z&Is|IGkPD0H~F$l*_wq`e$bK{oH;%VDzQ|%v)r`0yRa<>+4`&R@PofGJio|^!YI)q zTd{y)LN@w-5MyA1BJM{pM-`h$RrER-mhl4DQ6UbH=@IvH{w`%r^m=`)Sx|v42+P)h zxX5nebS*9(e)Z?y_3p2_rREcWrMx)*_@HEKy!v`DO$IT^8B>{mnl+R4bJj`RYp{Kx z2|0~1*ftm>mYcc+rlze^Nwl*N{g77GSyIl*y~R`Q%M(xizb_a4N+Llnn;8{KTWcvl z5I=y0`K3@*6@WUA#mv1Lb(P%OW z$Hj*Y&crVH*C4k^PU8}4@UZ1$?yi6CD}4Q<9f>MF6#q+QHJ{*UPC2}f>CA7mT%rZsmrpPVu#{*^Pq|y^U|fa+f!r0`W$4I z<);z&f}Pt7qtv3Mtz9^H-|`t#r+H^-jTmpHMqAB6IZ?RcB!l0MA1y|=PJr_%GhH}C zizO>a=hr^@UBtVQK&@klAg27x4GSAQVln-;d{5-7CXMGp2D^mrQg^RR^>%tK?s1Du z!iY*@vZvDaHh;8UC;i7BwVe|XRn0_WvQsisPI}Dr)EXB%yQH`;4nZ6|CWVw4gJa2W zBE`%g;|m>M;V8?YoW{|DAkkt+W#`b?Fq^SDh=1O825yoY*v+AwxG8Zu$t!Y^^F zCLln&lZ|&>UiR$T96$9`4NFnx;h7u1b3Y11eeRW3e>4u30!np(_S7{%vB$jtL&olb zn+Q5K^3O#S1+znWxS|m1?!gGM02INB3bG0cvS5f6SWz9Uq^_tY4F;=&!5Q28<^N;w b5Ag8zjQIbCziozmWCOqm2G^_Cy&v}ESMMz_hxOlh$z}o@<{|o^0kj4KBKokyuQGWmkSpeun zT&>$<4-M29uAUURTuyfLnqOFi$g5P*3&=-sJ?MJ@argrZ76CM8GDuX^bAf~sm+D4Q z8d6n87^$T3?9W2^syxpFTo2|6Y{W4RD>N(!%Z-T$!Ul)32+`~aY#@`%gb)Ciq)abr zhVBlv2UBZ!$fUDi2~)12uRD;iD*mBXS@xczMlq$yc# zHG{birKV?XCoS*!(uN2(uQ19zYY(!crZ!1}QzH|xoPCbsXQnAN=50-{rzKA=L^V4G zjaBb6?Z>sGQpmBr}#w#R?SP$UxDvhf<2r3z1@K8ZS%L68jT3y7<+se%3=*Yy_`S;1~$ZsF?F#*gpoJwoQ0CGMxCT}@0)^oQM^in!78=5*Z}p6IHnZoq#}DA|-)<3+yF-Z`mu>zZ~%` zlD4o_oAfjL84p5q?#8Bp9J3-~!IH`boLQG7UerD1{jVRSOOQ5Y?4BNB$x zWQLnQn{KKL|9rgT>$T&~$jU10!L0!THk$R& zp)P{RY->j=I<*&EXtN8>iyB^EoOgV2U5VIPqj0wE#lm<)*R_-54|{&G>%;p5X(5+$ zI|xTBYKJ%6s<<1wo{+QaTV!VDm+X_}c3-mM?v8Y@atT43WZtZe!Q)lWTy32fLYmJD z3EUPbsW7$I{bSs8xAR0p)P${F{qd0yMuV)E-ovi#-aU5P+WqAf8|7G^&~6dOZ&zIO z%f(eM{&nGr4@w*ht4Uym%6<#^tnve zlhl@)eJ#4FDeDk>(=&vc*;c5RMBTnM?}Tb%N45jwgZ)G`a z>C*I)!dcz9TPO`O#(0rxQaoPWYF;RNo2=th(Q|lKoP=4Yfn>@c(v z^Oxf=NQe^k{B5)mhA`zfoL(;M_UB?I41P-s{zk%Dng~wuSCx*s!%Yd~2-$P!-Nt6l|ZgiZR>R|B4I3Huf12T^y^NWq=8TL%EnDo+-{RY zSIBKOKIk@)DtbGY(KB%6tl1mxvCZu7JdL@0wusVNfI z8_T-DCPrF+A3{q5AX12GdO56e4J@PmQD8~v+861`O6J>9b& zh1?FRM4M{nnA4*`g$Jv3*!j=sx)c_xkq4_BODbJR-jRG+XEm;GGiOyyepblaxTY{8B~rc$&1YXgrxg7 zA8ZK2Qo4F%glv0mU+qE%$vAdXKCsnZ0^gT|e9BpNH{N=biB18!%t}%)!ELJ+S?6 zHip*0#T6uv93GEe8npY?6!Fah-FR*`(5ZSY~G zU!MNT>^v)u>79C7t1?_4Jk%;S%FH^!o({c{j8NIX&=MWq&#f%D?HMolj_dfY!2LQ| zWvH%1f2OchmePJ;qoZ<2y-Z9j|bT%3_^(wmi*h(MW0zqn@n;Z+zr z{dv@ylGSk?xzq>LUr-pGN|aBVF1@6~w?}oP zaf{2!8=fY36nlo3k;=acJ zo)GQM*vlWrqLG%r6t}mLesA?w;773sxQfCM0`K^nRZH7nX21rpu}ypV&5K22)BEdH zPZPD>_9tG@f)p(p;W!OyKtIgsa6bruG0ND;(8$OTg?2?5VN6Ug#-{ox6b6OrlFzOD cPkP%)w($GP6TuQkl3=J_P z>bQqWoKi#~TFFZ2X390^x1Q(xasD{Z^SAJ5vZ_}p^V_;K`2gSSP+UC%)oHjVW>blhYleC?ui-u ziRt=w>WwpNc<{t{u&gK6G}M0;yE?jAr#x%#F_XyBByqr56xgcmFY-IHt7U0+(a>-I zO3heqv&1ak{m?0-G}0Jg6z!=tK37%~GM1?_qf+hegjD>-gq!jDL-qXxSlfWa zsPg>sog{0c8?=%dSaCHWt)&M%urq1ml5O$OVjOC zu9xKwliW3b8321)W`>;?n?h!<4^KXAXD|E|{mS}wMP~|rkac|N>HLsdFMHL7hZBd2 zC7o=wHp7fjY9njit@&E))O&~86h6N}2Cp1VD*KeYIyu&KKE7``dtOC%LeCto82P#+ zl*mXq^de2s0bMVlQn6B!wAvwjylyv;maH_^w)#RP4Z9b{}`PF3IYuy zoAg6W*9lcj@A%ysgWIOSMwVXcrR8m=3aQK|UfP_3y=zE!B zFjQN*<6Uu?wyaNhkdiLY&ay&0#OjZ%=@+OA2?bHVnef+ru?d-+@z+S;rz`bzO_%4a zrAX3B3g`6auOl?^dZtUnZKA0gUFL8t?x-u6ZXh z-Q?fnJP=Lz2*m(ZiRC4Vkh2mESwX*poV|xlyUG#7A?0ro{KL;M2=i^jteW|9hpOX^ z8;i_=Llhg5@AoJrqSaC^Vsx>FXY>pVD_f`S<^Ott!C$dIqMB8UrB~o2gxuX8V`pyF zXdrJ-tPg6V+yX{FCO>EqOxQW+B&WZ^L{zSpoNb2@JtsDS3Z{~js2mO%TQ~%74peqQ zn4>3yAOKcqD@zMYOAE9E4Q+|Bw#Hc5>_DS2Xmq!3PUU|B?9jkqM&$no>WRiW@|{Ei K1uu5-=l=s4&y;@v literal 0 HcmV?d00001 diff --git a/runcat/icons/mona/mona3.png b/runcat/icons/mona/mona3.png new file mode 100644 index 0000000000000000000000000000000000000000..2416c87fa5717b341aea49cf5242410030fcf585 GIT binary patch literal 1580 zcmZ`(dpOf;9Dg^P>nN9!(B@JkYV2{FOB-A4U`gvrF}Xe&>WoHcO?6zhGn67pO>zmV zmg*3RLR1Rnu9e)PtGUz8Z~b@vIPdek&*$>}exCRJ>yzqDbyHPduM7ZCrMQ!P0D!S& z7cK`my`_iDAwYx@y@&wZ;j1juk&wn5arf~8Abt}7>@xr?LKb@*fEX+Qp928E=K!D` zeWiMrBQ!vHd(y}dlDzgVE-g!?Qn`t04M@Y7KGfZSFxnF$6M-IXBsq1I=TAr|FezSS zg%K4cn6Yw3yyIEueU*6Hex?uo1Sa};R7iM4Foqcy9gGPL55cn-(U>4QlMW#O?y1>( zDOq~9s7KRl;^C=h!HRCB8d~o|@~Wgd&GOt`M~&l3(<%c`W56bjfMWks4v&{-meBrt zrJ~{dI9q1zTf%=VKaO zf+z3pF&o0RaLJ?u*6z{pSA&lN4U&9RM&`>zk;6Gk(@J;Toz#(Yp>VVKw^4fjJc3PN zYC`$7@~s{?gS#~TA@wbc%6qH5=pQoH*|sRVA}EdBXD-;ejxxXh9ZJ9XY$LJ4)nb^! zRdgPFs_Sd?6gX{EFDA2>vWQQc%gEfcyd8Pu4W8+A?r}*W$r#A?V zdcK^MoKwkj7V-$Tu>q3SPcDV&hlzDX^_Rq`l%bRj?*5|HuUlQxy2n_;niXr}I^2$Q zYQxXTpE4e=;Mw10R1-T~%MVd{w-}a~xebK`(%Ho^*zuGSj z<=;FZ{FWEzTI>;2?ocmue$tZuL)gH8K{rC4Im>tZ3nrdcz`?yB7LXIvDagFDLwp z#4QY!26Xn2_oFcF2Mbk%sn7ORd=95Z0v8UYm3`-~;wGCcob6n>yr85tp=%CD#(gY_ zqJ;4M1~QTM*lNkcdtuo3*P^B-J|H(q0)Kv%nrO}6EIypCXms8DuzH$$J&z@BBj86+ z5+lP;W`@;~pJF@5ug1E;Z{NWj+#JY(zYl;J)mkUvr2~0_Q0lVo!e4a<6k^H zvqelS_nJ%tz>}OC%FX&IxU7zxDg$#N%CJVd3>d=j7grz1|i2UZU#v zRh4cTFDlcJbP5hovv?Z0R*07by}>nac_;z-dcvQ^9POXhk(1K_swtc-h4$7j<#}tV z;>?o5dA)^O2sM(f$uh;XcI z)m65wke$WCew~y;&PFDAKNG6JVEmEe!4Lo|td*sOrKJVdo`$u=<8XK@>n&I;9*b?$ f$`k%4z=#S84~hH#KsCik6AAzdnM$g33E=z-6EvN4 literal 0 HcmV?d00001 diff --git a/runcat/icons/mona/mona4.png b/runcat/icons/mona/mona4.png new file mode 100644 index 0000000000000000000000000000000000000000..720615bde50b0aa7e5e95f610966099e05131225 GIT binary patch literal 1583 zcmZ`(dpOf;9Dg@sE(?<`LgrpBHFn$<8n#$$Nzz5d#Bgd%XT(Bl(s9|2QOYIBR4A9+ zs)tCF#3|*HSTxBkN@XgyoZrs*>zwB~@AJIR=k|V{@B7y`*^}zJN^yfC0ALl_jpzjc zj3d2p8OZ4`Icx?2BG`%I1VCk)(h^M;(wL)eUK9Y>MgVZm0gGV2LPW1 zz&hsTy506rfb#V4CP7G~_$(|gt*orbOxCGE8piUX?g50c*L0}}aCarjpiv%QA%SF( zDJ0~mk^;;?QNXrOgyt);z4x=cXeTku6XEpG<3Si!3^NE597@MWGnkk_8jA)Y0B*^d zKI9B78`S;THEeitB3RZeSJu%QPEd(&TwR*I`Y~+jt~mZ1kS7(C35q19aoPltzEttPUH=QkYe!baOz)3T;@h-lk2_1wn4WRx1(Fc?9RT_2GeNe5A}n-RrAcZ}+}dcJkF3fsq$p-uc;i zaVYP`$%>iW7?&dVz*2|naG5>Lh+MhDG@olv&9j0j$0=c}=8PZS(|!QYH%;2-F1V1s z%@b@+%L(M80|m@O7DWnY)H+UnSxQ||`EJm@x2YPjB9MEjoAPy&kSokoT-%))WDiSM zZXVvgaM_r5 z#o=Un+Mze;vUb=y$-SBo?Axp1)04xpMv{Q9A6AUjf7~cKk|(cUV0HwZf^OnRi#rJT zQIteq@4bm$UD*4m?ujc=uJGHHn1h=GxbV0BF#QIrc>KznTw%gFDw`qHardM0$1&0L zMu$2kf!5K9mUZbYINxCxoF6%+QIsFGw7yvAs$BS^Z2w@JR2l$s3Jyf|Bk6Lt6k4>tQBH?L;KUh{T$<> zzmI+5v_~l7yG9>ZYm4q2A81k-3C&q3BRM$YLaf@0cr+cE!z_DjG#5Rrk9Trk_uvfGvKcKY85s$>%S_An}O_X|5%#4 zmMTs!F8rZ2e+!{Z)HGfqZz`IuYBwvCbfv6wsqW!Yy^1en;JUKXlTlcl>eGvs@18UH z8BbytH0}2ruNK^8{Dd~e5}D}a9X;@|*FyO$7DaN}lI?zCXAa33ZS*vym3~B{aJ!+% zh}?Dc+p#%0=s5>Zn96B@LF}qEQ<*da5m1b**$$Tye+_9sF!4VvFO{`tvcJen0|EuZ zEuSe?AUBcT_v9ZYFvy$+ z%)~C+26k!(lo_%}`&rNy48k8h5d;CS#9CUITUeN5?YyxTcpMIIX=RGV;<4Bc_1ubo c6&T@xq4b#lFVvCsS3?CrCQ*sy&i>rL0C^3YnE(I) literal 0 HcmV?d00001 diff --git a/runcat/icons/mona/mona5.png b/runcat/icons/mona/mona5.png new file mode 100644 index 0000000000000000000000000000000000000000..ccc875db78c1569fd0917a80bd5c33e21ad601c0 GIT binary patch literal 1594 zcmZ{kYdDjA9LMj?mebIrq>(w4a_AW@WDd`;#ln)L17gCsvW=e6EVQP2oc0){M8YJ8 z920es5+yk#hY~}RkV7XX=REh_yXVF8;=aD$&-Zu#uHXOFH^GhKs35mP4gdfJvJ=rA z0AO6`gG+(QK(UV@Cs$sY44qJl*l$(nO2~?u1=gR8Z#>R%!RGl)&FqS*z2tb&49|VEFvm;RojdGa- zL7GK&B}tFV%ffW!1RU$j;C*?H$8nZB^&B?rEHfx1G!V;*3Jb*2LW1yYdKfl<%A$e_ z08R<%p5!!j3)JKJtsHp5WndjsuBfR#8mAQdWJ~GI!)J7(iWAHIFJgh+%6^5u7p$JH zEv#z#dTvyYWj_(?U*7-2_@TG+IKCv)t=yyLBt2qYdytkK9*<=nwHLPNCsiA^H@#UH ze10{e**zQ(UrAQ67ANaZiTHbjSnK9-j*GbS z%JVyfW_2&#dd7vgMWam!uC5l+LqsZuX#|Tg)r~jAsQ8iiold^ho8PqAC-zUWE9%$H z?6#X8NTM{|_qS}4u4FfhIbHop;pW}qW9v76NOWd$_|j6(vIl1|zR@ z*Z%6dK9YU+T*bGnD2GDlfKr!?=;^%3cC~@Aa8EST*GymeBX-pEQCVvWaUeK!t#5fyzK6a^ zt#it|K-@}~Z_-R3aeExB`f$01FgtBolfvWGOW+kFi6!5Ym6GH1mM{0NXD-XCOkoV+ z$f%D+Oma|)_fRU*5?3dA^dK1bA(uHjHHzFV@t>RC&{J8uTX-s4Mkmkk6gm;z$Y+b& z3HWi8L`VCRzIGksQ)KVw+mVj&$|~&1z5YD-2S1ojgIO$oV<<})cZI^C3pJg6Df~$+ zJLri`T^NDd-i1awbmd)bx1{AnOsEy+M6PWw5;`j8FSWl~oo(p9eSY?d=qJ6NG0YPL z-^lL8pQ)&s*m19-Hd+mzW&0&OJ$>@#`Etw2jF{S~-k@xJptj^h&`#QHRg24h$JOBG zzxjAptJp3-dFarGn1unyZw(RO_FL9RP6fL)NQNjPddgHgvF2c9@%Sfnz`#Ri`XN|YtN!V{DunJ{r2hh2Lz+yq^I#8t>3pWpjNMGKvmjqBHn~Bxk4J`1`kBu&ehUA5 zsYUL&GdDG>02T`n#qD{(fqIR=5L>CNOGC~!*INdfaeIGDE&Nm*gaXWQwG=GmJ|VP= ze)(oXRv`UZfka4xtRFKswhxoc_+mqZuoCI!ke{j+)&U2haqMDu>mDfn1e+ey@53mf zAqa(a=x6U!fPvP}D;EX*35aRGukKXpXkqF=0o%F~uLzk&BLpN~FrCsE=%L(bf>M$| z^m|)Amo&|UrfaHL@<9=1Zxec(msPnM5I$+xzkU1s0Z{>i_@% literal 0 HcmV?d00001 diff --git a/runcat/icons/mona/mona6.png b/runcat/icons/mona/mona6.png new file mode 100644 index 0000000000000000000000000000000000000000..6f9defc73a87de926298493f15003e14e7c97977 GIT binary patch literal 1594 zcmZ`(dpOf;9Dg@M7#X@E6Qx`_8;{$^tsOblg)Glg(8LfP;9ROIo{K6F= zr>Dfr90EjuGsPKzD!$qhLlM&G6K-@00MT0kh(8a&0%XO11t0Fo(`KgANU6GlPQt(VVDIe{?_)6Bo$}Mf)*03mOU^t<%Fwe# zKAc_?4NtxRmUYWD4D<#QR>w7HmuBxfWgJzKQto>W4Yq3e2)+N>`Dkfo(ZKtltY#>$ zL1KEr?kD#CG4e3(b`GuFqxL8(VtR9LKx$YLntfoG;F;;g8uPZM*E79OE=4r&@*l50 zU^;+lNhK0uBKMC3z3PAHYZymY8=kve6Ec*gGObeO=7>_94S<_Qzhmop^YAvl$uXq` zr8~%0hSeT?FO(Up{H`X2F_^aAwnfziL2B+kf7#Aug!AK{0LHDSTb#>WEQUy_tDO3u z=z1DG0ghWxCHXeLUX~F&`VqG746Engh&$tKkJcR*^R@}l4$Z^S?vnPzCpYlTdY;_n ztiKXwEtC-P#)gU>VqytQKTx7u(|A>aOd3eq*FH)PT zeeIi+DDGbWE8=s$wznL~FxPna8wVj#%4zP5cmQ^BY zo|x>WvFAP5`)FG1v{)Z9b4NVh)y!J>BW}>@L0Jo*&=VNE)HUC$_Lilzp?&n&O-Tz& zt;ryBfc7wO-TnDm{KS}jEuYJ+lfo+oQf~i9U7ea>GJm0SIcHu)XH?f5t{C;Hm`!5x zkM*T1+G9l02X_N89}CzMql1cDrM^>RG83J-Tf*actBeZGkE2phjl4)n8y+`|lp1aR zY`R$#^7(Y<*XyTU;gwbBquYJC@Q*$)qk8K&oUAWbkdR1?W(f?)-c;TfbR@IEQ51@2 zv~{2qT{;Rcwb=*cM~rL`=AT|#Uo3FdD4J_~u{crRef{i2gZLM#E~KBE7I-zU6L+ej zc4Xt7ihD5|aJf#CVVRjX}!})KP9${_@n5cT@Zs)of*!(vS$7zu` z7p3;?{TMsb>e+(-rJsIqY~p8)Wc_cJH&@F*(oVquR?hl&tn#J z9S)mlr`>0*K&hcjA~<_Q_D;UTYMjR)iOxH+$>Do)h$(_BYueM7W?@pHpV*kRrz@_% z9tH(VfyV2^YFmhaE~Qt6Uw6vc7;F+sHt6*2mcNxcmEH&l<9qQ;2d>4~e)Xg+nJ>>w9~H@%@OKXzEMwK$6J6vB0U5|n zUfQHC@Af%T;Pv|xHn2d+YbO=5e;!&TXRR>4rW`NB7S71ASk13s#X`=;V2(PxhK))P zZKOBa+vv)JxbZ$9(R(yRJ+$`)#KBjPvxP%E%z*;YA9o_$9|B;BvBX+nu@)G64-6J( rWree}Hp5_W7)+Z^ZpD8FSZu!_X4L-=h)71-&;TG2sf6-fKHPr+aXq2R literal 0 HcmV?d00001 diff --git a/runcat/icons/partyblobcat/partyblobcat00.png b/runcat/icons/partyblobcat/partyblobcat00.png new file mode 100644 index 0000000000000000000000000000000000000000..15e224bc33b34cfa9349f26f8b83581a55a24ba3 GIT binary patch literal 1867 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 V{~t&hv&vTn0MpaYL+BQf{$Fz}MyLP) literal 0 HcmV?d00001 diff --git a/runcat/icons/partyblobcat/partyblobcat02.png b/runcat/icons/partyblobcat/partyblobcat02.png new file mode 100644 index 0000000000000000000000000000000000000000..b786eee147901195fa0b94d5b87347be081c293f GIT binary patch literal 1905 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 FV1i^8lR5wZ literal 0 HcmV?d00001 diff --git a/runcat/icons/partyblobcat/partyblobcat04.png b/runcat/icons/partyblobcat/partyblobcat04.png new file mode 100644 index 0000000000000000000000000000000000000000..4dcc372d6dde0c290d3afc56f35e1ec7f2f75799 GIT binary patch literal 1907 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 literal 0 HcmV?d00001 diff --git a/runcat/icons/partyblobcat/partyblobcat06.png b/runcat/icons/partyblobcat/partyblobcat06.png new file mode 100644 index 0000000000000000000000000000000000000000..c71f285e392d6b72c82fc8e961d535f7f38dd972 GIT binary patch literal 1610 zcmZ`(c{J2}6#vfHvqf1a4=u9I%x|n?o>xZ1RLodHA!M15vW%iEKN1?$kTu&R6pBKV zEYDDB6G}>+EKdz7ZOn+lyz$>V@0|BJ=iblxocsBlbI<+bUZ6PI$!<{J0059B+1oe^ z8D1|*5n*4L$X*hXD3$0y1mMmk=@maQq1N)ZcXj~ajE>Nk0>JXRe+GbP2!L5%00@Nu zsDziaI#~(_^^^mywn84wxG~3QT*`U5!Wf;;VgH~vFVUw3^c6v-U^Q#8DnC5G`etQa zbwMqwxUMnp20N#wHLHf5eHl&(F`SHV&P_g8a-+u50*%r(*44vN>hJ)6{(fxKd7H>hG zl~72~NDj6VAEl)b7Eq1)1q0!QGD$W>*O-yH!q52?_|4~kxFJoqr&N1lG*tH-Iwd_a zGGfeKBb!OwPgjBV>2mCNhwtVipRPsbeDT$z=l&P31@7m%m}LIsF_Yi2bg&P~pj4NG z&nssKUk2#HMIi>SY>Xh^s(7cW1-1xuI<$R+fj-y22|8 zG=k&eWqL+rYh2)%;dqm>YR>&;l|O@AZV^{_Si8k*iMzzZdL@`4b5i0H2`}ZtXS|}I z*I(=Ir?tA(_L*MTBnRs>rnV8@ZapS8U>M&m#bhmph%iG#>_qk5H%E(uj*GD@VgYa| z3u7Q?Fhi~m`F+`4mOVq;oc>mdZPlX8Z1N6ALI;v>s>2af9%Wc&LVD{Hn}%p$-TS4% z9Pvtb#cYr2Rcv%9CB0*+wSL-1@NvUpo)`K;W~p0*d16d6#fn^@ z(7pS|CvVP>7Mb7RWlrm=O>{ek$f=z#7-J z#u()v9pbjM|Cn3iYKjFeIyq#GMgdvWqg!e+W37kd-5@H0nWw z*AE*#EyPa7u+`sK>ynQndJX_3hEE!?Ei?%frR4=%p|5i(CTP@+4|;yYwTSa6b` z!S>slP-6}-u}(E#el=HrP?__E1g+j@E)N0vWq^DZe5@qDK5*AhrWIpw1h_7?l^ z>s7zKO+EKKOKpIy6hv*BG%-_ZmQ)EhygA>Ws4DhZtV-f{Gzje@ITeGIV`kEIaft3= zd6uT=3$cyj%vA#A)J>wzyt}K%hEE31OV3$*$;_nDzTP$Uw_R8U>^G;cTRVaQ~$B!CA!$JHE2~S#rdK7=m6Ck_+1Q8%es--~q$o>@wI~foh6#M^yn2*>3VE~Y99c}8ZeUtwIRp{Bx literal 0 HcmV?d00001 diff --git a/runcat/icons/partyblobcat/partyblobcat07.png b/runcat/icons/partyblobcat/partyblobcat07.png new file mode 100644 index 0000000000000000000000000000000000000000..e4b07df986f0b079e2b0751bfd5cb9c51582bfa5 GIT binary patch literal 1974 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 literal 0 HcmV?d00001 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": "{}" + }, + "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": " ", + "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": "{:%Y %B}\n{calendar}", + "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