mirror of
https://github.com/avinal/dotfiles.git
synced 2026-07-03 23:20:07 +05:30
feat: major update to all configs
- move older config to archive Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com>
This commit is contained in:
@@ -1,104 +1,49 @@
|
||||
[window]
|
||||
padding = { x = 7, y = 5 }
|
||||
dynamic_padding = true
|
||||
decorations = "Buttonless"
|
||||
dynamic_title = false
|
||||
|
||||
[font]
|
||||
normal = { family = "Monaspace Neon", style = "Regular" }
|
||||
bold = { family = "Monaspace Neon", style = "Bold" }
|
||||
italic = { family = "Monaspace Neon", style = "Italic" }
|
||||
bold_italic = { family = "Monaspace Neon", style = "Bold Italic" }
|
||||
size = 15
|
||||
|
||||
[terminal.shell]
|
||||
program = "zellij"
|
||||
args = ["-l", "welcome"]
|
||||
|
||||
# Nightfox Alacritty Colors
|
||||
## name: carbonfox
|
||||
## upstream: https://github.com/edeneast/nightfox.nvim/raw/main/extra/carbonfox/alacritty.toml
|
||||
normal = { family = "Iosevka Term", style = "Regular" }
|
||||
bold = { family = "Iosevka Term", style = "Bold" }
|
||||
italic = { family = "Iosevka Term", style = "Italic" }
|
||||
bold_italic = { family = "Iosevka Term", style = "Bold Italic" }
|
||||
size = 14
|
||||
|
||||
[colors.primary]
|
||||
background = "#161616"
|
||||
foreground = "#f2f4f8"
|
||||
dim_foreground = "#b6b8bb"
|
||||
bright_foreground = "#f9fbff"
|
||||
background = "#111111"
|
||||
foreground = "#c1c9d2"
|
||||
|
||||
[colors.cursor]
|
||||
text = "#f2f4f8"
|
||||
cursor = "#b6b8bb"
|
||||
|
||||
[colors.vi_mode_cursor]
|
||||
text = "#f2f4f8"
|
||||
cursor = "#33b1ff"
|
||||
|
||||
[colors.search.matches]
|
||||
foreground = "#f2f4f8"
|
||||
background = "#525253"
|
||||
|
||||
[colors.search.focused_match]
|
||||
foreground = "#f2f4f8"
|
||||
background = "#3ddbd9"
|
||||
|
||||
[colors.footer_bar]
|
||||
foreground = "#f2f4f8"
|
||||
background = "#353535"
|
||||
|
||||
[colors.hints.start]
|
||||
foreground = "#f2f4f8"
|
||||
background = "#3ddbd9"
|
||||
|
||||
[colors.hints.end]
|
||||
foreground = "#f2f4f8"
|
||||
background = "#353535"
|
||||
text = "#111111"
|
||||
cursor = "#c1c9d2"
|
||||
|
||||
[colors.selection]
|
||||
text = "#f2f4f8"
|
||||
background = "#2a2a2a"
|
||||
text = "#ffffff"
|
||||
background = "#3e4043"
|
||||
|
||||
[colors.normal]
|
||||
black = "#282828"
|
||||
red = "#ee5396"
|
||||
green = "#25be6a"
|
||||
yellow = "#f8e17c"
|
||||
blue = "#33b1ff"
|
||||
magenta = "#be95ff"
|
||||
cyan = "#3ddbd9"
|
||||
white = "#dfdfe0"
|
||||
black = "#000000"
|
||||
red = "#ed5f74"
|
||||
green = "#1ea672"
|
||||
yellow = "#d97917"
|
||||
blue = "#688ef1"
|
||||
magenta = "#c96ed0"
|
||||
cyan = "#3a97d4"
|
||||
white = "#e3e8ee"
|
||||
|
||||
[colors.bright]
|
||||
black = "#484848"
|
||||
red = "#f16da6"
|
||||
green = "#46c880"
|
||||
yellow = "#f8e17c"
|
||||
blue = "#52bdff"
|
||||
magenta = "#c8a5ff"
|
||||
cyan = "#2dc7c4"
|
||||
white = "#e4e4e5"
|
||||
|
||||
[colors.dim]
|
||||
black = "#222222"
|
||||
red = "#ca4780"
|
||||
green = "#1fa25a"
|
||||
yellow = "#f8e17c"
|
||||
blue = "#2b96d9"
|
||||
magenta = "#a27fd9"
|
||||
cyan = "#07a19e"
|
||||
white = "#bebebe"
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 16
|
||||
color = "#3ddbd9"
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 17
|
||||
color = "#ff7eb6"
|
||||
black = "#697386"
|
||||
red = "#fbb5b2"
|
||||
green = "#85d996"
|
||||
yellow = "#efc078"
|
||||
blue = "#9fcdff"
|
||||
magenta = "#f0b4e4"
|
||||
cyan = "#7fd3ed"
|
||||
white = "#ffffff"
|
||||
|
||||
[cursor]
|
||||
style = { shape = "Underline", blinking = "On" }
|
||||
vi_mode_style = { shape = "Block", blinking = "Off" }
|
||||
|
||||
[selection]
|
||||
save_to_clipboard = true
|
||||
|
||||
|
||||
+33
-167
@@ -1,200 +1,66 @@
|
||||
## where to store your database, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/history.db
|
||||
## windows: %USERPROFILE%/.local/share/atuin/history.db
|
||||
# db_path = "~/.history.db"
|
||||
## Sync
|
||||
sync_address = "http://pifive.neon-universe.ts.net:8392"
|
||||
|
||||
## where to store your encryption key, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/key
|
||||
## windows: %USERPROFILE%/.local/share/atuin/key
|
||||
# key_path = "~/.key"
|
||||
## Search
|
||||
search_mode = "daemon-fuzzy"
|
||||
|
||||
## where to store your auth session token, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/session
|
||||
## windows: %USERPROFILE%/.local/share/atuin/session
|
||||
# session_path = "~/.session"
|
||||
|
||||
## date format used, either "us" or "uk"
|
||||
# dialect = "us"
|
||||
|
||||
## default timezone to use when displaying time
|
||||
## either "l", "local" to use the system's current local timezone, or an offset
|
||||
## from UTC in the format of "<+|->H[H][:M[M][:S[S]]]"
|
||||
## for example: "+9", "-05", "+03:30", "-01:23:45", etc.
|
||||
# timezone = "local"
|
||||
|
||||
## enable or disable automatic sync
|
||||
# auto_sync = true
|
||||
|
||||
## enable or disable automatic update checks
|
||||
# update_check = true
|
||||
|
||||
## address of the sync server
|
||||
sync_address = "http://pifive.neon-universe.ts.net:8888"
|
||||
|
||||
## how often to sync history. note that this is only triggered when a command
|
||||
## is ran, so sync intervals may well be longer
|
||||
## set it to 0 to sync after every command
|
||||
# sync_frequency = "10m"
|
||||
|
||||
## which search mode to use
|
||||
## possible values: prefix, fulltext, fuzzy, skim
|
||||
search_mode = "fulltext"
|
||||
|
||||
## which filter mode to use
|
||||
## possible values: global, host, session, directory
|
||||
filter_mode = "host"
|
||||
|
||||
## With workspace filtering enabled, Atuin will filter for commands executed
|
||||
## in any directory within a git repository tree (default: false)
|
||||
# Smart filter: workspace in git repos, falls to directory outside, then session
|
||||
# Workspace mode is auto-skipped when not in a git repo
|
||||
filter_mode = "workspace"
|
||||
filter_mode_shell_up_key_binding = "session"
|
||||
workspaces = true
|
||||
|
||||
## which filter mode to use when atuin is invoked from a shell up-key binding
|
||||
## the accepted values are identical to those of "filter_mode"
|
||||
## leave unspecified to use same mode set in "filter_mode"
|
||||
filter_mode_shell_up_key_binding = "session"
|
||||
|
||||
## which search mode to use when atuin is invoked from a shell up-key binding
|
||||
## the accepted values are identical to those of "search_mode"
|
||||
## leave unspecified to use same mode set in "search_mode"
|
||||
# search_mode_shell_up_key_binding = "fuzzy"
|
||||
|
||||
## which style to use
|
||||
## possible values: auto, full, compact
|
||||
## UI
|
||||
style = "compact"
|
||||
|
||||
## the maximum number of lines the interface should take up
|
||||
## set it to 0 to always go full screen
|
||||
inline_height = 9
|
||||
|
||||
## Invert the UI - put the search bar at the top , Default to `false`
|
||||
# invert = false
|
||||
|
||||
## enable or disable showing a preview of the selected command
|
||||
## useful when the command is longer than the terminal width and is cut off
|
||||
# show_preview = false
|
||||
|
||||
## what to do when the escape key is pressed when searching
|
||||
## possible values: return-original, return-query
|
||||
# exit_mode = "return-original"
|
||||
|
||||
## possible values: emacs, subl
|
||||
# word_jump_mode = "emacs"
|
||||
|
||||
## characters that count as a part of a word
|
||||
# word_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
||||
|
||||
## number of context lines to show when scrolling by pages
|
||||
# scroll_context_lines = 1
|
||||
|
||||
## use ctrl instead of alt as the shortcut modifier key for numerical UI shortcuts
|
||||
## alt-0 .. alt-9
|
||||
# ctrl_n_shortcuts = false
|
||||
|
||||
## default history list format - can also be specified with the --format arg
|
||||
# history_format = "{time}\t{command}\t{duration}"
|
||||
|
||||
## prevent commands matching any of these regexes from being written to history.
|
||||
## Note that these regular expressions are unanchored, i.e. if they don't start
|
||||
## with ^ or end with $, they'll match anywhere in the command.
|
||||
## For details on the supported regular expression syntax, see
|
||||
## https://docs.rs/regex/latest/regex/#syntax
|
||||
# history_filter = [
|
||||
# "^secret-cmd",
|
||||
# "^innocuous-cmd .*--secret=.+",
|
||||
# ]
|
||||
|
||||
## prevent commands run with cwd matching any of these regexes from being written
|
||||
## to history. Note that these regular expressions are unanchored, i.e. if they don't
|
||||
## start with ^ or end with $, they'll match anywhere in CWD.
|
||||
## For details on the supported regular expression syntax, see
|
||||
## https://docs.rs/regex/latest/regex/#syntax
|
||||
# cwd_filter = [
|
||||
# "^/very/secret/area",
|
||||
# ]
|
||||
|
||||
## Configure the maximum height of the preview to show.
|
||||
## Useful when you have long scripts in your history that you want to distinguish
|
||||
## by more than the first few lines.
|
||||
# max_preview_height = 4
|
||||
|
||||
## Configure whether or not to show the help row, which includes the current Atuin
|
||||
## version (and whether an update is available), a keymap hint, and the total
|
||||
## amount of commands in your history.
|
||||
show_help = false
|
||||
|
||||
## Configure whether or not to show tabs for search and inspect
|
||||
show_tabs = false
|
||||
|
||||
## Defaults to true. This matches history against a set of default regex, and will not save it if we get a match. Defaults include
|
||||
## 1. AWS key id
|
||||
## 2. Github pat (old and new)
|
||||
## 3. Slack oauth tokens (bot, user)
|
||||
## 4. Slack webhooks
|
||||
## 5. Stripe live/test keys
|
||||
# secrets_filter = true
|
||||
|
||||
## Defaults to true. If enabled, upon hitting enter Atuin will immediately execute the command. Press tab to return to the shell and edit.
|
||||
# This applies for new installs. Old installs will keep the old behaviour unless configured otherwise.
|
||||
show_preview = true
|
||||
max_preview_height = 4
|
||||
enter_accept = true
|
||||
|
||||
## Defaults to "emacs". This specifies the keymap on the startup of `atuin
|
||||
## search`. If this is set to "auto", the startup keymap mode in the Atuin
|
||||
## search is automatically selected based on the shell's keymap where the
|
||||
## keybinding is defined. If this is set to "emacs", "vim-insert", or
|
||||
## "vim-normal", the startup keymap mode in the Atuin search is forced to be
|
||||
## the specified one.
|
||||
# keymap_mode = "auto"
|
||||
## Score tuning for daemon-fuzzy: favor recent commands slightly
|
||||
[search]
|
||||
filters = ["workspace", "directory", "session", "host", "global"]
|
||||
recency_score_multiplier = 2.0
|
||||
frequency_score_multiplier = 1.0
|
||||
frecency_score_multiplier = 1.5
|
||||
|
||||
## Cursor style in each keymap mode. If specified, the cursor style is changed
|
||||
## in entering the cursor shape. Available values are "default" and
|
||||
## "{blink,steady}-{block,underline,bar}".
|
||||
# keymap_cursor = { emacs = "blink-block", vim_insert = "blink-block", vim_normal = "steady-block" }
|
||||
|
||||
# network_connect_timeout = 5
|
||||
# network_timeout = 5
|
||||
|
||||
## Timeout (in seconds) for acquiring a local database connection (sqlite)
|
||||
# local_timeout = 5
|
||||
|
||||
## Set this to true and Atuin will minimize motion in the UI - timers will not update live, etc.
|
||||
## Alternatively, set env NO_MOTION=true
|
||||
# prefers_reduced_motion = false
|
||||
## Filter secrets and noisy commands from history
|
||||
history_filter = [
|
||||
"^export .*(KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL).*=",
|
||||
"^set .*(KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL).*=",
|
||||
]
|
||||
|
||||
[stats]
|
||||
## Set commands where we should consider the subcommand for statistics. Eg, kubectl get vs just kubectl
|
||||
common_subcommands = [
|
||||
"brew",
|
||||
"cargo",
|
||||
"dnf",
|
||||
"docker",
|
||||
"gh",
|
||||
"git",
|
||||
"go",
|
||||
"ip",
|
||||
"kubectl",
|
||||
"npm",
|
||||
"oc",
|
||||
"podman",
|
||||
"port",
|
||||
"systemctl",
|
||||
"tmux",
|
||||
"zellij",
|
||||
"yarn",
|
||||
]
|
||||
|
||||
## Set commands that should be totally stripped and ignored from stats
|
||||
# common_prefix = ["sudo"]
|
||||
|
||||
## Set commands that will be completely ignored from stats
|
||||
# ignored_commands = [
|
||||
# "cd",
|
||||
# "ls",
|
||||
# "vi"
|
||||
# ]
|
||||
|
||||
[keys]
|
||||
# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry.
|
||||
# scroll_exits = false
|
||||
scroll_exits = false
|
||||
|
||||
[sync]
|
||||
# Enable sync v2 by default
|
||||
# This ensures that sync v2 is enabled for new installs only
|
||||
# In a later release it will become the default across the board
|
||||
records = true
|
||||
|
||||
[daemon]
|
||||
enabled = true
|
||||
autostart = true
|
||||
|
||||
[preview]
|
||||
strategy = "auto"
|
||||
|
||||
@@ -3,7 +3,7 @@ version: 1
|
||||
# What protocol to use when performing git operations. Supported values: ssh, https
|
||||
git_protocol: ssh
|
||||
# What editor gh should run when creating issues, pull requests, etc. If blank, will refer to environment.
|
||||
editor: nvim
|
||||
editor: hx
|
||||
# When to interactively prompt. This is a global config that cannot be overridden by hostname. Supported values: enabled, disabled
|
||||
prompt: enabled
|
||||
# A pager program to send command output to, e.g. "less". Set the value to "cat" to disable the pager.
|
||||
@@ -11,6 +11,7 @@ pager: less
|
||||
# Aliases allow you to create nicknames for gh commands
|
||||
aliases:
|
||||
co: pr checkout
|
||||
pc: pr create
|
||||
# The path to a unix socket through which send HTTP connections. If blank, HTTP traffic will be handled by net/http.DefaultTransport.
|
||||
http_unix_socket:
|
||||
# What web browser gh should use when opening URLs. If blank, will refer to environment.
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
github.com:
|
||||
git_protocol: ssh
|
||||
users:
|
||||
avinal:
|
||||
user: avinal
|
||||
+58
-21
@@ -1,30 +1,67 @@
|
||||
# Font related configs
|
||||
font-family = "Monaspace Neon"
|
||||
font-size = "14"
|
||||
adjust-underline-position = "1"
|
||||
adjust-underline-thickness = "1"
|
||||
#adjust-cell-width = "5%"
|
||||
#adjust-cell-height = "5%"
|
||||
adjust-box-thickness = "1"
|
||||
# Font
|
||||
font-family = "Iosevka Term"
|
||||
font-size = 14
|
||||
font-feature = "calt"
|
||||
font-feature = "liga"
|
||||
adjust-underline-position = 1
|
||||
adjust-underline-thickness = 1
|
||||
adjust-box-thickness = 1
|
||||
bold-is-bright = true
|
||||
freetype-load-flags = hinting,autohint,light
|
||||
|
||||
# Appearance
|
||||
# theme = "Oxocarbon"
|
||||
theme = "Raycast_Dark"
|
||||
# title = "Ghostty"
|
||||
theme = "vim_dark_high_contrast"
|
||||
window-decoration = true
|
||||
window-padding-x = 4
|
||||
window-padding-y = 2
|
||||
window-padding-balance = true
|
||||
mouse-hide-while-typing = true
|
||||
unfocused-split-opacity = 0.85
|
||||
resize-overlay = after-first
|
||||
resize-overlay-position = bottom-right
|
||||
|
||||
# Cursor setting
|
||||
cursor-style = "underline"
|
||||
# Cursor
|
||||
cursor-style = block_hollow
|
||||
cursor-style-blink = false
|
||||
cursor-click-to-move = true
|
||||
cursor-color = "cyan"
|
||||
cursor-text = "cyan"
|
||||
# cursor-invert-fg-bg = true
|
||||
# adjust-cursor-thickness = "2"
|
||||
cursor-color = cyan
|
||||
cursor-text = cyan
|
||||
|
||||
# Shell setting
|
||||
shell-integration = "zsh"
|
||||
# Shell
|
||||
shell-integration = zsh
|
||||
shell-integration-features = true
|
||||
|
||||
# Clipboard
|
||||
clipboard-read = "allow"
|
||||
clipboard-write = "allow"
|
||||
clipboard-read = allow
|
||||
clipboard-write = allow
|
||||
copy-on-select = clipboard
|
||||
|
||||
# Scrollback (10MB per surface)
|
||||
scrollback-limit = 10000000
|
||||
|
||||
# Links
|
||||
link-url = true
|
||||
|
||||
# Notifications for long commands (KDE supports this natively)
|
||||
notify-on-command-finish = unfocused
|
||||
notify-on-command-finish-after = 10s
|
||||
|
||||
# Window behavior
|
||||
confirm-close-surface = true
|
||||
window-inherit-working-directory = true
|
||||
window-save-state = always
|
||||
|
||||
# Quick terminal (toggle with a keybind)
|
||||
quick-terminal-position = top
|
||||
quick-terminal-size = 40%
|
||||
quick-terminal-autohide = false
|
||||
|
||||
# GTK/Linux specific
|
||||
gtk-titlebar = false
|
||||
gtk-tabs-location = hidden
|
||||
gtk-single-instance = true
|
||||
|
||||
# Keybinds
|
||||
keybind = ctrl+grave_accent=toggle_quick_terminal
|
||||
keybind = ctrl+shift+t=new_tab
|
||||
keybind = ctrl+shift+n=new_window
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
palette = 0=#000000
|
||||
palette = 1=#ed5f74
|
||||
palette = 2=#1ea672
|
||||
palette = 3=#d97917
|
||||
palette = 4=#688ef1
|
||||
palette = 5=#c96ed0
|
||||
palette = 6=#3a97d4
|
||||
palette = 7=#e3e8ee
|
||||
|
||||
palette = 8=#697386
|
||||
palette = 9=#fbb5b2
|
||||
palette = 10=#85d996
|
||||
palette = 11=#efc078
|
||||
palette = 12=#9fcdff
|
||||
palette = 13=#f0b4e4
|
||||
palette = 14=#7fd3ed
|
||||
palette = 15=#ffffff
|
||||
|
||||
background = #000000
|
||||
foreground = #c1c9d2
|
||||
cursor-color = #c1c9d2
|
||||
cursor-text = #111111
|
||||
selection-background = #3e4043
|
||||
selection-foreground = #ffffff
|
||||
@@ -0,0 +1,26 @@
|
||||
# Ghostty theme adapted from Helix palette
|
||||
|
||||
palette = 0=#000000
|
||||
palette = 1=#ed5f74
|
||||
palette = 2=#1ea672
|
||||
palette = 3=#d97917
|
||||
palette = 4=#688ef1
|
||||
palette = 5=#c96ed0
|
||||
palette = 6=#3a97d4
|
||||
palette = 7=#e3e8ee
|
||||
|
||||
palette = 8=#697386
|
||||
palette = 9=#fbb5b2
|
||||
palette = 10=#85d996
|
||||
palette = 11=#efc078
|
||||
palette = 12=#9fcdff
|
||||
palette = 13=#f0b4e4
|
||||
palette = 14=#7fd3ed
|
||||
palette = 15=#ffffff
|
||||
|
||||
background = #111111
|
||||
foreground = #c1c9d2
|
||||
cursor-color = #c1c9d2
|
||||
cursor-text = #111111
|
||||
selection-background = #3e4043
|
||||
selection-foreground = #ffffff
|
||||
@@ -1,4 +1,4 @@
|
||||
theme = "carbonfox"
|
||||
theme = "vim_dark_high_contrast"
|
||||
|
||||
[editor]
|
||||
rulers = [80, 100]
|
||||
@@ -9,6 +9,7 @@ bufferline = "multiple"
|
||||
color-modes = true
|
||||
end-of-line-diagnostics = "hint"
|
||||
popup-border = "popup"
|
||||
scrolloff = 2
|
||||
|
||||
[editor.soft-wrap]
|
||||
enable = true
|
||||
|
||||
+12
-2
@@ -1,5 +1,15 @@
|
||||
# Global ignore files
|
||||
|
||||
|
||||
# For golang
|
||||
# Dependencies
|
||||
vendor/
|
||||
node_modules/
|
||||
|
||||
# Build artifacts
|
||||
target/
|
||||
dist/
|
||||
build/
|
||||
_build/
|
||||
__pycache__/
|
||||
|
||||
# Version control
|
||||
.git/
|
||||
|
||||
@@ -9,6 +9,14 @@ command = "wakatime-ls"
|
||||
[language-server.yaml-language-server.config.yaml]
|
||||
format = { enable = true }
|
||||
validation = true
|
||||
schemaStore = { enable = true }
|
||||
|
||||
[language-server.yaml-language-server.config.yaml.schemas]
|
||||
"https://json.schemastore.org/github-workflow.json" = ".github/workflows/*.{yml,yaml}"
|
||||
"https://raw.githubusercontent.com/ansible-community/schemas/main/f/ansible-tasks.json" = "roles/{tasks,handlers}/*.{yml,yaml}"
|
||||
"https://raw.githubusercontent.com/redhat-developer/vscode-tekton/refs/heads/main/scheme/tekton.dev/v1beta1_Task.json" = "tasks/*.{yml,yaml}"
|
||||
"https://raw.githubusercontent.com/redhat-developer/vscode-tekton/refs/heads/main/scheme/tekton.dev/v1_Pipeline.json" = "pipelines/*.{yml,yaml}"
|
||||
"https://raw.githubusercontent.com/redhat-developer/vscode-tekton/refs/heads/main/scheme/tekton.dev/v1_PipelineRun.json" = ".tekton/*.{yml,yaml}"
|
||||
|
||||
[[language]]
|
||||
name = "c"
|
||||
@@ -46,21 +54,45 @@ name = "bash"
|
||||
language-servers = ["bash-language-server", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "html"
|
||||
language-servers = ["wakatime"]
|
||||
name = "python"
|
||||
language-servers = ["pylsp", "wakatime"]
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "rust"
|
||||
language-servers = ["rust-analyzer", "wakatime"]
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "typescript"
|
||||
language-servers = ["typescript-language-server", "wakatime"]
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "javascript"
|
||||
language-servers = ["typescript-language-server", "wakatime"]
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "html"
|
||||
language-servers = ["vscode-html-language-server", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "css"
|
||||
language-servers = ["vscode-css-language-server", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "lua"
|
||||
language-servers = ["wakatime"]
|
||||
|
||||
|
||||
# [[language]]
|
||||
# name = "docker"
|
||||
# language-servers = ["wakatime"]
|
||||
language-servers = ["lua-language-server", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "dockerfile"
|
||||
language-servers = ["docker-langserver", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "json"
|
||||
language-servers = ["wakatime"]
|
||||
language-servers = ["vscode-json-language-server", "wakatime"]
|
||||
|
||||
[[language]]
|
||||
name = "toml"
|
||||
language-servers = ["taplo", "wakatime"]
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
gui:
|
||||
showBottomLine: false
|
||||
showPanelJumps: true
|
||||
showCommandLog: false
|
||||
showRandomTip: false
|
||||
nerdFontsVersion: ""
|
||||
showFileIcons: false
|
||||
border: rounded
|
||||
filterMode: fuzzy
|
||||
showDivergenceFromBaseBranch: arrowAndNumber
|
||||
animateExplosion: false
|
||||
theme:
|
||||
activeBorderColor:
|
||||
- "#3a97d4"
|
||||
- bold
|
||||
inactiveBorderColor:
|
||||
- "#697386"
|
||||
selectedLineBgColor:
|
||||
- "#3e4043"
|
||||
optionsTextColor:
|
||||
- "#3a97d4"
|
||||
unstagedChangesColor:
|
||||
- "#ed5f74"
|
||||
defaultFgColor:
|
||||
- "#c1c9d2"
|
||||
|
||||
git:
|
||||
autoFetch: true
|
||||
autoRefresh: true
|
||||
branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
|
||||
os:
|
||||
editor: hx
|
||||
editPreset: helix
|
||||
customCommands:
|
||||
- key: "C"
|
||||
context: files
|
||||
command: git commit -m '{{index .PromptResponses 0}}' -m '{{index .PromptResponses 1}}'
|
||||
description: "Commit with body"
|
||||
prompts:
|
||||
- type: input
|
||||
title: "Summary"
|
||||
- type: input
|
||||
title: "Description"
|
||||
- key: "b"
|
||||
context: files
|
||||
command: git checkout -b {{index .PromptResponses 0}}
|
||||
description: "New branch from here"
|
||||
prompts:
|
||||
- type: input
|
||||
title: "Branch name"
|
||||
+87
-265
@@ -1,7 +1,3 @@
|
||||
//
|
||||
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/avinal/.config/zellij/config.kdl.bak
|
||||
//
|
||||
|
||||
keybinds clear-defaults=true {
|
||||
locked {
|
||||
bind "Ctrl space" { SwitchToMode "normal"; }
|
||||
@@ -101,6 +97,12 @@ keybinds clear-defaults=true {
|
||||
bind "Alt ]" { NextSwapLayout; }
|
||||
bind "Alt n" { NewPane; }
|
||||
bind "Alt q" { Quit; }
|
||||
bind "Alt f" {
|
||||
LaunchPlugin "filepicker" {
|
||||
floating true
|
||||
close_on_selection true
|
||||
};
|
||||
}
|
||||
}
|
||||
shared_except "locked" "move" {
|
||||
bind "Alt m" { SwitchToMode "move"; }
|
||||
@@ -170,120 +172,121 @@ keybinds clear-defaults=true {
|
||||
bind "|" { NewPane "right"; SwitchToMode "normal"; }
|
||||
}
|
||||
}
|
||||
|
||||
themes {
|
||||
carbonfox {
|
||||
vim_dark_high_contrast {
|
||||
text_unselected {
|
||||
base 255 255 255
|
||||
background 53 53 53
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
base 193 201 210
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
text_selected {
|
||||
base 255 255 255
|
||||
background 42 42 42
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
ribbon_selected {
|
||||
base 53 53 53
|
||||
background 37 190 106
|
||||
emphasis_0 238 83 150
|
||||
emphasis_1 255 168 123
|
||||
emphasis_2 190 149 255
|
||||
emphasis_3 51 177 255
|
||||
base 17 17 17
|
||||
background 30 166 114
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 217 121 23
|
||||
emphasis_2 201 110 208
|
||||
emphasis_3 104 142 241
|
||||
}
|
||||
ribbon_unselected {
|
||||
base 53 53 53
|
||||
background 242 244 248
|
||||
emphasis_0 238 83 150
|
||||
emphasis_1 255 255 255
|
||||
emphasis_2 51 177 255
|
||||
emphasis_3 190 149 255
|
||||
base 17 17 17
|
||||
background 227 232 238
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 193 201 210
|
||||
emphasis_2 104 142 241
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
table_title {
|
||||
base 37 190 106
|
||||
base 30 166 114
|
||||
background 0
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
table_cell_selected {
|
||||
base 255 255 255
|
||||
background 42 42 42
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
table_cell_unselected {
|
||||
base 255 255 255
|
||||
background 53 53 53
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
base 193 201 210
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
list_selected {
|
||||
base 255 255 255
|
||||
background 42 42 42
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
list_unselected {
|
||||
base 255 255 255
|
||||
background 53 53 53
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 37 190 106
|
||||
emphasis_3 190 149 255
|
||||
base 193 201 210
|
||||
background 62 64 67
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 30 166 114
|
||||
emphasis_3 201 110 208
|
||||
}
|
||||
frame_selected {
|
||||
base 37 190 106
|
||||
base 30 166 114
|
||||
background 0
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 61 219 217
|
||||
emphasis_2 190 149 255
|
||||
emphasis_0 237 95 116
|
||||
emphasis_1 58 151 212
|
||||
emphasis_2 201 110 208
|
||||
emphasis_3 0
|
||||
}
|
||||
frame_highlight {
|
||||
base 255 168 123
|
||||
base 217 121 23
|
||||
background 0
|
||||
emphasis_0 255 168 123
|
||||
emphasis_1 255 168 123
|
||||
emphasis_2 255 168 123
|
||||
emphasis_3 255 168 123
|
||||
emphasis_0 217 121 23
|
||||
emphasis_1 217 121 23
|
||||
emphasis_2 217 121 23
|
||||
emphasis_3 217 121 23
|
||||
}
|
||||
exit_code_success {
|
||||
base 37 190 106
|
||||
base 30 166 114
|
||||
background 0
|
||||
emphasis_0 61 219 217
|
||||
emphasis_1 53 53 53
|
||||
emphasis_2 190 149 255
|
||||
emphasis_3 51 177 255
|
||||
emphasis_0 58 151 212
|
||||
emphasis_1 62 64 67
|
||||
emphasis_2 201 110 208
|
||||
emphasis_3 104 142 241
|
||||
}
|
||||
exit_code_error {
|
||||
base 238 83 150
|
||||
base 237 95 116
|
||||
background 0
|
||||
emphasis_0 248 225 124
|
||||
emphasis_0 217 121 23
|
||||
emphasis_1 0
|
||||
emphasis_2 0
|
||||
emphasis_3 0
|
||||
}
|
||||
multiplayer_user_colors {
|
||||
player_1 190 149 255
|
||||
player_2 51 177 255
|
||||
player_1 201 110 208
|
||||
player_2 104 142 241
|
||||
player_3 0
|
||||
player_4 248 225 124
|
||||
player_5 61 219 217
|
||||
player_4 217 121 23
|
||||
player_5 58 151 212
|
||||
player_6 0
|
||||
player_7 238 83 150
|
||||
player_7 237 95 116
|
||||
player_8 0
|
||||
player_9 0
|
||||
player_10 0
|
||||
@@ -291,8 +294,6 @@ themes {
|
||||
}
|
||||
}
|
||||
|
||||
// Plugin aliases - can be used to change the implementation of Zellij
|
||||
// changing these requires a restart to take effect
|
||||
plugins {
|
||||
about location="zellij:about"
|
||||
compact-bar location="zellij:compact-bar"
|
||||
@@ -310,200 +311,21 @@ plugins {
|
||||
}
|
||||
}
|
||||
|
||||
// Plugins to load in the background when a new session starts
|
||||
// eg. "file:/path/to/my-plugin.wasm"
|
||||
// eg. "https://example.com/my-plugin.wasm"
|
||||
load_plugins {
|
||||
}
|
||||
|
||||
// Use a simplified UI without special fonts (arrow glyphs)
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
simplified_ui false
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
theme "carbonfox"
|
||||
|
||||
// Choose the base input mode of zellij.
|
||||
// Default: normal
|
||||
//
|
||||
// default_mode "locked"
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
//
|
||||
// default_shell "fish"
|
||||
|
||||
// Choose the path to override cwd that zellij will use for opening new panes
|
||||
//
|
||||
// default_cwd "/tmp"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
theme "vim_dark_high_contrast"
|
||||
default_layout "terminal"
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
// (Requires restart)
|
||||
//
|
||||
// layout_dir "/tmp"
|
||||
|
||||
// The folder in which Zellij will look for themes
|
||||
// (Requires restart)
|
||||
//
|
||||
// theme_dir "/tmp"
|
||||
|
||||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
|
||||
// Toggle having pane frames around the panes
|
||||
// Options:
|
||||
// - true (default, enabled)
|
||||
// - false
|
||||
//
|
||||
// pane_frames false
|
||||
|
||||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
|
||||
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||
// eg. when terminal window with an active zellij session is closed
|
||||
// (Requires restart)
|
||||
// Options:
|
||||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// (Requires restart)
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
scroll_buffer_size 100000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
//
|
||||
// copy_command "pbcopy"
|
||||
|
||||
// Choose the destination for copied text
|
||||
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||
// Does not apply when using copy_command.
|
||||
// Options:
|
||||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
|
||||
// Enable automatic copying (and clearing) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
copy_on_select true
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
scrollback_editor "/usr/local/bin/hx"
|
||||
|
||||
// A fixed name to always give the Zellij session.
|
||||
// Consider also setting `attach_to_session true,`
|
||||
// otherwise this will error if such a session exists.
|
||||
// Default: <RANDOM>
|
||||
//
|
||||
// session_name "My singleton session"
|
||||
|
||||
// When `session_name` is provided, attaches to that session
|
||||
// if it is already running or creates it otherwise.
|
||||
// Default: false
|
||||
//
|
||||
// attach_to_session true
|
||||
|
||||
// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// auto_layout false
|
||||
|
||||
// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
scrollback_editor "hx"
|
||||
session_serialization true
|
||||
|
||||
// Whether pane viewports are serialized along with the session, default is false
|
||||
// Options:
|
||||
// - true
|
||||
// - false (default)
|
||||
//
|
||||
serialize_pane_viewport true
|
||||
|
||||
// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0
|
||||
// defaults to the scrollback size. If this number is higher than the scrollback size, it will
|
||||
// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true.
|
||||
//
|
||||
scrollback_lines_to_serialize 100000
|
||||
|
||||
// Enable or disable the rendering of styled and colored underlines (undercurl).
|
||||
// May need to be disabled for certain unsupported terminals
|
||||
// (Requires restart)
|
||||
// Default: true
|
||||
//
|
||||
// styled_underlines false
|
||||
|
||||
// How often in seconds sessions are serialized
|
||||
//
|
||||
// serialization_interval 10000
|
||||
|
||||
// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know
|
||||
// metadata info on this session)
|
||||
// (Requires restart)
|
||||
// Default: false
|
||||
//
|
||||
disable_session_metadata false
|
||||
|
||||
// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it)
|
||||
// (Requires restart)
|
||||
// Default: true (if the host terminal supports it)
|
||||
//
|
||||
// support_kitty_keyboard_protocol false
|
||||
|
||||
// Whether to stack panes when resizing beyond a certain size
|
||||
// Default: true
|
||||
//
|
||||
// stacked_resize false
|
||||
|
||||
// Whether to show tips on startup
|
||||
// Default: true
|
||||
//
|
||||
show_startup_tips false
|
||||
|
||||
// Whether to show release notes on first version run
|
||||
// Default: true
|
||||
//
|
||||
// show_release_notes false
|
||||
web_client {
|
||||
cursor_blink false
|
||||
cursor_style "block"
|
||||
cursor_inactive_style "outline"
|
||||
font "Iosevka Fixed"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
layout {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane split_direction="horizontal" {
|
||||
pane {
|
||||
command "hx"
|
||||
@@ -11,9 +16,4 @@ layout {
|
||||
size "25%"
|
||||
}
|
||||
}
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
layout {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane split_direction="horizontal" {
|
||||
pane {
|
||||
edit "."
|
||||
focus true
|
||||
size "75%"
|
||||
borderless true
|
||||
}
|
||||
pane {
|
||||
size "25%"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
layout {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane split_direction="vertical" {
|
||||
pane {
|
||||
command "hx-pick"
|
||||
args "."
|
||||
focus true
|
||||
size "60%"
|
||||
borderless true
|
||||
}
|
||||
pane stacked=true {
|
||||
pane {
|
||||
name "LazyGit"
|
||||
command "lazygit"
|
||||
}
|
||||
pane {
|
||||
name "Terminal"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,9 @@
|
||||
layout {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane split_direction="vertical" {
|
||||
pane {
|
||||
edit "."
|
||||
@@ -16,7 +21,4 @@ layout {
|
||||
}
|
||||
}
|
||||
}
|
||||
pane borderless=true size=1 {
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
layout {
|
||||
tab_template name="ui" {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
children
|
||||
}
|
||||
|
||||
default_tab_template {
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane {
|
||||
pane
|
||||
pane
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,12 @@
|
||||
layout {
|
||||
pane split_direction="vertical" {
|
||||
pane {
|
||||
name "Terminal"
|
||||
}
|
||||
}
|
||||
pane {
|
||||
borderless true
|
||||
size 1
|
||||
plugin location="zellij:compact-bar"
|
||||
}
|
||||
pane split_direction="vertical" {
|
||||
pane {
|
||||
name "Terminal"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+6
-2
@@ -1,5 +1,5 @@
|
||||
[init]
|
||||
templateDir = /home/avinal/.git-template
|
||||
templateDir = ~/.git-template
|
||||
[rh-pre-commit]
|
||||
checkSecrets = true
|
||||
enableLocalConfig = false
|
||||
@@ -12,9 +12,13 @@
|
||||
[gpg]
|
||||
program = gpg
|
||||
[credential]
|
||||
helper = store
|
||||
helper = /usr/libexec/git-core/git-credential-libsecret
|
||||
[core]
|
||||
editor = hx
|
||||
[merge]
|
||||
conflictstyle = zdiff3
|
||||
[diff]
|
||||
colorMoved = default
|
||||
[rh-pre-commit "commit-msg"]
|
||||
signOff = true
|
||||
[sendemail]
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
*.bak
|
||||
**/state.yml
|
||||
**/*.log
|
||||
|
||||
# Secrets - never commit these
|
||||
.wakatime.cfg
|
||||
.config/gh/hosts.yml
|
||||
pikvm/vnc
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
# hx-pick: loop between file picker and helix
|
||||
# Select a file -> edit in helix -> back to picker on exit
|
||||
# Press Esc/Ctrl-C in the picker to drop to a normal shell
|
||||
|
||||
dir="${1:-.}"
|
||||
cd "$dir" || exit 1
|
||||
|
||||
while true; do
|
||||
file=$(find . -type f \
|
||||
-not -path './.git/*' \
|
||||
-not -path '*/node_modules/*' \
|
||||
-not -path '*/vendor/*' \
|
||||
-not -path '*/__pycache__/*' \
|
||||
-not -path '*/target/*' \
|
||||
-not -path '*/.build/*' \
|
||||
| sort \
|
||||
| fzf --height=100% --layout=reverse --border=rounded \
|
||||
--prompt="Edit > " \
|
||||
--header="Esc to exit to shell" \
|
||||
--preview='head -100 {}' \
|
||||
--preview-window=right:50%:wrap)
|
||||
|
||||
[ -z "$file" ] && break
|
||||
hx "$file"
|
||||
done
|
||||
+5
-1
@@ -22,7 +22,11 @@ _darcs
|
||||
^/LICENSE.*
|
||||
^/COPYING
|
||||
|
||||
# Ignore secrets
|
||||
# Ignore non-config items
|
||||
archive
|
||||
themes
|
||||
.wakatime.cfg
|
||||
logid
|
||||
bootstrap
|
||||
themetest.md
|
||||
pikvm
|
||||
|
||||
@@ -1,174 +1,94 @@
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
export PATH=$HOME/bin:/usr/local/bin:$HOME/.local/bin:$PATH
|
||||
export PATH=$PATH:/usr/local/go/bin
|
||||
export PATH=$PATH:/home/avinal/go/bin
|
||||
export PATH=$PATH:/home/linuxbrew/.linuxbrew/bin
|
||||
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
|
||||
# === Environment ===
|
||||
export XDG_DATA_HOME="$HOME/.local/share"
|
||||
export XDG_CONFIG_HOME="$HOME/.config"
|
||||
export XDG_STATE_HOME="$HOME/.local/state"
|
||||
export XDG_CACHE_HOME="$HOME/.cache"
|
||||
export TINYGOROOT="$HOME/tinygo"
|
||||
|
||||
export PATH="$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH"
|
||||
export PATH="$PATH:/usr/local/go/bin:$HOME/go/bin"
|
||||
export PATH="$PATH:$HOME/tinygo/bin"
|
||||
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
|
||||
|
||||
export EDITOR='hx'
|
||||
export OC_EDITOR="hx"
|
||||
# Generated for envman. Do not edit.
|
||||
[ -s "$HOME/.config/envman/load.sh" ] && source "$HOME/.config/envman/load.sh"
|
||||
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
#Path to your oh-my-zsh installation.
|
||||
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
ZSH_THEME="robbyrussell"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
#
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
#
|
||||
|
||||
plugins=(
|
||||
git
|
||||
zsh-autosuggestions
|
||||
zsh-syntax-highlighting
|
||||
dirhistory
|
||||
history
|
||||
kubectl
|
||||
docker
|
||||
wakatime
|
||||
golang
|
||||
fzf
|
||||
fzf-tab
|
||||
)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# User configuration
|
||||
|
||||
export SSH_AUTH_SOCK="/run/user/$(id -u)/keyring/ssh"
|
||||
export MANPATH="/usr/local/man:$MANPATH"
|
||||
export FZF_DEFAULT_OPTS='--height 25% --layout=reverse --border'
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# Claude Code
|
||||
export CLAUDE_CODE_USE_VERTEX=1
|
||||
export CLOUD_ML_REGION=us-east5
|
||||
export ANTHROPIC_VERTEX_PROJECT_ID=$GCP_PRODUCT_ID
|
||||
|
||||
## SSH auth
|
||||
export SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
|
||||
# === Zinit ===
|
||||
ZINIT_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/zinit/zinit.git"
|
||||
if [ ! -d "$ZINIT_HOME" ]; then
|
||||
mkdir -p "$(dirname "$ZINIT_HOME")"
|
||||
git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
|
||||
fi
|
||||
source "${ZINIT_HOME}/zinit.zsh"
|
||||
|
||||
# OMZ core libs
|
||||
zinit snippet OMZL::async_prompt.zsh
|
||||
zinit snippet OMZL::git.zsh
|
||||
zinit snippet OMZL::prompt_info_functions.zsh
|
||||
zinit snippet OMZL::theme-and-appearance.zsh
|
||||
zinit snippet OMZL::key-bindings.zsh
|
||||
zinit snippet OMZL::clipboard.zsh
|
||||
zinit snippet OMZT::robbyrussell
|
||||
|
||||
# export LANG=en_US.UTF-8
|
||||
# Plugins
|
||||
zinit light zsh-users/zsh-autosuggestions
|
||||
zinit light zsh-users/zsh-syntax-highlighting
|
||||
zinit light Aloxaf/fzf-tab
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='mvim'
|
||||
# fi
|
||||
# OMZ plugin snippets for completions and aliases
|
||||
zinit snippet OMZP::git
|
||||
zinit snippet OMZP::kubectl
|
||||
zinit snippet OMZP::golang
|
||||
|
||||
# Completion settings
|
||||
# Docker completions (plugin has a subdirectory, needs ice)
|
||||
zinit ice as"completion"
|
||||
zinit snippet OMZP::docker/completions/_docker
|
||||
|
||||
# Wakatime (separate repo, not a standard OMZ plugin)
|
||||
zinit light sobolevn/wakatime-zsh-plugin
|
||||
|
||||
# === Completions ===
|
||||
autoload -Uz compinit && compinit
|
||||
zinit cdreplay -q
|
||||
|
||||
CASE_SENSITIVE="true"
|
||||
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
|
||||
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
||||
zstyle ':completion:*' menu no
|
||||
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath'
|
||||
zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath'
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch x86_64"
|
||||
|
||||
# Utilities for toolbox
|
||||
#function _toolbox_code() {
|
||||
#if [ -f /run/.containerenv ] && [ -f /run/.toolboxenv ]; then
|
||||
#if cat /run/.containerenv | sed -n '2 p' | awk -F '"' 'NF>2{print $2}' | grep $1;
|
||||
#alias toolbox-code='function _toolbox_code(){if [ -f /run/.containerenv ] && [ -f /run/.toolboxenv ]; then
|
||||
|
||||
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
#
|
||||
|
||||
## Custom Functions
|
||||
znew() {
|
||||
local layout_name="$1"
|
||||
local tab_name="$2"
|
||||
local folder_name="$3"
|
||||
|
||||
zellij action new-tab --layout "$layout_name" --name "$tab_name" --cwd "$folder_name"
|
||||
}
|
||||
|
||||
|
||||
export FZF_DEFAULT_OPTS='--height 25% --layout=reverse --border'
|
||||
|
||||
alias work-git='git config user.email "avinal@redhat.com"'
|
||||
# eval "$(starship init zsh)"
|
||||
eval "$(zoxide init zsh)"
|
||||
# eval "$(fzf --zsh)"
|
||||
eval "$(atuin init zsh)"
|
||||
|
||||
|
||||
|
||||
# === Tool Initialization ===
|
||||
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
|
||||
|
||||
. "$HOME/.atuin/bin/env"
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
|
||||
|
||||
# Atuin env (adds ~/.atuin/bin to PATH)
|
||||
[ -f "$HOME/.atuin/bin/env" ] && . "$HOME/.atuin/bin/env"
|
||||
|
||||
eval "$(zoxide init zsh)"
|
||||
unalias zi 2>/dev/null; alias zi='__zoxide_zi'
|
||||
eval "$(atuin init zsh)"
|
||||
|
||||
# Atuin as autosuggestion strategy (must be after atuin init)
|
||||
export ZSH_AUTOSUGGEST_STRATEGY=(atuin history completion)
|
||||
|
||||
# Accept autosuggestion word-by-word with Ctrl+Right
|
||||
bindkey '^[[1;5C' forward-word
|
||||
|
||||
# === Functions ===
|
||||
znew() {
|
||||
zellij action new-tab --layout "$1" --name "$2" --cwd "$3"
|
||||
}
|
||||
|
||||
# === Aliases ===
|
||||
alias work-git='git config user.email "avinal@redhat.com"'
|
||||
|
||||
Executable
+301
@@ -0,0 +1,301 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
DOTFILES_DIR="$(dirname "$SCRIPT_DIR")"
|
||||
|
||||
usage() {
|
||||
echo "Usage: $0 <palette-name>"
|
||||
echo ""
|
||||
echo "Available palettes:"
|
||||
for f in "$SCRIPT_DIR/palettes/"*.sh; do
|
||||
basename "$f" .sh
|
||||
done
|
||||
exit 1
|
||||
}
|
||||
|
||||
[[ $# -lt 1 ]] && usage
|
||||
|
||||
PALETTE="$SCRIPT_DIR/palettes/$1.sh"
|
||||
[[ ! -f "$PALETTE" ]] && echo "Palette '$1' not found." && usage
|
||||
|
||||
source "$PALETTE"
|
||||
|
||||
strip() { echo "${1#\#}"; }
|
||||
|
||||
# RGB decimal from hex (for zellij)
|
||||
rgb() {
|
||||
local hex="${1#\#}"
|
||||
printf "%d %d %d" "0x${hex:0:2}" "0x${hex:2:2}" "0x${hex:4:2}"
|
||||
}
|
||||
|
||||
echo "Applying theme: $THEME_NAME"
|
||||
echo "================================"
|
||||
|
||||
# --- Ghostty theme ---
|
||||
GHOSTTY_THEME="$DOTFILES_DIR/.config/ghostty/themes/$THEME_NAME"
|
||||
cat > "$GHOSTTY_THEME" << EOF
|
||||
palette = 0=$BLACK
|
||||
palette = 1=$RED
|
||||
palette = 2=$GREEN
|
||||
palette = 3=$YELLOW
|
||||
palette = 4=$BLUE
|
||||
palette = 5=$MAGENTA
|
||||
palette = 6=$CYAN
|
||||
palette = 7=$WHITE
|
||||
|
||||
palette = 8=$BRIGHT_BLACK
|
||||
palette = 9=$BRIGHT_RED
|
||||
palette = 10=$BRIGHT_GREEN
|
||||
palette = 11=$BRIGHT_YELLOW
|
||||
palette = 12=$BRIGHT_BLUE
|
||||
palette = 13=$BRIGHT_MAGENTA
|
||||
palette = 14=$BRIGHT_CYAN
|
||||
palette = 15=$BRIGHT_WHITE
|
||||
|
||||
background = $BG
|
||||
foreground = $FG
|
||||
cursor-color = $CURSOR
|
||||
cursor-text = $BG
|
||||
selection-background = $SELECTION_BG
|
||||
selection-foreground = $SELECTION_FG
|
||||
EOF
|
||||
|
||||
# Update ghostty config to reference this theme
|
||||
sed -i "s/^theme = .*/theme = \"$THEME_NAME\"/" "$DOTFILES_DIR/.config/ghostty/config"
|
||||
echo "[ok] Ghostty theme: $GHOSTTY_THEME"
|
||||
|
||||
# --- Helix ---
|
||||
sed -i "s/^theme = .*/theme = \"$HELIX_THEME\"/" "$DOTFILES_DIR/.config/helix/config.toml"
|
||||
echo "[ok] Helix theme: $HELIX_THEME"
|
||||
|
||||
# --- Alacritty ---
|
||||
ALACRITTY="$DOTFILES_DIR/.config/alacritty/alacritty.toml"
|
||||
if [[ -f "$ALACRITTY" ]]; then
|
||||
cat > "$ALACRITTY" << EOF
|
||||
[window]
|
||||
padding = { x = 7, y = 5 }
|
||||
dynamic_padding = true
|
||||
dynamic_title = false
|
||||
|
||||
[font]
|
||||
normal = { family = "Iosevka Term", style = "Regular" }
|
||||
bold = { family = "Iosevka Term", style = "Bold" }
|
||||
italic = { family = "Iosevka Term", style = "Italic" }
|
||||
bold_italic = { family = "Iosevka Term", style = "Bold Italic" }
|
||||
size = 14
|
||||
|
||||
[colors.primary]
|
||||
background = "$BG"
|
||||
foreground = "$FG"
|
||||
|
||||
[colors.cursor]
|
||||
text = "$BG"
|
||||
cursor = "$CURSOR"
|
||||
|
||||
[colors.selection]
|
||||
text = "$SELECTION_FG"
|
||||
background = "$SELECTION_BG"
|
||||
|
||||
[colors.normal]
|
||||
black = "$BLACK"
|
||||
red = "$RED"
|
||||
green = "$GREEN"
|
||||
yellow = "$YELLOW"
|
||||
blue = "$BLUE"
|
||||
magenta = "$MAGENTA"
|
||||
cyan = "$CYAN"
|
||||
white = "$WHITE"
|
||||
|
||||
[colors.bright]
|
||||
black = "$BRIGHT_BLACK"
|
||||
red = "$BRIGHT_RED"
|
||||
green = "$BRIGHT_GREEN"
|
||||
yellow = "$BRIGHT_YELLOW"
|
||||
blue = "$BRIGHT_BLUE"
|
||||
magenta = "$BRIGHT_MAGENTA"
|
||||
cyan = "$BRIGHT_CYAN"
|
||||
white = "$BRIGHT_WHITE"
|
||||
|
||||
[cursor]
|
||||
style = { shape = "Underline", blinking = "On" }
|
||||
|
||||
[selection]
|
||||
save_to_clipboard = true
|
||||
EOF
|
||||
echo "[ok] Alacritty colors updated"
|
||||
fi
|
||||
|
||||
# --- Lazygit ---
|
||||
LAZYGIT="$DOTFILES_DIR/.config/lazygit/config.yml"
|
||||
if [[ -f "$LAZYGIT" ]]; then
|
||||
python3 -c "
|
||||
import sys, re
|
||||
|
||||
config = open('$LAZYGIT').read()
|
||||
|
||||
new_theme = ''' theme:
|
||||
activeBorderColor:
|
||||
- \"$ACCENT\"
|
||||
- bold
|
||||
inactiveBorderColor:
|
||||
- \"$MUTED\"
|
||||
selectedLineBgColor:
|
||||
- \"$SURFACE\"
|
||||
optionsTextColor:
|
||||
- \"$CYAN\"
|
||||
unstagedChangesColor:
|
||||
- \"$RED\"
|
||||
defaultFgColor:
|
||||
- \"$FG\"'''
|
||||
|
||||
config = re.sub(
|
||||
r' theme:.*?(?=\n\w|\ngit:|\ncustomCommands:|\nos:)',
|
||||
new_theme + '\n',
|
||||
config,
|
||||
flags=re.DOTALL
|
||||
)
|
||||
open('$LAZYGIT', 'w').write(config)
|
||||
"
|
||||
echo "[ok] Lazygit theme updated"
|
||||
fi
|
||||
|
||||
# --- Zellij ---
|
||||
ZELLIJ="$DOTFILES_DIR/.config/zellij/config.kdl"
|
||||
if [[ -f "$ZELLIJ" ]]; then
|
||||
python3 -c "
|
||||
import re
|
||||
|
||||
config = open('$ZELLIJ').read()
|
||||
|
||||
new_theme = '''themes {
|
||||
$THEME_NAME {
|
||||
text_unselected {
|
||||
base $(rgb "$FG")
|
||||
background $(rgb "$SURFACE")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
text_selected {
|
||||
base $(rgb "$BRIGHT_WHITE")
|
||||
background $(rgb "$SELECTION_BG")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
ribbon_selected {
|
||||
base $(rgb "$BG")
|
||||
background $(rgb "$GREEN")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$YELLOW")
|
||||
emphasis_2 $(rgb "$MAGENTA")
|
||||
emphasis_3 $(rgb "$BLUE")
|
||||
}
|
||||
ribbon_unselected {
|
||||
base $(rgb "$BG")
|
||||
background $(rgb "$WHITE")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$FG")
|
||||
emphasis_2 $(rgb "$BLUE")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
table_title {
|
||||
base $(rgb "$GREEN")
|
||||
background 0
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
table_cell_selected {
|
||||
base $(rgb "$BRIGHT_WHITE")
|
||||
background $(rgb "$SELECTION_BG")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
table_cell_unselected {
|
||||
base $(rgb "$FG")
|
||||
background $(rgb "$SURFACE")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
list_selected {
|
||||
base $(rgb "$BRIGHT_WHITE")
|
||||
background $(rgb "$SELECTION_BG")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
list_unselected {
|
||||
base $(rgb "$FG")
|
||||
background $(rgb "$SURFACE")
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$GREEN")
|
||||
emphasis_3 $(rgb "$MAGENTA")
|
||||
}
|
||||
frame_selected {
|
||||
base $(rgb "$GREEN")
|
||||
background 0
|
||||
emphasis_0 $(rgb "$RED")
|
||||
emphasis_1 $(rgb "$CYAN")
|
||||
emphasis_2 $(rgb "$MAGENTA")
|
||||
emphasis_3 0
|
||||
}
|
||||
frame_highlight {
|
||||
base $(rgb "$YELLOW")
|
||||
background 0
|
||||
emphasis_0 $(rgb "$YELLOW")
|
||||
emphasis_1 $(rgb "$YELLOW")
|
||||
emphasis_2 $(rgb "$YELLOW")
|
||||
emphasis_3 $(rgb "$YELLOW")
|
||||
}
|
||||
exit_code_success {
|
||||
base $(rgb "$GREEN")
|
||||
background 0
|
||||
emphasis_0 $(rgb "$CYAN")
|
||||
emphasis_1 $(rgb "$SURFACE")
|
||||
emphasis_2 $(rgb "$MAGENTA")
|
||||
emphasis_3 $(rgb "$BLUE")
|
||||
}
|
||||
exit_code_error {
|
||||
base $(rgb "$RED")
|
||||
background 0
|
||||
emphasis_0 $(rgb "$YELLOW")
|
||||
emphasis_1 0
|
||||
emphasis_2 0
|
||||
emphasis_3 0
|
||||
}
|
||||
multiplayer_user_colors {
|
||||
player_1 $(rgb "$MAGENTA")
|
||||
player_2 $(rgb "$BLUE")
|
||||
player_3 0
|
||||
player_4 $(rgb "$YELLOW")
|
||||
player_5 $(rgb "$CYAN")
|
||||
player_6 0
|
||||
player_7 $(rgb "$RED")
|
||||
player_8 0
|
||||
player_9 0
|
||||
player_10 0
|
||||
}
|
||||
}
|
||||
}'''
|
||||
|
||||
config = re.sub(r'themes \{.*?\n\}', new_theme, config, flags=re.DOTALL)
|
||||
config = re.sub(r'theme \".*?\"', 'theme \"$THEME_NAME\"', config)
|
||||
open('$ZELLIJ', 'w').write(config)
|
||||
"
|
||||
echo "[ok] Zellij theme: $THEME_NAME"
|
||||
fi
|
||||
|
||||
echo "================================"
|
||||
echo "Done! Restart your tools to see changes."
|
||||
echo "Helix theme is set in config, no restart needed for new files."
|
||||
@@ -0,0 +1,50 @@
|
||||
# vim_dark_high_contrast - from Helix editor theme
|
||||
# Source: /usr/lib64/helix/runtime/themes/vim_dark_high_contrast.toml
|
||||
|
||||
THEME_NAME="vim_dark_high_contrast"
|
||||
HELIX_THEME="vim_dark_high_contrast"
|
||||
|
||||
# Base
|
||||
BG="#000000"
|
||||
FG="#c1c9d2"
|
||||
CURSOR="#c1c9d2"
|
||||
SELECTION_BG="#3e4043"
|
||||
SELECTION_FG="#ffffff"
|
||||
|
||||
# Normal colors
|
||||
BLACK="#000000"
|
||||
RED="#ed5f74"
|
||||
GREEN="#1ea672"
|
||||
YELLOW="#d97917"
|
||||
BLUE="#688ef1"
|
||||
MAGENTA="#c96ed0"
|
||||
CYAN="#3a97d4"
|
||||
WHITE="#e3e8ee"
|
||||
|
||||
# Bright colors
|
||||
BRIGHT_BLACK="#697386"
|
||||
BRIGHT_RED="#fbb5b2"
|
||||
BRIGHT_GREEN="#85d996"
|
||||
BRIGHT_YELLOW="#efc078"
|
||||
BRIGHT_BLUE="#9fcdff"
|
||||
BRIGHT_MAGENTA="#f0b4e4"
|
||||
BRIGHT_CYAN="#7fd3ed"
|
||||
BRIGHT_WHITE="#ffffff"
|
||||
|
||||
# Dark/muted variants (for backgrounds, subtle highlights)
|
||||
DARK_RED="#742833"
|
||||
DARK_GREEN="#00643c"
|
||||
DARK_YELLOW="#6e3500"
|
||||
DARK_BLUE="#2c4074"
|
||||
DARK_MAGENTA="#602864"
|
||||
DARK_CYAN="#144c71"
|
||||
DARK_WHITE="#3e4043"
|
||||
|
||||
# Semantic
|
||||
ACCENT="$CYAN"
|
||||
SUCCESS="$GREEN"
|
||||
WARNING="$YELLOW"
|
||||
ERROR="$RED"
|
||||
INFO="$BLUE"
|
||||
MUTED="$BRIGHT_BLACK"
|
||||
SURFACE="$DARK_WHITE"
|
||||
Reference in New Issue
Block a user