summaryrefslogtreecommitdiff
path: root/.config/nvim
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim')
-rw-r--r--.config/nvim/ascetic.lua0
-rw-r--r--.config/nvim/colors/ascetic.lua350
-rw-r--r--.config/nvim/init.lua2
-rw-r--r--.config/nvim/lua/wacky/core/colorscheme.lua28
-rw-r--r--.config/nvim/lua/wacky/plugins-setup.lua5
-rw-r--r--.config/nvim/lua/wacky/plugins/lualine.lua8
-rw-r--r--.config/nvim/plugin/packer_compiled.lua19
7 files changed, 367 insertions, 45 deletions
diff --git a/.config/nvim/ascetic.lua b/.config/nvim/ascetic.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/nvim/ascetic.lua
diff --git a/.config/nvim/colors/ascetic.lua b/.config/nvim/colors/ascetic.lua
new file mode 100644
index 0000000..1db88c7
--- /dev/null
+++ b/.config/nvim/colors/ascetic.lua
@@ -0,0 +1,350 @@
+-- Ascetic colorscheme for Neovim
+-- Monochrome low-contrast colorscheme
+-- Author: Wacky404
+-- License: MIT License (MIT)
+-- Converted to Lua from VimScript
+-- Original vimscript author Aos Dabbagh <hello@aos.sh>
+
+local M = {}
+
+-- Clear existing highlights
+vim.cmd("hi clear")
+if vim.fn.exists("syntax_on") then
+ vim.cmd("syntax reset")
+end
+
+vim.g.colors_name = "ascetic"
+
+local is_dark = vim.o.background == "dark"
+
+-- Configuration options
+local ascetic_transparent_bg = 1
+local ascetic_accent_colors = 1
+local ascetic_highlight_strings = vim.g.ascetic_highlight_strings or 0
+
+-- Color palette
+local colors = {
+ blackest = { gui = "#D1D1D1", cterm = "0" },
+ black = { gui = "#212121", cterm = "0" },
+ darkest_gray = { gui = "#323232", cterm = "236" },
+ darker_gray = { gui = "#414141", cterm = "8" },
+ dark_gray = { gui = "#767676", cterm = "242" },
+ medium_gray = { gui = "#999999", cterm = "243" },
+ light_gray = { gui = "#B2B2B2", cterm = "249" },
+ white = { gui = "#C0C0C0", cterm = "81" },
+ lighter_white = { gui = "#F1F1F1", cterm = "15" },
+ actual_white = { gui = "#FFFFFF", cterm = "231" },
+ green = { gui = "#9ef4a9", cterm = "68" },
+}
+
+local none = { gui = "NONE", cterm = "NONE" }
+
+-- Theme variables based on background
+local theme = {}
+
+if is_dark then
+ theme = {
+ blackest = colors.blackest,
+ black = colors.black,
+ darkest_gray = colors.darkest_gray,
+ darker_gray = colors.darker_gray,
+ dark_gray = colors.dark_gray,
+ medium_gray = colors.medium_gray,
+ light_gray = colors.light_gray,
+ white = colors.white,
+ lighter_white = colors.lighter_white,
+ actual_white = colors.actual_white,
+ }
+else
+ theme = {
+ blackest = colors.actual_white,
+ black = colors.white,
+ darkest_gray = colors.light_gray,
+ darker_gray = colors.medium_gray,
+ dark_gray = colors.dark_gray,
+ medium_gray = colors.darker_gray,
+ light_gray = colors.darkest_gray,
+ white = colors.black,
+ lighter_white = colors.blackest,
+ actual_white = colors.blackest,
+ green = colors.green,
+ }
+end
+
+local bg = theme.black
+local fg = theme.white
+
+-- Accent colors (subtle and harmonious with monochrome palette)
+local accent = {}
+if ascetic_accent_colors == 1 then
+ accent = {
+ blue = { gui = "#9ef4a9", cterm = "68" }, -- terminal green
+ red = { gui = "#A0A0A0", cterm = "247" }, -- Warm light gray for errors
+ green = { gui = "#9ef4a9", cterm = "233" }, -- Deep black (same as blue)
+ orange = { gui = "#959595", cterm = "246" }, -- Neutral gray for warnings
+ }
+else
+ accent = {
+ blue = theme.actual_white,
+ red = theme.dark_gray,
+ green = theme.lighter_white,
+ orange = theme.light_gray,
+ }
+end
+
+-- Helper function to set highlights
+local function highlight(group, style)
+ local cmd = "highlight " .. group
+
+ if style.fg then
+ cmd = cmd .. " guifg=" .. style.fg.gui .. " ctermfg=" .. style.fg.cterm
+ else
+ cmd = cmd .. " guifg=NONE ctermfg=NONE"
+ end
+
+ if style.bg then
+ cmd = cmd .. " guibg=" .. style.bg.gui .. " ctermbg=" .. style.bg.cterm
+ else
+ cmd = cmd .. " guibg=NONE ctermbg=NONE"
+ end
+
+ if style.sp then
+ cmd = cmd .. " guisp=" .. style.sp.gui
+ else
+ cmd = cmd .. " guisp=NONE"
+ end
+
+ if style.gui then
+ cmd = cmd .. " gui=" .. style.gui
+ else
+ cmd = cmd .. " gui=NONE"
+ end
+
+ if style.cterm then
+ cmd = cmd .. " cterm=" .. style.cterm
+ else
+ cmd = cmd .. " cterm=NONE"
+ end
+
+ vim.cmd(cmd)
+end
+
+-- Helper function to link highlights
+local function link(from, to)
+ vim.cmd("hi! link " .. from .. " " .. to)
+end
+
+-- Set highlights
+if ascetic_transparent_bg == 1 then
+ highlight("Normal", { fg = fg })
+else
+ highlight("Normal", { fg = fg, bg = bg })
+end
+
+highlight("Comment", { fg = theme.dark_gray })
+highlight("Cursor", { fg = bg, bg = fg })
+
+-- Link basic syntax groups
+link("Constant", "Normal")
+link("Character", "Constant")
+link("Boolean", "Constant")
+link("Number", "Constant")
+link("Float", "Constant")
+link("Identifier", "Constant")
+link("Function", "Constant")
+link("Statement", "Constant")
+link("Conditional", "Constant")
+link("Operator", "Constant")
+link("Exception", "Constant")
+link("PreProc", "Constant")
+link("Type", "Constant")
+link("Special", "Constant")
+
+-- String highlighting
+if ascetic_highlight_strings == 1 then
+ highlight("String", { fg = colors.medium_gray })
+else
+ link("String", "Constant")
+end
+
+-- UI elements
+highlight("ColorColumn", { bg = theme.darkest_gray })
+link("CursorColumn", "ColorColumn")
+link("CursorLine", "ColorColumn")
+link("CursorLineNr", "ColorColumn")
+
+link("Directory", "Normal")
+
+highlight("WarningMsg", { fg = fg })
+highlight("ErrorMsg", { fg = fg, gui = "reverse", cterm = "reverse" })
+highlight("VertSplit", { fg = theme.black, bg = theme.black })
+
+highlight("Folded", { fg = theme.medium_gray })
+link("FoldColumn", "Folded")
+
+highlight("SignColumn", { fg = theme.medium_gray, bg = theme.black })
+
+highlight("LineNr", { fg = theme.dark_gray })
+highlight("MatchParen", { fg = accent.green, gui = "underline", cterm = "underline" })
+highlight("NonText", { fg = theme.darker_gray })
+
+-- Popup menu
+highlight("Pmenu", { fg = fg, bg = bg })
+highlight("PmenuSel", { fg = fg, bg = theme.darker_gray })
+highlight("PmenuSbar", { fg = fg, bg = bg })
+highlight("PmenuThumb", { fg = fg, bg = bg })
+
+-- Search (using white highlight)
+highlight("Search", { fg = theme.actual_white, gui = "underline,bold", cterm = "underline,bold" })
+highlight("IncSearch", { fg = theme.actual_white, gui = "reverse", cterm = "reverse" })
+
+highlight("Question", { fg = fg })
+highlight("SpecialKey", { fg = theme.darker_gray })
+
+-- Spell checking
+link("SpellBad", "Normal")
+link("SpellLocal", "SpellBad")
+link("SpellCap", "SpellBad")
+link("SpellRare", "SpellBad")
+
+-- Status line (transparent with blur effect)
+if is_dark then
+ highlight("StatusLine", { fg = theme.dark_gray, bg = none, blend = 50 })
+ highlight("StatusLineNC", { fg = theme.darker_gray, bg = none, blend = 60 })
+else
+ -- Light mode - use darker colors for better contrast
+ highlight("StatusLine", { fg = theme.medium_gray, bg = none, blend = 20 })
+ highlight("StatusLineNC", { fg = theme.dark_gray, bg = none, blend = 30 })
+end
+
+-- Winbar Fix
+highlight("WinBar", { fg = fg, bg = none })
+highlight("WinBarNC", { fg = theme.dark_gray, bg = none })
+
+-- Additional lualine highlights for transparency
+vim.api.nvim_create_autocmd("ColorScheme", {
+ pattern = "ascetic",
+ callback = function()
+ -- Override any lualine highlights that might have backgrounds
+ local lualine_groups = {
+ "lualine_a_normal",
+ "lualine_b_normal",
+ "lualine_c_normal",
+ "lualine_a_insert",
+ "lualine_b_insert",
+ "lualine_c_insert",
+ "lualine_a_visual",
+ "lualine_b_visual",
+ "lualine_c_visual",
+ "lualine_a_command",
+ "lualine_b_command",
+ "lualine_c_command",
+ "lualine_a_replace",
+ "lualine_b_replace",
+ "lualine_c_replace",
+ "lualine_x_normal",
+ "lualine_y_normal",
+ "lualine_z_normal",
+ "lualine_x_insert",
+ "lualine_y_insert",
+ "lualine_z_insert",
+ "lualine_x_visual",
+ "lualine_y_visual",
+ "lualine_z_visual",
+ "lualine_x_command",
+ "lualine_y_command",
+ "lualine_z_command",
+ "lualine_x_replace",
+ "lualine_y_replace",
+ "lualine_z_replace",
+ "lualine_a_inactive",
+ "lualine_b_inactive",
+ "lualine_c_inactive",
+ }
+
+ for _, group in ipairs(lualine_groups) do
+ vim.api.nvim_set_hl(0, group, { bg = "NONE", blend = 20 })
+ end
+ end,
+})
+
+-- Tab line
+highlight("TabLine", { fg = theme.white, bg = none })
+highlight("TabLineFill", { bg = none })
+highlight("TabLineSel", { fg = fg, bg = theme.darker_gray })
+
+highlight("Title", { fg = fg, gui = "bold", cterm = "bold" })
+highlight("Visual", { bg = theme.darker_gray })
+link("VisualNOS", "Visual")
+
+highlight("WildMenu", { fg = fg, bg = bg, gui = "bold", cterm = "bold" })
+
+highlight("Underlined", { gui = "underline", cterm = "underline" })
+
+highlight("Error", { fg = accent.red })
+highlight("Todo", { fg = theme.dark_gray, gui = "bold,italic", cterm = "bold,italic" })
+
+-- Floating windows
+highlight("NormalFloat", { fg = fg, bg = bg })
+highlight("FloatBorder", { fg = theme.dark_gray })
+
+-- Vim diff
+highlight("DiffAdd", { fg = accent.green })
+highlight("DiffChange", { fg = accent.orange })
+highlight("DiffDelete", { fg = accent.red })
+highlight("DiffText", { fg = accent.blue })
+
+-- Fugitive
+link("FugitiveblameHash", "Normal")
+link("FugitiveblameUncommitted", "FugitiveblameHash")
+link("FugitiveblameTime", "FugitiveblameHash")
+link("FugitiveblameNotCommittedYet", "FugitiveblameHash")
+
+-- Telescope
+highlight("TelescopeSelection", { bg = theme.darkest_gray, gui = "bold" })
+link("TelescopeMatching", "Search")
+
+-- Terminal colors
+if vim.fn.has("termguicolors") == 1 and vim.o.termguicolors then
+ vim.g.terminal_ansi_colors = {
+ bg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ theme.blackest.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ fg.gui,
+ theme.actual_white.gui,
+ }
+end
+
+if vim.fn.has("nvim") == 1 then
+ vim.g.terminal_color_foreground = fg.gui
+ vim.g.terminal_color_background = bg.gui
+ vim.g.terminal_color_0 = bg.gui
+ vim.g.terminal_color_1 = fg.gui
+ vim.g.terminal_color_2 = fg.gui
+ vim.g.terminal_color_3 = fg.gui
+ vim.g.terminal_color_4 = fg.gui
+ vim.g.terminal_color_5 = fg.gui
+ vim.g.terminal_color_6 = fg.gui
+ vim.g.terminal_color_7 = fg.gui
+ vim.g.terminal_color_8 = theme.blackest.gui
+ vim.g.terminal_color_9 = fg.gui
+ vim.g.terminal_color_10 = fg.gui
+ vim.g.terminal_color_11 = fg.gui
+ vim.g.terminal_color_12 = fg.gui
+ vim.g.terminal_color_13 = fg.gui
+ vim.g.terminal_color_14 = fg.gui
+ vim.g.terminal_color_15 = theme.actual_white.gui
+end
+
+return M
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
index e68f05c..2ade1af 100644
--- a/.config/nvim/init.lua
+++ b/.config/nvim/init.lua
@@ -1,10 +1,10 @@
require("wacky.plugins-setup")
require("wacky.core.options")
require("wacky.core.keymaps")
+require("wacky.plugins.lualine")
require("wacky.core.colorscheme")
require("wacky.plugins.transparent")
require("wacky.plugins.nvim-oil")
-require("wacky.plugins.lualine")
require("wacky.plugins.telescope")
require("wacky.plugins.nvim-cmp")
require("wacky.plugins.lsp.mason")
diff --git a/.config/nvim/lua/wacky/core/colorscheme.lua b/.config/nvim/lua/wacky/core/colorscheme.lua
index c330433..1bf0bb0 100644
--- a/.config/nvim/lua/wacky/core/colorscheme.lua
+++ b/.config/nvim/lua/wacky/core/colorscheme.lua
@@ -1,31 +1,5 @@
-require("kanso").setup({
- compile = false, -- enable compiling the colorscheme
- undercurl = true, -- enable undercurls
- commentStyle = { italic = true },
- functionStyle = {},
- keywordStyle = { italic = true },
- statementStyle = {},
- typeStyle = {},
- disableItalics = false,
- transparent = true, -- do not set background color
- dimInactive = false, -- dim inactive window `:h hl-NormalNC`
- terminalColors = false, -- define vim.g.terminal_color_{0,17}
- colors = { -- add/modify theme and palette colors
- palette = {},
- theme = { zen = {}, pearl = {}, ink = {}, all = {} },
- },
- overrides = function(colors) -- add/modify highlights
- return {}
- end,
- theme = "zen", -- Load "zen" theme
- background = { -- map the value of 'background' option to a theme
- dark = "zen", -- try "ink" !
- light = "pearl",
- },
-})
-
-- setup must be called before loading
-vim.cmd("colorscheme kanso")
+vim.cmd("colorscheme ascetic")
-- This is for the Zenbone Theme
-- vim.cmd("set background=light")
diff --git a/.config/nvim/lua/wacky/plugins-setup.lua b/.config/nvim/lua/wacky/plugins-setup.lua
index e49295d..3b8d2fa 100644
--- a/.config/nvim/lua/wacky/plugins-setup.lua
+++ b/.config/nvim/lua/wacky/plugins-setup.lua
@@ -36,9 +36,6 @@ return packer.startup(function(use)
-- transparent background
use("xiyaowong/transparent.nvim")
- -- Color Scheme is here!!!
- use("webhooked/kanso.nvim") -- preferred colorscheme atm
-
use("szw/vim-maximizer") -- maximizes and restores current window
-- don't take this out; allows for pane navigation on splits
@@ -62,7 +59,7 @@ return packer.startup(function(use)
})
-- statusline
- use("nvim-lualine/lualine.nvim")
+ use({ "nvim-lualine/lualine.nvim" })
-- fuzzy finding w/ telescope
use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" }) -- dependency for better sorting performance
diff --git a/.config/nvim/lua/wacky/plugins/lualine.lua b/.config/nvim/lua/wacky/plugins/lualine.lua
index 99425cd..4f44314 100644
--- a/.config/nvim/lua/wacky/plugins/lualine.lua
+++ b/.config/nvim/lua/wacky/plugins/lualine.lua
@@ -3,4 +3,10 @@ if not status then
return
end
-lualine.setup()
+lualine.setup({
+ options = {
+ theme = "auto",
+ section_separators = "",
+ component_separators = "",
+ },
+})
diff --git a/.config/nvim/plugin/packer_compiled.lua b/.config/nvim/plugin/packer_compiled.lua
index f098ce8..3759990 100644
--- a/.config/nvim/plugin/packer_compiled.lua
+++ b/.config/nvim/plugin/packer_compiled.lua
@@ -120,18 +120,13 @@ _G.packer_plugins = {
path = "/Users/cole/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
url = "https://github.com/lewis6991/gitsigns.nvim"
},
- ["kanso.nvim"] = {
- loaded = true,
- path = "/Users/cole/.local/share/nvim/site/pack/packer/start/kanso.nvim",
- url = "https://github.com/webhooked/kanso.nvim"
- },
["lspkind.nvim"] = {
loaded = true,
path = "/Users/cole/.local/share/nvim/site/pack/packer/start/lspkind.nvim",
url = "https://github.com/onsails/lspkind.nvim"
},
["lspsaga.nvim"] = {
- config = { "\27LJ\2\nò\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\0025\3\6\0=\3\a\0025\3\t\0005\4\b\0=\4\n\3=\3\v\2B\0\2\1K\0\1\0\aui\vcolors\1\0\1\vcolors\0\1\0\1\14normal_bg\f#022746\15definition\1\0\1\tedit\t<CR>\19scroll_preview\1\0\3\15definition\0\19scroll_preview\0\aui\0\1\0\2\16scroll_down\n<C-f>\14scroll_up\n<C-b>\nsetup\flspsaga\frequire\0" },
+ config = { "\27LJ\2\nò\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\0025\3\6\0=\3\a\0025\3\t\0005\4\b\0=\4\n\3=\3\v\2B\0\2\1K\0\1\0\aui\vcolors\1\0\1\vcolors\0\1\0\1\14normal_bg\f#022746\15definition\1\0\1\tedit\t<CR>\19scroll_preview\1\0\3\aui\0\15definition\0\19scroll_preview\0\1\0\2\16scroll_down\n<C-f>\14scroll_up\n<C-b>\nsetup\flspsaga\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
@@ -242,7 +237,7 @@ _G.packer_plugins = {
url = "https://github.com/nvim-telescope/telescope.nvim"
},
["toggleterm.nvim"] = {
- config = { "\27LJ\2\nf\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\3\14direction\15horizontal\14autochdir\1\tsize\3\15\nsetup\15toggleterm\frequire\0" },
+ config = { "\27LJ\2\nf\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\3\tsize\3\15\14autochdir\1\14direction\15horizontal\nsetup\15toggleterm\frequire\0" },
loaded = true,
path = "/Users/cole/.local/share/nvim/site/pack/packer/start/toggleterm.nvim",
url = "https://github.com/akinsho/toggleterm.nvim"
@@ -293,21 +288,21 @@ time([[Setup for markdown-preview.nvim]], false)
time([[Config for Navigator.nvim]], true)
try_loadstring("\27LJ\2\n7\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\14Navigator\frequire\0", "config", "Navigator.nvim")
time([[Config for Navigator.nvim]], false)
--- Config for: toggleterm.nvim
-time([[Config for toggleterm.nvim]], true)
-try_loadstring("\27LJ\2\nf\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\3\14direction\15horizontal\14autochdir\1\tsize\3\15\nsetup\15toggleterm\frequire\0", "config", "toggleterm.nvim")
-time([[Config for toggleterm.nvim]], false)
-- Config for: nvim-ts-autotag
time([[Config for nvim-ts-autotag]], true)
try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20nvim-ts-autotag\frequire\0", "config", "nvim-ts-autotag")
time([[Config for nvim-ts-autotag]], false)
+-- Config for: toggleterm.nvim
+time([[Config for toggleterm.nvim]], true)
+try_loadstring("\27LJ\2\nf\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\3\tsize\3\15\14autochdir\1\14direction\15horizontal\nsetup\15toggleterm\frequire\0", "config", "toggleterm.nvim")
+time([[Config for toggleterm.nvim]], false)
-- Load plugins in order defined by `after`
time([[Sequenced loading]], true)
vim.cmd [[ packadd nvim-lspconfig ]]
vim.cmd [[ packadd lspsaga.nvim ]]
-- Config for: lspsaga.nvim
-try_loadstring("\27LJ\2\nò\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\0025\3\6\0=\3\a\0025\3\t\0005\4\b\0=\4\n\3=\3\v\2B\0\2\1K\0\1\0\aui\vcolors\1\0\1\vcolors\0\1\0\1\14normal_bg\f#022746\15definition\1\0\1\tedit\t<CR>\19scroll_preview\1\0\3\15definition\0\19scroll_preview\0\aui\0\1\0\2\16scroll_down\n<C-f>\14scroll_up\n<C-b>\nsetup\flspsaga\frequire\0", "config", "lspsaga.nvim")
+try_loadstring("\27LJ\2\nò\1\0\0\5\0\f\0\0156\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\0025\3\6\0=\3\a\0025\3\t\0005\4\b\0=\4\n\3=\3\v\2B\0\2\1K\0\1\0\aui\vcolors\1\0\1\vcolors\0\1\0\1\14normal_bg\f#022746\15definition\1\0\1\tedit\t<CR>\19scroll_preview\1\0\3\aui\0\15definition\0\19scroll_preview\0\1\0\2\16scroll_down\n<C-f>\14scroll_up\n<C-b>\nsetup\flspsaga\frequire\0", "config", "lspsaga.nvim")
time([[Sequenced loading]], false)
vim.cmd [[augroup packer_load_aucmds]]