kitty terminal theme config
This commit is contained in:
@@ -18,6 +18,7 @@ My current setup is built around these core components:
|
|||||||
- **[Waybar](https://github.com/Alexays/Waybar):** A customizable, modular status bar.
|
- **[Waybar](https://github.com/Alexays/Waybar):** A customizable, modular status bar.
|
||||||
- **[AGS](https://github.com/Aylur/ags):** Aylur's Gtk Shell, used for creating custom, scriptable desktop widgets.
|
- **[AGS](https://github.com/Aylur/ags):** Aylur's Gtk Shell, used for creating custom, scriptable desktop widgets.
|
||||||
- **Dynamic Theming:** Seamlessly integrated with Pywal to extract color palettes from wallpapers and apply them instantly across the entire system (widgets, terminal, status bar).
|
- **Dynamic Theming:** Seamlessly integrated with Pywal to extract color palettes from wallpapers and apply them instantly across the entire system (widgets, terminal, status bar).
|
||||||
|
- **[kitty](https://sw.kovidgoyal.net/kitty/):** The terminal, with its own checked-in color theme — see [`kitty/`](kitty/README.md).
|
||||||
|
|
||||||
### Directory Structure
|
### Directory Structure
|
||||||
|
|
||||||
@@ -29,17 +30,19 @@ My current setup is built around these core components:
|
|||||||
- **`themes/`**: Drop-in local color themes (one `colors.toml` per theme) that `install.sh` deploys into Omarchy's theme directory. See [`themes/README.md`](themes/README.md).
|
- **`themes/`**: Drop-in local color themes (one `colors.toml` per theme) that `install.sh` deploys into Omarchy's theme directory. See [`themes/README.md`](themes/README.md).
|
||||||
- **`omarchy/hooks/`**: Event hooks for the Omarchy system (e.g. automatically applying dynamic themes when changing wallpapers).
|
- **`omarchy/hooks/`**: Event hooks for the Omarchy system (e.g. automatically applying dynamic themes when changing wallpapers).
|
||||||
- **`branding/`**: Custom ASCII art and system branding assets.
|
- **`branding/`**: Custom ASCII art and system branding assets.
|
||||||
|
- **`kitty/`**: kitty terminal config and its color theme, applied by hand rather than by `install.sh`. See [`kitty/README.md`](kitty/README.md).
|
||||||
|
|
||||||
## Docs
|
## Docs
|
||||||
|
|
||||||
- [Wallpaper Gallery](wallpaper-gallery/index.md) — preview of every wallpaper in `wallpapers/`, split alphabetically across [0-9, A-E](wallpaper-gallery/a-d.md), [E-M](wallpaper-gallery/e-m.md), [M-R](wallpaper-gallery/m-r.md), [R-Y](wallpaper-gallery/r-z.md).
|
- [Wallpaper Gallery](wallpaper-gallery/index.md) — preview of every wallpaper in `wallpapers/`, split alphabetically across [0-9, A-E](wallpaper-gallery/a-d.md), [E-M](wallpaper-gallery/e-m.md), [M-R](wallpaper-gallery/m-r.md), [R-Y](wallpaper-gallery/r-z.md).
|
||||||
- [Themes](themes/README.md) — how to add a local color theme.
|
- [Themes](themes/README.md) — how to add a local color theme.
|
||||||
|
- [kitty](kitty/README.md) — terminal config, and how to port a theme to it.
|
||||||
- [Keybinds](hypr/keybinds.md) — custom Hyprland keybindings on top of Omarchy's defaults.
|
- [Keybinds](hypr/keybinds.md) — custom Hyprland keybindings on top of Omarchy's defaults.
|
||||||
- [Commands](commands.md) — custom `blob_*` CLI commands exposed by the installer.
|
- [Commands](commands.md) — custom `blob_*` CLI commands exposed by the installer.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
An automated installer script (`install.sh`) is provided to safely apply these configurations to your system.
|
An automated installer script (`install.sh`) is provided to safely apply these configurations to your system. It targets Arch — `kitty/` is applied by hand, see [`kitty/README.md`](kitty/README.md).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Run the standard installer
|
# Run the standard installer
|
||||||
|
|||||||
@@ -0,0 +1,49 @@
|
|||||||
|
# kitty
|
||||||
|
|
||||||
|
Config for the [kitty](https://sw.kovidgoyal.net/kitty/) terminal.
|
||||||
|
`install.sh` does not deploy this — it shells out to `pacman`,
|
||||||
|
`sha256sum`, `hyprctl`, and `omarchy-theme-set`, so it only runs where
|
||||||
|
Omarchy does. Apply these by hand (or symlink them, below).
|
||||||
|
|
||||||
|
Two files, mirroring how kitty is set up on the Omarchy side:
|
||||||
|
|
||||||
|
- `kitty.conf` — fonts, window, tabs, cursor, and platform options.
|
||||||
|
Ends up as one `include current-theme.conf` plus real settings; kitty's
|
||||||
|
own 125KB commented reference config is deliberately not checked in.
|
||||||
|
- `current-theme.conf` — the active palette, currently **flats**.
|
||||||
|
|
||||||
|
## Theming
|
||||||
|
|
||||||
|
Under Omarchy, `omarchy-theme-set` regenerates the terminal palette from
|
||||||
|
`themes/<name>/colors.toml` whenever the theme changes. Nothing does that
|
||||||
|
here, so `current-theme.conf` is a hand translation of that same toml
|
||||||
|
into kitty's config syntax — meaning it does **not** track edits to
|
||||||
|
`themes/flats/colors.toml`.
|
||||||
|
|
||||||
|
To switch themes, retranslate the 22 keys from another
|
||||||
|
`themes/<name>/colors.toml`. The mapping is direct (`background` →
|
||||||
|
`background`, `color0` → `color0`, …), with the kitty-only extras
|
||||||
|
(borders, tab bar, marks, `cursor_text_color`, `url_color`) derived from
|
||||||
|
`accent` and `background`.
|
||||||
|
|
||||||
|
## Fonts
|
||||||
|
|
||||||
|
`kitty.conf` expects **JetBrainsMono Nerd Font**:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
brew install --cask font-jetbrains-mono-nerd-font
|
||||||
|
```
|
||||||
|
|
||||||
|
## Install
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Symlink (config tracks the repo — recommended)
|
||||||
|
ln -sf "$PWD/kitty/kitty.conf" ~/.config/kitty/kitty.conf
|
||||||
|
ln -sf "$PWD/kitty/current-theme.conf" ~/.config/kitty/current-theme.conf
|
||||||
|
|
||||||
|
# Or copy, if you'd rather edit the live files independently
|
||||||
|
cp kitty/*.conf ~/.config/kitty/
|
||||||
|
```
|
||||||
|
|
||||||
|
Reload a running kitty with `ctrl+cmd+,`. New windows pick up changes on
|
||||||
|
their own.
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
# vim:ft=kitty
|
||||||
|
|
||||||
|
## name: Flats
|
||||||
|
## upstream: themes/flats/colors.toml
|
||||||
|
## blurb: Dark theme with a soft blue accent. Hand-translated from the
|
||||||
|
## Omarchy colors.toml, since macOS has no omarchy-theme-set.
|
||||||
|
|
||||||
|
|
||||||
|
# The basic colors
|
||||||
|
foreground #cbd2d9
|
||||||
|
background #0f1012
|
||||||
|
selection_foreground #0f1012
|
||||||
|
selection_background #7babe3
|
||||||
|
|
||||||
|
# Cursor colors
|
||||||
|
cursor #cbd2d9
|
||||||
|
cursor_text_color #0f1012
|
||||||
|
|
||||||
|
# URL underline color when hovering with mouse
|
||||||
|
url_color #7babe3
|
||||||
|
|
||||||
|
# Kitty window border colors
|
||||||
|
active_border_color #7babe3
|
||||||
|
inactive_border_color #949494
|
||||||
|
bell_border_color #d58638
|
||||||
|
|
||||||
|
# OS Window titlebar colors
|
||||||
|
wayland_titlebar_color system
|
||||||
|
macos_titlebar_color system
|
||||||
|
|
||||||
|
# Tab bar colors
|
||||||
|
active_tab_foreground #0f1012
|
||||||
|
active_tab_background #7babe3
|
||||||
|
inactive_tab_foreground #cbd2d9
|
||||||
|
inactive_tab_background #0f1012
|
||||||
|
tab_bar_background #000000
|
||||||
|
|
||||||
|
# Colors for marks (marked text in the terminal)
|
||||||
|
mark1_foreground #0f1012
|
||||||
|
mark1_background #7babe3
|
||||||
|
mark2_foreground #0f1012
|
||||||
|
mark2_background #38d586
|
||||||
|
mark3_foreground #0f1012
|
||||||
|
mark3_background #d58638
|
||||||
|
|
||||||
|
# The 16 terminal colors
|
||||||
|
#
|
||||||
|
# Note: flats maps the ANSI slots unconventionally — color4 (blue) holds a
|
||||||
|
# magenta and color6 (cyan) holds the blue, among others. Kept faithful to
|
||||||
|
# colors.toml so both machines render identically; the comments below name
|
||||||
|
# the ANSI slot, not the resulting hue.
|
||||||
|
|
||||||
|
# black
|
||||||
|
color0 #000000
|
||||||
|
color8 #949494
|
||||||
|
|
||||||
|
# red
|
||||||
|
color1 #d53838
|
||||||
|
color9 #d53838
|
||||||
|
|
||||||
|
# green
|
||||||
|
color2 #38d4d5
|
||||||
|
color10 #38d4d5
|
||||||
|
|
||||||
|
# yellow
|
||||||
|
color3 #d58638
|
||||||
|
color11 #d58638
|
||||||
|
|
||||||
|
# blue
|
||||||
|
color4 #d53886
|
||||||
|
color12 #d53886
|
||||||
|
|
||||||
|
# magenta
|
||||||
|
color5 #38d586
|
||||||
|
color13 #38d586
|
||||||
|
|
||||||
|
# cyan
|
||||||
|
color6 #3886d5
|
||||||
|
color14 #3886d5
|
||||||
|
|
||||||
|
# white
|
||||||
|
color7 #d4d4d4
|
||||||
|
color15 #d4d4d4
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
# vim:ft=kitty
|
||||||
|
#
|
||||||
|
# kitty config for macOS. The Arch side of these dotfiles gets its terminal
|
||||||
|
# colors from omarchy-theme-set rewriting the active theme; there is no
|
||||||
|
# omarchy here, so current-theme.conf is checked in alongside this file and
|
||||||
|
# generated by hand from themes/<name>/colors.toml.
|
||||||
|
|
||||||
|
include current-theme.conf
|
||||||
|
|
||||||
|
|
||||||
|
# Fonts
|
||||||
|
font_family JetBrainsMono Nerd Font Regular
|
||||||
|
bold_font JetBrainsMono Nerd Font Bold
|
||||||
|
italic_font JetBrainsMono Nerd Font Italic
|
||||||
|
bold_italic_font JetBrainsMono Nerd Font Bold Italic
|
||||||
|
font_size 14.0
|
||||||
|
adjust_line_height 115%
|
||||||
|
disable_ligatures cursor
|
||||||
|
|
||||||
|
# Use CoreText's glyph rendering rather than kitty's own blending.
|
||||||
|
text_composition_strategy platform
|
||||||
|
|
||||||
|
|
||||||
|
# Window
|
||||||
|
window_padding_width 18
|
||||||
|
hide_window_decorations no
|
||||||
|
background_opacity 1.0
|
||||||
|
background_blur 0
|
||||||
|
confirm_os_window_close 0
|
||||||
|
remember_window_size yes
|
||||||
|
initial_window_width 120c
|
||||||
|
initial_window_height 34c
|
||||||
|
inactive_text_alpha 0.85
|
||||||
|
|
||||||
|
|
||||||
|
# Tabs
|
||||||
|
tab_bar_edge top
|
||||||
|
tab_bar_style powerline
|
||||||
|
tab_powerline_style slanted
|
||||||
|
tab_bar_min_tabs 2
|
||||||
|
tab_title_template "{index} {title}"
|
||||||
|
|
||||||
|
|
||||||
|
# Cursor
|
||||||
|
cursor_shape beam
|
||||||
|
cursor_beam_thickness 1.6
|
||||||
|
cursor_blink_interval 0
|
||||||
|
cursor_trail 0
|
||||||
|
|
||||||
|
|
||||||
|
# Performance
|
||||||
|
sync_to_monitor yes
|
||||||
|
repaint_delay 8
|
||||||
|
input_delay 2
|
||||||
|
wheel_scroll_multiplier 3.0
|
||||||
|
|
||||||
|
|
||||||
|
# Bell
|
||||||
|
enable_audio_bell no
|
||||||
|
visual_bell_duration 0.1
|
||||||
|
|
||||||
|
|
||||||
|
# Scrollback
|
||||||
|
scrollback_lines 20000
|
||||||
|
|
||||||
|
|
||||||
|
# macOS specific
|
||||||
|
macos_option_as_alt yes
|
||||||
|
macos_quit_when_last_window_closed yes
|
||||||
|
macos_show_window_title_in all
|
||||||
|
macos_traditional_fullscreen no
|
||||||
@@ -58,3 +58,11 @@ Any theme already installed under `~/.config/omarchy/themes/` or
|
|||||||
bundled with Omarchy itself (`$OMARCHY_PATH/themes/`) shows up
|
bundled with Omarchy itself (`$OMARCHY_PATH/themes/`) shows up
|
||||||
automatically too — this directory is just for ones you want tracked
|
automatically too — this directory is just for ones you want tracked
|
||||||
in dotfiles.
|
in dotfiles.
|
||||||
|
|
||||||
|
## kitty
|
||||||
|
|
||||||
|
`omarchy-theme-set` and its app-config templates only run under Omarchy,
|
||||||
|
so themes do not propagate to the standalone kitty config in
|
||||||
|
[`kitty/`](../kitty/README.md). It carries its own hand-translated copy
|
||||||
|
of one palette at `kitty/current-theme.conf` — currently **flats** —
|
||||||
|
which changing a theme's `colors.toml` here does not update.
|
||||||
|
|||||||
Reference in New Issue
Block a user