From 3faa90ae06a5430e439c848a3e67cce273f0cc90 Mon Sep 17 00:00:00 2001 From: Harivansh Rathi Date: Thu, 19 Mar 2026 23:42:19 -0400 Subject: [PATCH] theme --- config/nvim/init.lua | 1 - config/nvim/lua/plugins/ui.lua | 94 +++++++++++++++++++++++++++------- home/tmux.nix | 20 +++++--- home/zsh.nix | 2 +- 4 files changed, 89 insertions(+), 28 deletions(-) diff --git a/config/nvim/init.lua b/config/nvim/init.lua index 8bdb898..c26916b 100644 --- a/config/nvim/init.lua +++ b/config/nvim/init.lua @@ -25,7 +25,6 @@ local disabled_plugins = { 'gzip', 'logipat', 'matchit', - 'matchparen', 'netrw', 'netrwFileHandlers', 'netrwPlugin', diff --git a/config/nvim/lua/plugins/ui.lua b/config/nvim/lua/plugins/ui.lua index 790dbe6..505e582 100644 --- a/config/nvim/lua/plugins/ui.lua +++ b/config/nvim/lua/plugins/ui.lua @@ -6,10 +6,39 @@ return { config = function() require('gruvbox').setup({ contrast = 'hard', - transparent_mode = true, + transparent_mode = false, italic = { comments = true }, overrides = { - MatchParen = { bold = true, underline = true, bg = '' }, + MatchParen = { bold = true, underline = true, fg = '#d8a657', bg = '#3c3836' }, + Normal = { bg = '#181818' }, + NormalFloat = { bg = '#181818' }, + SignColumn = { bg = '#181818' }, + StatusLine = { bg = '#181818' }, + StatusLineNC = { bg = '#181818' }, + GruvboxOrange = { fg = '#bdae93' }, + GruvboxOrangeBold = { fg = '#bdae93', bold = true }, + ['@operator'] = { fg = '#bdae93' }, + Delimiter = { fg = '#bdae93' }, + ['@punctuation.bracket'] = { fg = '#bdae93' }, + ['@punctuation.delimiter'] = { fg = '#bdae93' }, + GitSignsAdd = { fg = '#a9b665', bg = '#181818' }, + GitSignsChange = { fg = '#d8a657', bg = '#181818' }, + GitSignsDelete = { fg = '#ea6962', bg = '#181818' }, + GitSignsTopdelete = { fg = '#ea6962', bg = '#181818' }, + GitSignsChangedelete = { fg = '#d8a657', bg = '#181818' }, + GitSignsUntracked = { fg = '#7daea3', bg = '#181818' }, + GitSignsStagedAdd = { fg = '#6c7842', bg = '#181818' }, + GitSignsStagedChange = { fg = '#8a6d39', bg = '#181818' }, + GitSignsStagedDelete = { fg = '#94433f', bg = '#181818' }, + GitSignsStagedTopdelete = { fg = '#94433f', bg = '#181818' }, + GitSignsStagedChangedelete = { fg = '#8a6d39', bg = '#181818' }, + LineNr = { bg = '#181818' }, + CursorLineNr = { bg = '#181818' }, + CursorLine = { bg = '#1e1e1e' }, + FoldColumn = { bg = '#181818' }, + DiffAdd = { bg = '#1e2718' }, + DiffChange = { bg = '#1e1e18' }, + DiffDelete = { bg = '#2a1818' }, }, }) vim.cmd.colorscheme('gruvbox') @@ -18,22 +47,51 @@ return { { 'nvim-lualine/lualine.nvim', dependencies = { 'nvim-tree/nvim-web-devicons' }, - opts = { - options = { - theme = 'gruvbox', - icons_enabled = false, - component_separators = '', - section_separators = { left = '', right = '' }, - }, - sections = { - lualine_a = { 'mode' }, - lualine_b = { 'FugitiveHead', 'diff' }, - lualine_c = { { 'filename', path = 0 } }, - lualine_x = { 'diagnostics' }, - lualine_y = { 'filetype' }, - lualine_z = { 'progress' }, - }, - }, + config = function() + local bg = '#181818' + local fg = '#d4be98' + local gray = '#7c6f64' + local theme = { + normal = { + a = { bg = bg, fg = fg, gui = 'bold' }, + b = { bg = bg, fg = fg }, + c = { bg = bg, fg = gray }, + }, + insert = { + a = { bg = bg, fg = '#a9b665', gui = 'bold' }, + }, + visual = { + a = { bg = bg, fg = '#d3869b', gui = 'bold' }, + }, + replace = { + a = { bg = bg, fg = '#ea6962', gui = 'bold' }, + }, + command = { + a = { bg = bg, fg = '#d8a657', gui = 'bold' }, + }, + inactive = { + a = { bg = bg, fg = gray }, + b = { bg = bg, fg = gray }, + c = { bg = bg, fg = gray }, + }, + } + require('lualine').setup({ + options = { + theme = theme, + icons_enabled = false, + component_separators = '', + section_separators = { left = '', right = '' }, + }, + sections = { + lualine_a = { 'mode' }, + lualine_b = { 'FugitiveHead', 'diff' }, + lualine_c = { { 'filename', path = 0 } }, + lualine_x = { 'diagnostics' }, + lualine_y = { 'filetype' }, + lualine_z = { 'progress' }, + }, + }) + end, }, { 'barrettruth/nonicons.nvim', diff --git a/home/tmux.nix b/home/tmux.nix index 0441288..8f9244b 100644 --- a/home/tmux.nix +++ b/home/tmux.nix @@ -83,9 +83,9 @@ MAGENTA="#d3869b" CYAN="#89b482" BLACK="#1d2021" - DARK_GRAY="#32302F" + DARK_GRAY="#282828" LIGHT_GRAY="#4F4946" - BG="#32302F" + BG="#1d2021" FG="#d4be98" HALF_ROUND_OPEN="#(printf '\uE0B2')" @@ -93,7 +93,7 @@ TRIANGLE_OPEN="#(printf '\uE0B2')" TRIANGLE_CLOSE="#(printf '\uE0B0')" - set-option -g status-position top + set-option -g status-position bottom set-option -g status-style bg=''${BG},fg=''${FG} set-option -g prompt-cursor-colour '#d4be98' set-option -g status-justify left @@ -111,14 +111,18 @@ " set-option -g window-status-current-format "\ - #[bg=''${LIGHT_GRAY},fg=default] #I\ - #[fg=''${RED}]:\ - #[fg=default]#W \ - #[bg=default]\ + \ + *#I\ + #[fg=''${MAGENTA}]:\ + #[fg=default]#W\ + \ " set-option -g window-status-separator "" + set-option -g pane-border-style fg=''${BG} + set-option -g pane-active-border-style fg=''${BG} + ''; }; @@ -129,7 +133,7 @@ current=$(tmux display-message -p '#S') tmux list-sessions -F '#S' | while IFS= read -r s; do if [ "$s" = "$current" ]; then - printf '#[bg=#4F4946,fg=#d8a657] %s #[bg=default,fg=default]' "$s" + printf ' *%s ' "$s" else printf ' %s ' "$s" fi diff --git a/home/zsh.nix b/home/zsh.nix index 614dd60..70d78b5 100644 --- a/home/zsh.nix +++ b/home/zsh.nix @@ -23,7 +23,7 @@ syntaxHighlighting.enable = true; shellAliases = { - c = "codex --dangerously-bypass-approvals-and-sandbox"; + co = "codex --dangerously-bypass-approvals-and-sandbox"; ca = "cursor-agent"; cc = "claude"; ch = "claude-handoff";