From 67033f2a315667bf7330026552c249b5279d8c56 Mon Sep 17 00:00:00 2001 From: Gabriel Brown Date: Fri, 17 Jul 2026 15:41:03 -0400 Subject: [PATCH] update kitty conf --- .../dot/forge/stylesheet/forge/stylesheet.css | 94 ++++++++++--- .../forge/stylesheet/forge/stylesheet.css.bak | 132 ++++++++++++++++++ config/dot/kitty/open-actions.conf | 9 ++ 3 files changed, 217 insertions(+), 18 deletions(-) create mode 100644 config/dot/forge/stylesheet/forge/stylesheet.css.bak create mode 100644 config/dot/kitty/open-actions.conf diff --git a/config/dot/forge/stylesheet/forge/stylesheet.css b/config/dot/forge/stylesheet/forge/stylesheet.css index 12fee7f..c80c7ac 100644 --- a/config/dot/forge/stylesheet/forge/stylesheet.css +++ b/config/dot/forge/stylesheet/forge/stylesheet.css @@ -29,41 +29,47 @@ } .window-tiled-border { - border-width: 4px; - border-color: rgb(130,170,255); + border-width: 3px; + border-color: rgb(98,160,234); border-style: solid; border-radius: 14px; } .window-split-border { - border-width: 4px; - border-color: rgb(130,170,255); + border-width: 3px; + border-color: rgb(98,160,234); border-style: solid; border-radius: 14px; } +/* forge-36le: St does not paint an asymmetric (single-side) border when a + * border-radius is set, so the directional hint never rendered. Drop the radius + * on the one-edge variants; St paints a straight single-side border reliably. */ + .window-split-horizontal { border-left-width: 0; border-top-width: 0; border-bottom-width: 0; + border-radius: 0; } .window-split-vertical { border-left-width: 0; border-top-width: 0; border-right-width: 0; + border-radius: 0; } .window-stacked-border { - border-width: 4px; - border-color: rgb(130,170,255); + border-width: 3px; + border-color: rgb(98,160,234); border-style: solid; border-radius: 14px; } .window-tabbed-border { - border-width: 4px; - border-color: rgb(130,170,255); + border-width: 3px; + border-color: rgb(98,160,234); border-style: solid; border-radius: 14px; } @@ -74,7 +80,7 @@ .window-tabbed-tab { background-color: rgba(54, 47, 45, 1); - border-color: rgba(130,170,255,0.6); + border-color: rgba(98,160,234,0.6); border-width: 1px; border-radius: 8px; color: white; @@ -83,7 +89,7 @@ } .window-tabbed-tab-active { - background-color: rgb(130,170,255); + background-color: rgb(98,160,234); color: black; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); } @@ -101,32 +107,84 @@ } .window-floated-border { - border-width: 4px; - border-color: rgb(130,170,255); + border-width: 1px; + border-color: rgb(98,160,234); border-style: solid; border-radius: 14px; } .window-tilepreview-tiled { border-width: 1px; - border-color: rgba(130,170,255,0.3); + border-color: rgba(98,160,234,0.3); border-style: solid; border-radius: 14px; - background-color: rgba(130,170,255,0.2); + background-color: rgba(98,160,234,0.2); } .window-tilepreview-stacked { border-width: 1px; - border-color: rgba(130,170,255,0.3); + border-color: rgba(98,160,234,0.3); border-style: solid; border-radius: 14px; - background-color: rgba(130,170,255,0.2); + background-color: rgba(98,160,234,0.2); +} + +.window-tilepreview-swap { + border-width: 1px; + border-color: rgba(162, 247, 43, 0.4); + border-style: solid; + border-radius: 14px; + background-color: rgba(162, 247, 43, 0.4); } .window-tilepreview-tabbed { border-width: 1px; - border-color: rgba(130,170,255,0.3); + border-color: rgba(98,160,234,0.3); border-style: solid; border-radius: 14px; - background-color: rgba(130,170,255,0.2); + background-color: rgba(98,160,234,0.2); +} + +/* Keybindings Cheatsheet Overlay */ + +.forge-cheatsheet { + background-color: #2d2d2d; + border-radius: 16px; + padding: 24px 32px; + border: 1px solid #4d4d4d; + box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4); +} + +.forge-cheatsheet-title { + font-size: 16px; + font-weight: bold; + color: #ffffff; + margin-bottom: 20px; + text-align: center; +} + +.forge-cheatsheet-category { + font-size: 13px; + font-weight: bold; + color: #78aeed; + margin-top: 16px; + margin-bottom: 8px; +} + +.forge-cheatsheet-row { + font-size: 12px; + color: #eeeeec; + margin: 4px 0; + padding: 2px 0; +} + +.forge-cheatsheet-key { + font-family: monospace; + font-weight: bold; + color: #f5c211; + min-width: 180px; +} + +.forge-cheatsheet-desc { + color: #d0cfcc; } \ No newline at end of file diff --git a/config/dot/forge/stylesheet/forge/stylesheet.css.bak b/config/dot/forge/stylesheet/forge/stylesheet.css.bak new file mode 100644 index 0000000..12fee7f --- /dev/null +++ b/config/dot/forge/stylesheet/forge/stylesheet.css.bak @@ -0,0 +1,132 @@ +.tiled { + color: rgba(236, 94, 94, 1); + opacity: 1; + border-width: 3px; +} + +.split { + color: rgba(255, 246, 108, 1); + opacity: 1; + border-width: 3px; +} + +.stacked { + color: rgba(247, 162, 43, 1); + opacity: 1; + border-width: 3px; +} + +.tabbed { + color: rgba(17, 199, 224, 1); + opacity: 1; + border-width: 3px; +} + +.floated { + color: rgba(180, 167, 214, 1); + border-width: 3px; + opacity: 1; +} + +.window-tiled-border { + border-width: 4px; + border-color: rgb(130,170,255); + border-style: solid; + border-radius: 14px; +} + +.window-split-border { + border-width: 4px; + border-color: rgb(130,170,255); + border-style: solid; + border-radius: 14px; +} + +.window-split-horizontal { + border-left-width: 0; + border-top-width: 0; + border-bottom-width: 0; +} + +.window-split-vertical { + border-left-width: 0; + border-top-width: 0; + border-right-width: 0; +} + +.window-stacked-border { + border-width: 4px; + border-color: rgb(130,170,255); + border-style: solid; + border-radius: 14px; +} + +.window-tabbed-border { + border-width: 4px; + border-color: rgb(130,170,255); + border-style: solid; + border-radius: 14px; +} + +.window-tabbed-bg { + border-radius: 8px; +} + +.window-tabbed-tab { + background-color: rgba(54, 47, 45, 1); + border-color: rgba(130,170,255,0.6); + border-width: 1px; + border-radius: 8px; + color: white; + margin: 1px; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); +} + +.window-tabbed-tab-active { + background-color: rgb(130,170,255); + color: black; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); +} + +.window-tabbed-tab-close { + padding: 3px; + margin: 4px; + border-radius: 16px; + width: 16px; + background-color: #e06666; +} + +.window-tabbed-tab-icon { + margin: 3px; +} + +.window-floated-border { + border-width: 4px; + border-color: rgb(130,170,255); + border-style: solid; + border-radius: 14px; +} + +.window-tilepreview-tiled { + border-width: 1px; + border-color: rgba(130,170,255,0.3); + border-style: solid; + border-radius: 14px; + background-color: rgba(130,170,255,0.2); +} + +.window-tilepreview-stacked { + border-width: 1px; + border-color: rgba(130,170,255,0.3); + border-style: solid; + border-radius: 14px; + background-color: rgba(130,170,255,0.2); +} + +.window-tilepreview-tabbed { + border-width: 1px; + border-color: rgba(130,170,255,0.3); + border-style: solid; + border-radius: 14px; + background-color: rgba(130,170,255,0.2); +} \ No newline at end of file diff --git a/config/dot/kitty/open-actions.conf b/config/dot/kitty/open-actions.conf new file mode 100644 index 0000000..44a6f75 --- /dev/null +++ b/config/dot/kitty/open-actions.conf @@ -0,0 +1,9 @@ +# Open plain file paths with neovim in a new kitty tab +protocol file +mime text/* +action launch --type=tab nvim -- "$FILE_PATH" + +# Also handle paths with line/column numbers if supported by the source +protocol file +fragment_matches ^(\d+)(?::(\d+))?$ +action launch --type=tab nvim "+call cursor($1, ${2:-1})" -- "$FILE_PATH"