diff --git a/data/data.toml b/data/data.toml index 63b7503..50f5f78 100644 --- a/data/data.toml +++ b/data/data.toml @@ -10,6 +10,14 @@ external = "~/.config/zsh/top-zshrc" internal = "data/zsh/bottom-zshrc" external = "~/.config/zsh/bottom-zshrc" +[[apps.zsh.paths]] +internal = "data/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh" +external = "~/.config/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh" + +[[apps.zsh.paths]] +internal = "data/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh" +url = "https://raw.githubusercontent.com/catppuccin/zsh-syntax-highlighting/refs/heads/main/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh" + [[apps.nvim.paths]] internal = "data/nvim/init.lua" external = "~/.config/nvim/init.lua" diff --git a/data/zsh/bottom-zshrc b/data/zsh/bottom-zshrc index 8c2bd2a..7c2727e 100644 --- a/data/zsh/bottom-zshrc +++ b/data/zsh/bottom-zshrc @@ -25,6 +25,9 @@ zstyle ':completion:*' special-dirs true # zsh plugins # https://github.com/zsh-users/zsh-syntax-highlighting if [[ -f /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]]; then + # https://github.com/catppuccin/zsh-syntax-highlighting + source ~/.config/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh + source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh typeset -A ZSH_HIGHLIGHT_STYLES diff --git a/data/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh b/data/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh new file mode 100644 index 0000000..b7387fa --- /dev/null +++ b/data/zsh/themes/catppuccin_mocha-zsh-syntax-highlighting.zsh @@ -0,0 +1,74 @@ +# Catppuccin Mocha Theme (for zsh-syntax-highlighting) +# +# Paste this files contents inside your ~/.zshrc before you activate zsh-syntax-highlighting +ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor) +typeset -gA ZSH_HIGHLIGHT_STYLES + +# Main highlighter styling: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md +# +## General +### Diffs +### Markup +## Classes +## Comments +ZSH_HIGHLIGHT_STYLES[comment]='fg=#585b70' +## Constants +## Entitites +## Functions/methods +ZSH_HIGHLIGHT_STYLES[alias]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[function]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[command]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[precommand]='fg=#a6e3a1,italic' +ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#fab387,italic' +ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#fab387' +ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#fab387' +ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#cba6f7' +## Keywords +## Built ins +ZSH_HIGHLIGHT_STYLES[builtin]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#a6e3a1' +ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#a6e3a1' +## Punctuation +ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#f38ba8' +ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#f38ba8' +ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#f38ba8' +ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#f38ba8' +## Serializable / Configuration Languages +## Storage +## Strings +ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#f9e2af' +ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#f9e2af' +ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#f9e2af' +ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#eba0ac' +ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#f9e2af' +ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#eba0ac' +ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#f9e2af' +## Variables +ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#eba0ac' +ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[assign]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#cdd6f4' +## No category relevant in spec +ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#eba0ac' +ZSH_HIGHLIGHT_STYLES[path]='fg=#cdd6f4,underline' +ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#f38ba8,underline' +ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#cdd6f4,underline' +ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#f38ba8,underline' +ZSH_HIGHLIGHT_STYLES[globbing]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#cba6f7' +#ZSH_HIGHLIGHT_STYLES[command-substitution]='fg=?' +#ZSH_HIGHLIGHT_STYLES[command-substitution-unquoted]='fg=?' +#ZSH_HIGHLIGHT_STYLES[process-substitution]='fg=?' +#ZSH_HIGHLIGHT_STYLES[arithmetic-expansion]='fg=?' +ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#eba0ac' +ZSH_HIGHLIGHT_STYLES[redirection]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[arg0]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[default]='fg=#cdd6f4' +ZSH_HIGHLIGHT_STYLES[cursor]='fg=#cdd6f4' diff --git a/justfile b/justfile index 8c4b159..d570440 100644 --- a/justfile +++ b/justfile @@ -28,7 +28,9 @@ format: # go install mvdan.cc/sh/v3/cmd/shfmt@latest gofimports -w --company github.com/make-go-great,github.com/haunt98 . gofumpt -w -extra . - shfmt -w -s -i 4 ./scripts ./data/zsh + shfmt -w -s -i 4 ./scripts \ + ./data/zsh/top-zshrc \ + ./data/zsh/bottom-zshrc build: go build ./cmd/dot