Compare commits

..

43 Commits

Author SHA1 Message Date
calcu1on
42369bc959 Adding rose pine and configure as default. 2025-09-29 08:35:07 -04:00
calcu1on
d2261a927c Update plugins. 2025-09-29 08:31:14 -04:00
calcu1on
e49ce77ec4 More updates. 2025-08-29 21:39:25 -04:00
Dan Chadwick
3eef18f9cd Adding lazygit back for a nice ui. 2025-08-27 09:41:54 -04:00
calcu1on
69ec44c865 Removing cll to sistine theme. 2025-08-04 07:16:56 -04:00
calcu1on
a2ed35c726 Update everything. 2025-08-04 07:15:44 -04:00
calcu1on
6eda929dd3 Adding custom color schemes. 2025-07-31 12:27:11 -04:00
calcu1on
074e475d40 Update packages. 2025-07-30 09:44:43 -04:00
calcu1on
c47b4da611 Changing left and right navigation in bar bar. 2025-07-21 07:48:14 -04:00
calcu1on
b3fdc6d580 Changing keybing to close buffer in bar bar. 2025-07-21 07:46:43 -04:00
calcu1on
3a4fcf5762 Adding colorizer. 2025-07-21 07:46:16 -04:00
calcu1on
cb535f28e4 Turn off lazy loading for markview and treesitter, updating packages. 2025-07-08 08:27:53 -04:00
Dan Chadwick
cf575950da Updating packages. 2025-06-30 09:08:17 -04:00
calcu1on
de6697239e Adding barbar and things. 2025-06-30 08:46:33 -04:00
Dan Chadwick
09e62e8940 Picker ignoring and adding markview back. 2025-06-27 10:16:32 -04:00
calcu1on
cbce3193f9 Adding kanagawa as default. 2025-06-19 19:49:19 -04:00
calcu1on
17f72e1552 Updating plugins. 2025-06-17 20:56:04 -04:00
calcu1on
06f73e3f29 Updating things. 2025-06-12 21:29:21 -04:00
calcu1on
0f831a46b1 Changing keymap for saving and quitting. 2025-05-21 08:54:11 -04:00
calcu1on
d171bfe6f3 Removing lazygit to focus on using fugitive. 2025-05-21 08:47:29 -04:00
calcu1on
7d8372c71f Comment in init.lua around dap configuration. 2025-05-21 08:44:25 -04:00
calcu1on
547d9b000a Updating lualine. 2025-05-21 08:40:55 -04:00
calcu1on
0129204a78 Forcing enter terminal mode when term opened, adding keymap to exit terminal mode. 2025-05-21 08:39:34 -04:00
calcu1on
1796a835f8 Removing drupal lsp from init.lua as its in its own folder now. 2025-05-21 08:28:11 -04:00
calcu1on
dc60249576 Adding theme switch keymap 2025-05-21 08:22:35 -04:00
calcu1on
bb66b8fa82 Remove nvim-lsp-config and manually add each lsp. 2025-05-20 08:55:12 -04:00
calcu1on
571341310a Nordfox theme, removing relative line numbers, running updates. 2025-05-20 08:13:03 -04:00
calcu1on
6358e87244 Adding scroll. 2025-04-20 21:35:53 -04:00
calcu1on
ab66632f7f Updates to theme and removing more telescope things. 2025-04-20 21:12:36 -04:00
calcu1on
d5a3a49cb1 Disable telescope mappings, add animate and lazygit snacks. 2025-04-20 20:13:46 -04:00
calcu1on
945caaefb1 Switching theme to everforest and removing old themes. 2025-04-20 16:11:38 -04:00
calcu1on
b3ab200719 Update lualine theme. 2025-04-15 11:13:34 -04:00
calcu1on
9fa1a2fa85 Changing theme to kanagawa and removing markview command. 2025-04-15 11:09:54 -04:00
calcu1on
b5b26754bd Remove markview add supermaven. 2025-04-12 14:51:42 -04:00
calcu1on
ed65d752c6 Some updates to fugitive, remove ds store, blank spaces. 2025-03-30 22:53:25 -04:00
calcu1on
52a70c595f Changing things back to macchiato. 2025-03-30 22:31:50 -04:00
calcu1on
2a0dd567b9 Adding fugitive and changing catpuccin to frappe. 2025-03-30 22:21:49 -04:00
calcu1on
3bdf68fb70 Adding floating terminal. 2025-02-18 10:19:11 -05:00
calcu1on
4a8f203d52 Adding lazy lock 2025-02-14 23:19:59 -05:00
calcu1on
87b443444c Updates to most things, new keybinds, local terminal. 2025-02-14 23:19:38 -05:00
Dan Chadwick
d7645de63d Remove telekasten, add markview. 2024-12-13 19:41:07 -05:00
Dan Chadwick
f5eaec8a5d Adding note taking to neovim 2024-11-12 08:08:18 -05:00
Dan Chadwick
a088a7565a Update everything, improve autocomplete and snippets. 2024-11-11 12:05:28 -05:00
36 changed files with 1237 additions and 309 deletions

195
colors/demoiselles.lua Normal file
View File

@@ -0,0 +1,195 @@
local variant = vim.o.background -- "dark" or "light"
local colors = {}
if variant == "dark" then
colors = {
bg = "#1b1b1b", -- Bone black
fg = "#ddccbb", -- Lead white (muted for dark bg)
comment = "#807060", -- Warm neutral
red = "#d96a59", -- Vermilion-ochre
green = "#6ea177", -- Emerald green
yellow = "#e0b15e", -- Cadmium yellow
blue = "#8fb9c9", -- Cobalt blue
magenta = "#c9b78e", -- Ochre-pink repurposed
cyan = "#a3b6a8", -- Cool neutral accent
cursorline = "#2a2e33", -- Slightly lighter than bg
highlight = "#444444", -- For visual selections
}
else
colors = {
bg = "#fcf8f0", -- Lead white / fresco ivory
fg = "#3b3025", -- Deep umber brown
red = "#a5443a", -- Rusty vermilion
green = "#4f7c69", -- Emerald green softened
yellow = "#c69c3a", -- Renaissance gold / cadmium yellow
blue = "#3b6a8b", -- Muted cobalt blue
magenta = "#8c7a5e", -- Ochre-pink accent
cyan = "#a8c3d1", -- Soft sky blue-grey
comment = "#8b7e70", -- Warm stone grey
cursorline = "#e0d5c8", -- Pale ivory shadow
highlight = "#c9a04f", -- Gold highlight
}
end
vim.cmd("hi clear")
vim.o.termguicolors = true
vim.g.colors_name = "demoiselles"
local set = vim.api.nvim_set_hl
local function hi(group, opts) set(0, group, opts) end
-- Core UI
hi("Normal", { fg = colors.fg, bg = colors.bg })
hi("CursorLine", { bg = colors.cursorline })
hi("Visual", { bg = colors.highlight })
hi("LineNr", { fg = colors.comment })
hi("CursorLineNr",{ fg = colors.yellow, bold = true })
hi("VertSplit", { fg = colors.comment })
hi("StatusLine", { fg = colors.fg, bg = colors.cursorline })
hi("StatusLineNC",{ fg = colors.comment, bg = colors.cursorline })
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.yellow })
hi("Search", { fg = colors.bg, bg = colors.yellow })
hi("IncSearch", { fg = colors.bg, bg = colors.red })
-- Syntax
hi("Comment", { fg = colors.comment, italic = true })
hi("Constant", { fg = colors.red })
hi("String", { fg = colors.yellow })
hi("Character", { fg = colors.yellow })
hi("Number", { fg = colors.red })
hi("Boolean", { fg = colors.red })
hi("Float", { fg = colors.red })
hi("Identifier", { fg = colors.blue })
hi("Function", { fg = colors.green })
hi("Statement", { fg = colors.blue })
hi("Conditional", { fg = colors.magenta })
hi("Repeat", { fg = colors.magenta })
hi("Label", { fg = colors.yellow })
hi("Operator", { fg = colors.fg })
hi("Keyword", { fg = colors.blue, bold = true })
hi("Exception", { fg = colors.red })
hi("PreProc", { fg = colors.magenta })
hi("Include", { fg = colors.blue })
hi("Define", { fg = colors.magenta })
hi("Macro", { fg = colors.magenta })
hi("PreCondit", { fg = colors.magenta })
hi("Type", { fg = colors.green })
hi("StorageClass",{ fg = colors.green })
hi("Structure", { fg = colors.green })
hi("Typedef", { fg = colors.green })
hi("Special", { fg = colors.cyan })
hi("SpecialChar", { fg = colors.yellow })
hi("Tag", { fg = colors.blue })
hi("Delimiter", { fg = colors.fg })
hi("SpecialComment",{ fg = colors.comment, italic = true })
hi("Debug", { fg = colors.red })
hi("Underlined", { fg = colors.blue, underline = true })
hi("Bold", { bold = true })
hi("Italic", { italic = true })
hi("Error", { fg = colors.red, bold = true })
hi("Todo", { fg = colors.magenta, bold = true })
hi("WarningMsg", { fg = colors.yellow })
hi("ErrorMsg", { fg = colors.red, bold = true })
-- Diagnostics (LSP)
hi("DiagnosticError", { fg = colors.red })
hi("DiagnosticWarn", { fg = colors.yellow })
hi("DiagnosticInfo", { fg = colors.blue })
hi("DiagnosticHint", { fg = colors.cyan })
hi("DiagnosticUnderlineError", { undercurl = true, sp = colors.red })
hi("DiagnosticUnderlineWarn", { undercurl = true, sp = colors.yellow })
hi("DiagnosticUnderlineInfo", { undercurl = true, sp = colors.blue })
hi("DiagnosticUnderlineHint", { undercurl = true, sp = colors.cyan })
-- LSP Semantic Tokens
hi("@lsp.type.class", { fg = colors.yellow })
hi("@lsp.type.function", { fg = colors.blue })
hi("@lsp.type.variable", { fg = colors.fg })
hi("@lsp.type.parameter", { fg = colors.cyan })
hi("@lsp.type.property", { fg = colors.green })
hi("@lsp.type.enum", { fg = colors.magenta })
-- Treesitter
hi("@comment", { fg = colors.comment, italic = true })
hi("@function", { fg = colors.blue })
hi("@keyword", { fg = colors.red, italic = true })
hi("@string", { fg = colors.green })
hi("@variable", { fg = colors.fg })
hi("@type", { fg = colors.yellow })
hi("@property", { fg = colors.green })
hi("@number", { fg = colors.magenta })
-- Telescope
hi("TelescopeBorder", { fg = colors.comment })
hi("TelescopePromptTitle",{ fg = colors.yellow, bold = true })
hi("TelescopeSelection", { bg = colors.cursorline })
hi("TelescopeMatching", { fg = colors.blue })
-- DAP (Debug)
hi("DebugBreakpoint", { fg = colors.red })
hi("DebugBreakpointLine", { bg = colors.cursorline })
hi("DebugPC", { bg = colors.highlight })
hi("DebugCurrentLine", { underline = true, sp = colors.yellow })
-- Pmenu (Completion)
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.highlight })
hi("PmenuThumb", { bg = colors.highlight })
-- Notify / Noice / Snacks
hi("NotifyINFOBorder", { fg = colors.blue })
hi("NotifyWARNBorder", { fg = colors.yellow })
hi("NotifyERRORBorder", { fg = colors.red })
hi("NotifyDEBUGBorder", { fg = colors.cyan })
hi("NotifyTRACEBorder", { fg = colors.magenta })
hi("NoicePopup", { bg = colors.cursorline })
hi("NoicePopupmenu", { bg = colors.cursorline, fg = colors.fg })
-- Git Diff
hi("DiffAdd", { fg = colors.green })
hi("DiffChange", { fg = colors.blue })
hi("DiffDelete", { fg = colors.red })
-- Terminal Colors
vim.g.terminal_color_0 = colors.bg
vim.g.terminal_color_1 = colors.red
vim.g.terminal_color_2 = colors.green
vim.g.terminal_color_3 = colors.yellow
vim.g.terminal_color_4 = colors.blue
vim.g.terminal_color_5 = colors.magenta
vim.g.terminal_color_6 = colors.cyan
vim.g.terminal_color_7 = colors.fg
vim.g.terminal_color_8 = colors.comment
vim.g.terminal_color_9 = colors.red
vim.g.terminal_color_10 = colors.green
vim.g.terminal_color_11 = colors.yellow
vim.g.terminal_color_12 = colors.blue
vim.g.terminal_color_13 = colors.magenta
vim.g.terminal_color_14 = colors.cyan
vim.g.terminal_color_15 = colors.fg
-- Apply Snacks highlights unconditionally
hi("SnacksNormal", { fg = colors.fg, bg = colors.bg })
hi("SnacksNormalNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksWinBar", { fg = colors.magenta, bg = colors.bg, bold = true })
hi("SnacksWinBarNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksCursorLine", { bg = colors.highlight })
hi("SnacksCursor", { bg = colors.highlight })
hi("SnacksPickerFile", { fg = colors.green, bold = true })
hi("SnacksPickerDir", { fg = colors.comment })
hi("SnacksPickerPathHidden", { fg = colors.comment, italic = true })
hi("SnacksPickerPathIgnored",{ fg = colors.comment, italic = true })
hi("SnacksPickerPrefix", { fg = colors.yellow })
hi("SnacksPickerNormal", { fg = colors.fg, bg = colors.yellow }) -- Normal picker line
hi("SnacksPickerSelected", { fg = colors.bg, bg = colors.highlight }) -- Selected item (invert fg/bg)
hi("SnacksPickerCursor", { fg = colors.yellow, bg = colors.cursorline })
hi("NormalFloat", { fg = colors.fg, bg = colors.bg })

201
colors/nighthawks.lua Normal file
View File

@@ -0,0 +1,201 @@
-- nighthawks.lua
-- Neovim colorscheme inspired by Edward Hopper's "Nighthawks" (1942)
-- Dark = cinematic nighttime neon
-- Light = soft morning reinterpretation
local variant = vim.g.nighthawks_variant or "dark"
local colors = {}
if variant == "dark" then
colors = {
bg = "#0e1a22", -- Deep midnight navy
fg = "#d4d8dc", -- Pale warm white
comment = "#6a7b85", -- Smoky teal-gray
red = "#d15b4d", -- Neon diner red
green = "#6fa88d", -- Jade counter green
yellow = "#e3c770", -- Warm interior light
blue = "#5a87a5", -- Windowpane blue
magenta = "#b67aa0", -- Soft wine glow
cyan = "#77aab7", -- Cool teal accent
cursorline = "#172730", -- Slightly lighter than bg
highlight = "#24404f", -- Dim cyan highlight
}
else
colors = {
bg = "#f6f4f2", -- Muted paper white
fg = "#2f3b44", -- Charcoal ink
comment = "#868d93", -- Cool gray
red = "#b14f42", -- Brick red
green = "#5d8b76", -- Muted jade
yellow = "#c8a856", -- Soft sunlight gold
blue = "#3f6c89", -- Subdued cobalt
magenta = "#9b6f86", -- Dusty rose
cyan = "#649aa5", -- Sky teal
cursorline = "#e3dfdc", -- Light stone gray
highlight = "#c2b89c", -- Warm neutral highlight
}
end
local function hi(group, opts)
vim.api.nvim_set_hl(0, group, opts)
end
-- Core UI
hi("Normal", { fg = colors.fg, bg = colors.bg })
hi("CursorLine", { bg = colors.cursorline })
hi("Visual", { bg = colors.highlight })
hi("LineNr", { fg = colors.comment })
hi("CursorLineNr",{ fg = colors.yellow, bold = true })
hi("VertSplit", { fg = colors.comment })
hi("StatusLine", { fg = colors.fg, bg = colors.cursorline })
hi("StatusLineNC",{ fg = colors.comment, bg = colors.cursorline })
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.blue, bold = true })
hi("Search", { fg = colors.bg, bg = colors.yellow, bold = true })
hi("IncSearch", { fg = colors.bg, bg = colors.red, bold = true })
-- Syntax
hi("Comment", { fg = colors.comment, italic = true })
hi("Constant", { fg = colors.red })
hi("String", { fg = colors.yellow })
hi("Character", { fg = colors.yellow })
hi("Number", { fg = colors.cyan })
hi("Boolean", { fg = colors.cyan, bold = true })
hi("Float", { fg = colors.cyan })
hi("Identifier", { fg = colors.blue })
hi("Function", { fg = colors.green, bold = true })
hi("Statement", { fg = colors.blue })
hi("Conditional", { fg = colors.magenta })
hi("Repeat", { fg = colors.magenta })
hi("Label", { fg = colors.yellow })
hi("Operator", { fg = colors.fg })
hi("Keyword", { fg = colors.blue, bold = true })
hi("Exception", { fg = colors.red })
hi("PreProc", { fg = colors.magenta })
hi("Include", { fg = colors.blue })
hi("Define", { fg = colors.magenta })
hi("Macro", { fg = colors.magenta })
hi("PreCondit", { fg = colors.magenta })
hi("Type", { fg = colors.green })
hi("StorageClass",{ fg = colors.green })
hi("Structure", { fg = colors.green })
hi("Typedef", { fg = colors.green })
hi("Special", { fg = colors.cyan })
hi("SpecialChar", { fg = colors.yellow })
hi("Tag", { fg = colors.blue })
hi("Delimiter", { fg = colors.fg })
hi("SpecialComment",{ fg = colors.comment, italic = true })
hi("Debug", { fg = colors.red })
hi("Underlined", { fg = colors.blue, underline = true })
hi("Bold", { bold = true })
hi("Italic", { italic = true })
hi("Error", { fg = colors.red, bold = true })
hi("Todo", { fg = colors.yellow, bold = true })
hi("WarningMsg", { fg = colors.yellow })
hi("ErrorMsg", { fg = colors.red, bold = true })
-- Diagnostics (LSP)
hi("DiagnosticError", { fg = colors.red })
hi("DiagnosticWarn", { fg = colors.yellow })
hi("DiagnosticInfo", { fg = colors.blue })
hi("DiagnosticHint", { fg = colors.cyan })
hi("DiagnosticUnderlineError", { undercurl = true, sp = colors.red })
hi("DiagnosticUnderlineWarn", { undercurl = true, sp = colors.yellow })
hi("DiagnosticUnderlineInfo", { undercurl = true, sp = colors.blue })
hi("DiagnosticUnderlineHint", { undercurl = true, sp = colors.cyan })
-- LSP Semantic Tokens
hi("@lsp.type.class", { fg = colors.yellow })
hi("@lsp.type.function", { fg = colors.blue })
hi("@lsp.type.variable", { fg = colors.fg })
hi("@lsp.type.parameter", { fg = colors.cyan })
hi("@lsp.type.property", { fg = colors.green })
hi("@lsp.type.enum", { fg = colors.magenta })
-- Treesitter
hi("@comment", { fg = colors.comment, italic = true })
hi("@function", { fg = colors.blue })
hi("@keyword", { fg = colors.red, italic = true })
hi("@string", { fg = colors.green })
hi("@variable", { fg = colors.fg })
hi("@type", { fg = colors.yellow })
hi("@property", { fg = colors.green })
hi("@number", { fg = colors.magenta })
-- Telescope
hi("TelescopeBorder", { fg = colors.comment })
hi("TelescopePromptTitle",{ fg = colors.yellow, bold = true })
hi("TelescopeSelection", { bg = colors.cursorline })
hi("TelescopeMatching", { fg = colors.blue })
-- DAP (Debug)
hi("DebugBreakpoint", { fg = colors.red })
hi("DebugBreakpointLine", { bg = colors.cursorline })
hi("DebugPC", { bg = colors.highlight })
hi("DebugCurrentLine", { underline = true, sp = colors.yellow })
-- Pmenu (Completion)
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.highlight })
hi("PmenuThumb", { bg = colors.highlight })
-- Notify / Noice / Snacks
hi("NotifyINFOBorder", { fg = colors.blue })
hi("NotifyWARNBorder", { fg = colors.yellow })
hi("NotifyERRORBorder", { fg = colors.red })
hi("NotifyDEBUGBorder", { fg = colors.cyan })
hi("NotifyTRACEBorder", { fg = colors.magenta })
hi("NoicePopup", { bg = colors.cursorline })
hi("NoicePopupmenu", { bg = colors.cursorline, fg = colors.fg })
-- Git Diff
hi("DiffAdd", { fg = colors.green })
hi("DiffChange", { fg = colors.blue })
hi("DiffDelete", { fg = colors.red })
-- Terminal Colors
vim.g.terminal_color_0 = colors.bg
vim.g.terminal_color_1 = colors.red
vim.g.terminal_color_2 = colors.green
vim.g.terminal_color_3 = colors.yellow
vim.g.terminal_color_4 = colors.blue
vim.g.terminal_color_5 = colors.magenta
vim.g.terminal_color_6 = colors.cyan
vim.g.terminal_color_7 = colors.fg
vim.g.terminal_color_8 = colors.comment
vim.g.terminal_color_9 = colors.red
vim.g.terminal_color_10 = colors.green
vim.g.terminal_color_11 = colors.yellow
vim.g.terminal_color_12 = colors.blue
vim.g.terminal_color_13 = colors.magenta
vim.g.terminal_color_14 = colors.cyan
vim.g.terminal_color_15 = colors.fg
-- Apply Snacks highlights unconditionally
hi("SnacksNormal", { fg = colors.fg, bg = colors.bg })
hi("SnacksNormalNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksWinBar", { fg = colors.magenta, bg = colors.bg, bold = true })
hi("SnacksWinBarNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksCursorLine", { bg = colors.highlight })
hi("SnacksCursor", { bg = colors.highlight })
hi("SnacksPickerFile", { fg = colors.green, bold = true })
hi("SnacksPickerDir", { fg = colors.comment })
hi("SnacksPickerPathHidden", { fg = colors.comment, italic = true })
hi("SnacksPickerPathIgnored",{ fg = colors.comment, italic = true })
hi("SnacksPickerPrefix", { fg = colors.yellow })
hi("SnacksPickerNormal", { fg = colors.fg, bg = colors.yellow }) -- Normal picker line
hi("SnacksPickerSelected", { fg = colors.bg, bg = colors.highlight }) -- Selected item (invert fg/bg)
hi("SnacksPickerCursor", { fg = colors.yellow, bg = colors.cursorline })
hi("NormalFloat", { fg = colors.fg, bg = colors.bg })
return colors

151
colors/sistine.lua Normal file
View File

@@ -0,0 +1,151 @@
-- Sistine Theme for Neovim (Extended)
-- Inspired by the Sistine Chapel
local variant = vim.o.background -- "dark" or "light"
local colors = {}
if variant == "dark" then
colors = {
bg = "#1f2428",
fg = "#dfd8c0",
comment = "#8a9286",
blue = "#6d8ec7",
green = "#a5c39f",
yellow = "#dfc17d",
red = "#dba59a",
magenta = "#dba59a", -- repurpose if needed
cursorline= "#2a2e33",
highlight = "#343a40", -- darker than bg2 for visual selects
}
else
colors = {
bg = "#f4f1ec", -- Fresco White
fg = "#80614d", -- Divine Umber
red = "#d18a74", -- Cherub Blush
green = "#7c8957", -- Olive Laurel
yellow = "#c9a04f", -- Renaissance Gold
blue = "#a8c3d1", -- Sky Blue
magenta = "#e5b1aa", -- Angel Pink
cyan = "#c1b6aa", -- Marble Grey
comment = "#a1978e", -- Softened Marble
highlight = "#c9a04f", -- Renaissance Gold
cursorline = "#e8e2db",
}
end
vim.cmd("hi clear")
vim.o.termguicolors = true
vim.g.colors_name = "sistine"
local set = vim.api.nvim_set_hl
local function hi(group, opts) set(0, group, opts) end
-- Core UI
hi("Normal", { fg = colors.fg, bg = colors.bg })
hi("Comment", { fg = colors.comment, italic = true })
hi("CursorLine", { bg = colors.cursorline })
hi("Visual", { bg = colors.highlight })
hi("LineNr", { fg = colors.comment })
hi("CursorLineNr", { fg = colors.yellow, bold = true })
hi("StatusLine", { fg = colors.fg, bg = colors.cursorline })
hi("VertSplit", { fg = colors.comment })
hi("Title", { fg = colors.magenta, bold = true })
hi("Search", { bg = colors.yellow, fg = colors.bg })
hi("IncSearch", { bg = colors.red, fg = colors.bg })
-- Diagnostics (LSP)
hi("DiagnosticError", { fg = colors.red })
hi("DiagnosticWarn", { fg = colors.yellow })
hi("DiagnosticInfo", { fg = colors.blue })
hi("DiagnosticHint", { fg = colors.green })
hi("DiagnosticUnderlineError", { undercurl = true, sp = colors.red })
hi("DiagnosticUnderlineWarn", { undercurl = true, sp = colors.yellow })
hi("DiagnosticUnderlineInfo", { undercurl = true, sp = colors.blue })
hi("DiagnosticUnderlineHint", { undercurl = true, sp = colors.green })
-- LSP Semantic Tokens
hi("@lsp.type.class", { fg = colors.yellow })
hi("@lsp.type.function", { fg = colors.blue })
hi("@lsp.type.variable", { fg = colors.fg })
hi("@lsp.type.parameter", { fg = colors.cyan })
hi("@lsp.type.property", { fg = colors.green })
hi("@lsp.type.enum", { fg = colors.magenta })
-- Treesitter
hi("@comment", { fg = colors.comment, italic = true })
hi("@function", { fg = colors.blue })
hi("@keyword", { fg = colors.red, italic = true })
hi("@string", { fg = colors.green })
hi("@variable", { fg = colors.fg })
hi("@type", { fg = colors.yellow })
hi("@property", { fg = colors.green })
hi("@number", { fg = colors.magenta })
-- Telescope
hi("TelescopeBorder", { fg = colors.comment })
hi("TelescopePromptTitle",{ fg = colors.yellow, bold = true })
hi("TelescopeSelection", { bg = colors.cursorline })
hi("TelescopeMatching", { fg = colors.blue })
-- DAP (Debug)
hi("DebugBreakpoint", { fg = colors.red })
hi("DebugBreakpointLine", { bg = colors.cursorline })
hi("DebugPC", { bg = colors.highlight })
hi("DebugCurrentLine", { underline = true, sp = colors.yellow })
-- Pmenu (Completion)
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.highlight })
hi("PmenuThumb", { bg = colors.highlight })
-- Notify / Noice / Snacks
hi("NotifyINFOBorder", { fg = colors.blue })
hi("NotifyWARNBorder", { fg = colors.yellow })
hi("NotifyERRORBorder", { fg = colors.red })
hi("NotifyDEBUGBorder", { fg = colors.cyan })
hi("NotifyTRACEBorder", { fg = colors.magenta })
hi("NoicePopup", { bg = colors.cursorline })
hi("NoicePopupmenu", { bg = colors.cursorline, fg = colors.fg })
-- Git Diff
hi("DiffAdd", { fg = colors.green })
hi("DiffChange", { fg = colors.blue })
hi("DiffDelete", { fg = colors.red })
-- Terminal Colors
vim.g.terminal_color_0 = colors.bg
vim.g.terminal_color_1 = colors.red
vim.g.terminal_color_2 = colors.green
vim.g.terminal_color_3 = colors.yellow
vim.g.terminal_color_4 = colors.blue
vim.g.terminal_color_5 = colors.magenta
vim.g.terminal_color_6 = colors.cyan
vim.g.terminal_color_7 = colors.fg
vim.g.terminal_color_8 = colors.comment
vim.g.terminal_color_9 = colors.red
vim.g.terminal_color_10 = colors.green
vim.g.terminal_color_11 = colors.yellow
vim.g.terminal_color_12 = colors.blue
vim.g.terminal_color_13 = colors.magenta
vim.g.terminal_color_14 = colors.cyan
vim.g.terminal_color_15 = colors.fg
-- Bottom of sistine.lua (after terminal colors)
-- Apply Snacks highlights unconditionally
hi("SnacksNormal", { fg = colors.fg, bg = colors.bg })
hi("SnacksNormalNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksWinBar", { fg = colors.magenta, bg = colors.bg, bold = true })
hi("SnacksWinBarNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksCursorLine", { bg = colors.highlight })
hi("SnacksCursor", { bg = colors.highlight })
hi("SnacksPickerFile", { fg = colors.green, bold = true })
hi("SnacksPickerDir", { fg = colors.comment })
hi("SnacksPickerPathHidden", { fg = colors.comment, italic = true })
hi("SnacksPickerPathIgnored",{ fg = colors.comment, italic = true })
hi("SnacksPickerPrefix", { fg = colors.yellow })
hi("SnacksPickerNormal", { fg = colors.fg, bg = colors.yellow }) -- Normal picker line
hi("SnacksPickerSelected", { fg = colors.bg, bg = colors.highlight }) -- Selected item (invert fg/bg)
hi("SnacksPickerCursor", { fg = colors.yellow, bg = colors.cursorline })
hi("NormalFloat", { fg = colors.fg, bg = colors.bg })

195
colors/starry_night.lua Normal file
View File

@@ -0,0 +1,195 @@
local variant = vim.o.background -- "dark" or "light"
local colors = {}
if variant == "dark" then
colors = {
bg = "#0b1220", -- Deep midnight blue
fg = "#d7dbe7", -- Starlight white
comment = "#5b6a8a", -- Muted blue-gray
red = "#d77b6e", -- Rusty crimson (village roofs)
green = "#7ea97e", -- Cypress green
yellow = "#f5d97a", -- Star glow
blue = "#345d9d", -- Ultramarine swirl
magenta = "#9d7cae", -- Violet undertones
cyan = "#5fb8c5", -- Turquoise accent
cursorline = "#162033", -- Soft navy for line highlight
highlight = "#244060", -- Glow for visual mode
}
else
colors = {
bg = "#f7f4ed", -- Soft parchment dawn
fg = "#2f3d59", -- Ink blue
comment = "#7c869f", -- Cloud gray
red = "#c05a50", -- Terracotta red
green = "#608b6f", -- Cypress softened
yellow = "#e6c45d", -- Morning gold
blue = "#476c9b", -- Sky blue
magenta = "#8c6f98", -- Lilac violet
cyan = "#6aa5b4", -- Light teal
cursorline = "#e1ddd3", -- Pale beige
highlight = "#c9b99a", -- Golden-beige for visual select
}
end
vim.cmd("hi clear")
vim.o.termguicolors = true
vim.g.colors_name = "demoiselles"
local set = vim.api.nvim_set_hl
local function hi(group, opts) set(0, group, opts) end
-- Core UI
hi("Normal", { fg = colors.fg, bg = colors.bg })
hi("CursorLine", { bg = colors.cursorline })
hi("Visual", { bg = colors.highlight })
hi("LineNr", { fg = colors.comment })
hi("CursorLineNr",{ fg = colors.yellow, bold = true })
hi("VertSplit", { fg = colors.comment })
hi("StatusLine", { fg = colors.fg, bg = colors.cursorline })
hi("StatusLineNC",{ fg = colors.comment, bg = colors.cursorline })
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.yellow })
hi("Search", { fg = colors.bg, bg = colors.yellow })
hi("IncSearch", { fg = colors.bg, bg = colors.red })
-- Syntax
hi("Comment", { fg = colors.comment, italic = true })
hi("Constant", { fg = colors.red })
hi("String", { fg = colors.yellow })
hi("Character", { fg = colors.yellow })
hi("Number", { fg = colors.cyan })
hi("Boolean", { fg = colors.cyan })
hi("Float", { fg = colors.cyan })
hi("Identifier", { fg = colors.blue })
hi("Function", { fg = colors.green })
hi("Statement", { fg = colors.blue })
hi("Conditional", { fg = colors.magenta })
hi("Repeat", { fg = colors.magenta })
hi("Label", { fg = colors.yellow })
hi("Operator", { fg = colors.fg })
hi("Keyword", { fg = colors.blue, bold = true })
hi("Exception", { fg = colors.red })
hi("PreProc", { fg = colors.magenta })
hi("Include", { fg = colors.blue })
hi("Define", { fg = colors.magenta })
hi("Macro", { fg = colors.magenta })
hi("PreCondit", { fg = colors.magenta })
hi("Type", { fg = colors.green })
hi("StorageClass",{ fg = colors.green })
hi("Structure", { fg = colors.green })
hi("Typedef", { fg = colors.green })
hi("Special", { fg = colors.cyan })
hi("SpecialChar", { fg = colors.yellow })
hi("Tag", { fg = colors.blue })
hi("Delimiter", { fg = colors.fg })
hi("SpecialComment",{ fg = colors.comment, italic = true })
hi("Debug", { fg = colors.red })
hi("Underlined", { fg = colors.blue, underline = true })
hi("Bold", { bold = true })
hi("Italic", { italic = true })
hi("Error", { fg = colors.red, bold = true })
hi("Todo", { fg = colors.magenta, bold = true })
hi("WarningMsg", { fg = colors.yellow })
hi("ErrorMsg", { fg = colors.red, bold = true })
-- Diagnostics (LSP)
hi("DiagnosticError", { fg = colors.red })
hi("DiagnosticWarn", { fg = colors.yellow })
hi("DiagnosticInfo", { fg = colors.blue })
hi("DiagnosticHint", { fg = colors.cyan })
hi("DiagnosticUnderlineError", { undercurl = true, sp = colors.red })
hi("DiagnosticUnderlineWarn", { undercurl = true, sp = colors.yellow })
hi("DiagnosticUnderlineInfo", { undercurl = true, sp = colors.blue })
hi("DiagnosticUnderlineHint", { undercurl = true, sp = colors.cyan })
-- LSP Semantic Tokens
hi("@lsp.type.class", { fg = colors.yellow })
hi("@lsp.type.function", { fg = colors.blue })
hi("@lsp.type.variable", { fg = colors.fg })
hi("@lsp.type.parameter", { fg = colors.cyan })
hi("@lsp.type.property", { fg = colors.green })
hi("@lsp.type.enum", { fg = colors.magenta })
-- Treesitter
hi("@comment", { fg = colors.comment, italic = true })
hi("@function", { fg = colors.green })
hi("@keyword", { fg = colors.red, italic = true })
hi("@string", { fg = colors.green })
hi("@variable", { fg = colors.fg })
hi("@type", { fg = colors.yellow })
hi("@property", { fg = colors.green })
hi("@number", { fg = colors.magenta })
-- Telescope
hi("TelescopeBorder", { fg = colors.comment })
hi("TelescopePromptTitle",{ fg = colors.yellow, bold = true })
hi("TelescopeSelection", { bg = colors.cursorline })
hi("TelescopeMatching", { fg = colors.blue })
-- DAP (Debug)
hi("DebugBreakpoint", { fg = colors.red })
hi("DebugBreakpointLine", { bg = colors.cursorline })
hi("DebugPC", { bg = colors.highlight })
hi("DebugCurrentLine", { underline = true, sp = colors.yellow })
-- Pmenu (Completion)
hi("Pmenu", { fg = colors.fg, bg = colors.cursorline })
hi("PmenuSel", { fg = colors.bg, bg = colors.highlight })
hi("PmenuThumb", { bg = colors.highlight })
-- Notify / Noice / Snacks
hi("NotifyINFOBorder", { fg = colors.blue })
hi("NotifyWARNBorder", { fg = colors.yellow })
hi("NotifyERRORBorder", { fg = colors.red })
hi("NotifyDEBUGBorder", { fg = colors.cyan })
hi("NotifyTRACEBorder", { fg = colors.magenta })
hi("NoicePopup", { bg = colors.cursorline })
hi("NoicePopupmenu", { bg = colors.cursorline, fg = colors.fg })
-- Git Diff
hi("DiffAdd", { fg = colors.green })
hi("DiffChange", { fg = colors.blue })
hi("DiffDelete", { fg = colors.red })
-- Terminal Colors
vim.g.terminal_color_0 = colors.bg
vim.g.terminal_color_1 = colors.red
vim.g.terminal_color_2 = colors.green
vim.g.terminal_color_3 = colors.yellow
vim.g.terminal_color_4 = colors.blue
vim.g.terminal_color_5 = colors.magenta
vim.g.terminal_color_6 = colors.cyan
vim.g.terminal_color_7 = colors.fg
vim.g.terminal_color_8 = colors.comment
vim.g.terminal_color_9 = colors.red
vim.g.terminal_color_10 = colors.green
vim.g.terminal_color_11 = colors.yellow
vim.g.terminal_color_12 = colors.blue
vim.g.terminal_color_13 = colors.magenta
vim.g.terminal_color_14 = colors.cyan
vim.g.terminal_color_15 = colors.fg
-- Apply Snacks highlights unconditionally
hi("SnacksNormal", { fg = colors.fg, bg = colors.bg })
hi("SnacksNormalNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksWinBar", { fg = colors.magenta, bg = colors.bg, bold = true })
hi("SnacksWinBarNC", { fg = colors.comment, bg = colors.bg })
hi("SnacksCursorLine", { bg = colors.highlight })
hi("SnacksCursor", { bg = colors.highlight })
hi("SnacksPickerFile", { fg = colors.green, bold = true })
hi("SnacksPickerDir", { fg = colors.comment })
hi("SnacksPickerPathHidden", { fg = colors.comment, italic = true })
hi("SnacksPickerPathIgnored",{ fg = colors.comment, italic = true })
hi("SnacksPickerPrefix", { fg = colors.yellow })
hi("SnacksPickerNormal", { fg = colors.fg, bg = colors.yellow }) -- Normal picker line
hi("SnacksPickerSelected", { fg = colors.bg, bg = colors.highlight }) -- Selected item (invert fg/bg)
hi("SnacksPickerCursor", { fg = colors.yellow, bg = colors.cursorline })
hi("NormalFloat", { fg = colors.fg, bg = colors.bg })

View File

@@ -1,4 +1,6 @@
-- Pull in core keybindings --
require("dan.core") require("dan.core")
-- Lazy VIM -- -- Lazy VIM --
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then if not vim.loop.fs_stat(lazypath) then
@@ -12,17 +14,38 @@ if not vim.loop.fs_stat(lazypath) then
}) })
end end
vim.opt.rtp:prepend(lazypath) vim.opt.rtp:prepend(lazypath)
-- SET NEOVIM THEME --
vim.o.termguicolors = true
-- vim.cmd "let g:everforest_background = 'hard'"
-- vim.cmd.colorscheme('sistine')
vim.o.background = "dark"
-- Load Plugins
require("lazy").setup("plugins") require("lazy").setup("plugins")
vim.cmd.colorscheme('catppuccin') vim.cmd.colorscheme('rose-pine-moon')
vim.keymap.set("n", "<leader>ct", "<cmd>Telescope colorscheme<CR>")
-- LSP --
vim.o.winborder = 'rounded'
vim.lsp.enable({'intelephense'})
vim.lsp.enable({'drupal-lsp'})
vim.lsp.enable({'rust_analyzer'})
vim.lsp.enable({'elixirls'})
vim.lsp.enable({'lexical'})
vim.keymap.set("n", "K", vim.lsp.buf.hover, {})
vim.keymap.set("n", "gd", vim.lsp.buf.definition, {})
vim.keymap.set({ "n" }, "<leader>ca", vim.lsp.buf.code_action, {})
-- XDEBUG --
local dap = require('dap') local dap = require('dap')
require('telescope').load_extension('dap') require('telescope').load_extension('dap')
dap.adapters.php = { dap.adapters.php = {
type = "executable", type = "executable",
command = "node", command = "node",
args = { os.getenv("HOME") .. "/vscode-php-debug/out/phpDebug.js" } args = { os.getenv("HOME") .. "/vscode-php-debug/out/phpDebug.js" }
} }
dap.configurations.php = { dap.configurations.php = {
{ {
type = "php", type = "php",
@@ -36,13 +59,16 @@ dap.configurations.php = {
type = "php", type = "php",
request = "launch", request = "launch",
port = 9003, port = 9003,
log = true,
-- this is where your file is in the container -- this is where your file is in the container
-- you need to be in this directory when starting neovim.
pathMappings = { pathMappings = {
["/var/www/html/web"] = "${workspaceFolder}" ["/var/www/html/web"] = "${workspaceFolder}"
} }
} }
} }
vim.fn.sign_define('DapBreakpoint',{ text ='🟥', texthl ='', linehl ='', numhl =''})
vim.fn.sign_define('DapStopped',{ text ='▶️', texthl ='', linehl ='', numhl =''})
vim.keymap.set('n', '<leader>?', function() dap.continue() end) vim.keymap.set('n', '<leader>?', function() dap.continue() end)
vim.keymap.set('n', '<leader>N', function() dap.step_over() end) vim.keymap.set('n', '<leader>N', function() dap.step_over() end)
vim.keymap.set('n', '<leader>n', function() dap.step_into() end) vim.keymap.set('n', '<leader>n', function() dap.step_into() end)
@@ -51,29 +77,7 @@ vim.keymap.set('n', '<leader>b', function() dap.toggle_breakpoint() end)
vim.keymap.set('n', '<leader>B', function() dap.set_breakpoint() end) vim.keymap.set('n', '<leader>B', function() dap.set_breakpoint() end)
vim.keymap.set('n', '<leader>dr', function() dap.repl.open() end) vim.keymap.set('n', '<leader>dr', function() dap.repl.open() end)
vim.keymap.set('n', '<leader>dl', function() dap.run_last() end) vim.keymap.set('n', '<leader>dl', function() dap.run_last() end)
-- vim.keymap.set({'n', 'v'}, '<leader>dh', function()
-- require('dap.ui.widgets').hover()
-- end)
-- vim.keymap.set({'n', 'v'}, '<leader>dp', function()
-- require('dap.ui.widgets').preview()
-- end)
-- vim.keymap.set('n', '<leader>df', function()
-- local widgets = require('dap.ui.widgets')
-- widgets.centered_float(widgets.frames)
-- end)
vim.keymap.set('n', '<leader>db', function() vim.keymap.set('n', '<leader>db', function()
local widgets = require('dap.ui.widgets') local widgets = require('dap.ui.widgets')
widgets.centered_float(widgets.scopes) widgets.centered_float(widgets.scopes)
end) end)
-- dap.listeners.after.event_initialized["dapui_config"] = function()
-- dapui.open()
-- end
-- dap.listeners.before.event_terminated["dapui_config"] = function()
-- dapui.close()
-- end
-- dap.listeners.before.event_exited["dapui_config"] = function()
-- dapui.close()
-- end

View File

@@ -1,30 +1,41 @@
{ {
"LuaSnip": { "branch": "master", "commit": "787dee55ca364cc9119787165418fe93b74c1842" }, "LuaSnip": { "branch": "master", "commit": "b3104910bb5ebf40492aadffae18f2528fa757d9" },
"alpha-nvim": { "branch": "main", "commit": "bf3c8bb8c02ed3d9644cc5bbc48e2bdc39349cd7" }, "ahoy.nvim": { "branch": "main", "commit": "a08ced2a95ac9e0b8cf7048d9daa7c39756b8261" },
"catppuccin": { "branch": "main", "commit": "d9ee9a35f46f0a2bda9a15b5a763fee4095428fd" }, "barbar.nvim": { "branch": "master", "commit": "549ee11d97057eae207bafa2c23c315942cca097" },
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
"friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" }, "cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
"harpoon": { "branch": "harpoon2", "commit": "0378a6c428a0bed6a2781d459d7943843f374bce" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"lazy.nvim": { "branch": "main", "commit": "cf8ecc2c5e4332760431a33534240b0cbc6680ab" }, "everforest": { "branch": "master", "commit": "3fffb096f6ac11372944ac964c60f8af41d8809f" },
"lazygit.nvim": { "branch": "main", "commit": "56760339a81cd1540d5a72fd9d93010a2677b55d" }, "gitsigns.nvim": { "branch": "main", "commit": "23ae90a2a52fdc9b8c50dc61d6c30ebb18521343" },
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" }, "harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "7446f47b3dfb7df801f31a6f6783c2ad119a6935" }, "kanagawa.nvim": { "branch": "master", "commit": "debe91547d7fb1eef34ce26a5106f277fbfdd109" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "8b9363d83b5d779813cdd2819b8308651cec2a09" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "lazygit.nvim": { "branch": "main", "commit": "2305deed25bc61b866d5d39189e9105a45cf1cfb" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" }, "lspkind.nvim": { "branch": "master", "commit": "3ddd1b4edefa425fda5a9f95a4f25578727c0bb3" },
"nui.nvim": { "branch": "main", "commit": "b58e2bfda5cea347c9d58b7f11cf3012c7b3953f" }, "lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
"nvim-cmp": { "branch": "main", "commit": "29fb4854573355792df9e156cb779f0d31308796" }, "markview.nvim": { "branch": "main", "commit": "3b9ad1ef6527c220b9b6b0c0d7694c74a95524f4" },
"nvim-dap": { "branch": "master", "commit": "7ff6936010b7222fea2caea0f67ed77f1b7c60dd" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "f760507df8c49a4bf46a4d12e1fc616797508979" },
"nvim-dap-ui": { "branch": "master", "commit": "ffa89839f97bad360e78428d5c740fdad9a0ff02" }, "mason-nvim-dap.nvim": { "branch": "main", "commit": "86389a3dd687cfaa647b6f44731e492970034baa" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "52638640ae309cacdaff785fdbb854437bd1ee5c" }, "mason.nvim": { "branch": "main", "commit": "b3689a41dd77e5294498dba9757fb22cc80cbebd" },
"nvim-lspconfig": { "branch": "master", "commit": "28b205ebe73a18f401e040585106f9bafd8ff21f" }, "mini.icons": { "branch": "main", "commit": "e8fae66cb400744daeedf6e387347df50271c252" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "nightfox": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" },
"nvim-treesitter": { "branch": "master", "commit": "48fc5d1dfe3dded8028826dfee7526e26212c73b" }, "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
"nvim-web-devicons": { "branch": "master", "commit": "19d257cf889f79f4022163c3fbb5e08639077bd8" }, "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, "nvim-dap": { "branch": "master", "commit": "7367cec8e8f7a0b1e4566af9a7ef5959d11206a7" },
"telescope-dap.nvim": { "branch": "master", "commit": "8c88d9716c91eaef1cdea13cb9390d8ef447dbfe" }, "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-web-devicons": { "branch": "master", "commit": "f6b0920f452bfd7595ee9a9efe5e1ae78e0e2997" },
"oil.nvim": { "branch": "master", "commit": "919e155fdf38e9148cdb5304faaaf53c20d703ea" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"rose-pine": { "branch": "main", "commit": "72a04c4065345b51b56aed4859ea1d884f734097" },
"snacks.nvim": { "branch": "main", "commit": "5d9dacd09876eed33bde204d224fa7596ac850e8" },
"supermaven-nvim": { "branch": "main", "commit": "07d20fce48a5629686aefb0a7cd4b25e33947d50" },
"telescope-dap.nvim": { "branch": "master", "commit": "783366bd6c1e7fa0a5c59c07db37f49c805a28df" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, "telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
"vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" } "vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" },
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }
} }

12
lsp/drupal.lua Normal file
View File

@@ -0,0 +1,12 @@
return {
cmd = {'drupal-lsp'},
filetypes = {'php', 'module', 'inc', 'theme'},
root_dir = function(bufnr, on_dir)
local fname = vim.api.nvim_buf_get_name(bufnr)
local cwd = assert(vim.uv.cwd())
local root = vim.fs.root(fname, { 'composer.json', '.git' })
-- prefer cwd if root is a descendant
on_dir(root and vim.fs.relpath(cwd, root) and cwd)
end,
}

11
lsp/elixirls.lua Normal file
View File

@@ -0,0 +1,11 @@
return {
filetypes = { 'elixir', 'eelixir', 'heex', 'surface' },
root_dir = function(bufnr, on_dir)
local fname = vim.api.nvim_buf_get_name(bufnr)
local matches = vim.fs.find({ 'mix.exs' }, { upward = true, limit = 2, path = fname })
local child_or_root_path, maybe_umbrella_path = unpack(matches)
local root_dir = vim.fs.dirname(maybe_umbrella_path or child_or_root_path)
on_dir(root_dir)
end,
}

12
lsp/intelephense.lua Normal file
View File

@@ -0,0 +1,12 @@
return {
cmd = { 'intelephense', '--stdio' },
filetypes = { 'php' },
root_dir = function(bufnr, on_dir)
local fname = vim.api.nvim_buf_get_name(bufnr)
local cwd = assert(vim.uv.cwd())
local root = vim.fs.root(fname, { 'composer.json', '.git' })
-- prefer cwd if root is a descendant
on_dir(root and vim.fs.relpath(cwd, root) and cwd)
end,
}

4
lsp/lexical.lua Normal file
View File

@@ -0,0 +1,4 @@
return {
filetypes = { 'elixir', 'eelixir', 'heex', 'surface' },
root_markers = { 'mix.exs', '.git' },
}

96
lsp/rust_analyzer.lua Normal file
View File

@@ -0,0 +1,96 @@
local function reload_workspace(bufnr)
local clients = vim.lsp.get_clients { bufnr = bufnr, name = 'rust_analyzer' }
for _, client in ipairs(clients) do
vim.notify 'Reloading Cargo Workspace'
client.request('rust-analyzer/reloadWorkspace', nil, function(err)
if err then
error(tostring(err))
end
vim.notify 'Cargo workspace reloaded'
end, 0)
end
end
local function is_library(fname)
local user_home = vim.fs.normalize(vim.env.HOME)
local cargo_home = os.getenv 'CARGO_HOME' or user_home .. '/.cargo'
local registry = cargo_home .. '/registry/src'
local git_registry = cargo_home .. '/git/checkouts'
local rustup_home = os.getenv 'RUSTUP_HOME' or user_home .. '/.rustup'
local toolchains = rustup_home .. '/toolchains'
for _, item in ipairs { toolchains, registry, git_registry } do
if vim.fs.relpath(item, fname) then
local clients = vim.lsp.get_clients { name = 'rust_analyzer' }
return #clients > 0 and clients[#clients].config.root_dir or nil
end
end
end
return {
cmd = { 'rust-analyzer' },
filetypes = { 'rust' },
root_dir = function(bufnr, on_dir)
local fname = vim.api.nvim_buf_get_name(bufnr)
local reused_dir = is_library(fname)
if reused_dir then
on_dir(reused_dir)
return
end
local cargo_crate_dir = vim.fs.root(fname, { 'Cargo.toml' })
local cargo_workspace_root
if cargo_crate_dir == nil then
on_dir(
vim.fs.root(fname, { 'rust-project.json' })
or vim.fs.dirname(vim.fs.find('.git', { path = fname, upward = true })[1])
)
return
end
local cmd = {
'cargo',
'metadata',
'--no-deps',
'--format-version',
'1',
'--manifest-path',
cargo_crate_dir .. '/Cargo.toml',
}
vim.system(cmd, { text = true }, function(output)
if output.code == 0 then
if output.stdout then
local result = vim.json.decode(output.stdout)
if result['workspace_root'] then
cargo_workspace_root = vim.fs.normalize(result['workspace_root'])
end
end
on_dir(cargo_workspace_root or cargo_crate_dir)
else
vim.schedule(function()
vim.notify(('[rust_analyzer] cmd failed with code %d: %s\n%s'):format(output.code, cmd, output.stderr))
end)
end
end)
end,
capabilities = {
experimental = {
serverStatusNotification = true,
},
},
before_init = function(init_params, config)
-- See https://github.com/rust-lang/rust-analyzer/blob/eb5da56d839ae0a9e9f50774fa3eb78eb0964550/docs/dev/lsp-extensions.md?plain=1#L26
if config.settings and config.settings['rust-analyzer'] then
init_params.initializationOptions = config.settings['rust-analyzer']
end
end,
on_attach = function()
vim.api.nvim_buf_create_user_command(0, 'LspCargoReload', function()
reload_workspace(0)
end, { desc = 'Reload current cargo workspace' })
end,
}

37
lua/dan/completions.lua Normal file
View File

@@ -0,0 +1,37 @@
-- vim.opt.completeopt = { "menu", "menuone", "noselect" }
-- vim.opt.shortmess:append "c"
local lspkind = require "lspkind"
lspkind.init {}
local cmp = require "cmp"
cmp.setup {
sources = {
{ name = "nvim_lsp" },
{ name = "cody" },
{ name = "path" },
{ name = "buffer" },
},
mapping = {
["<C-n>"] = cmp.mapping.select_next_item { behavior = cmp.SelectBehavior.Insert },
["<C-p>"] = cmp.mapping.select_prev_item { behavior = cmp.SelectBehavior.Insert },
["<C-y>"] = cmp.mapping(
cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Insert,
select = true,
},
{ "i", "c" }
),
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
-- Enable luasnip to handle snippet expansion for nvim-cmp
snippet = {
expand = function(args)
vim.snippet.expand(args.body)
end,
},
}

View File

@@ -1,6 +1,42 @@
-- Print variables function
P = function(v)
print(vim.inspect(v))
return v
end
-- Custom keymaps
vim.g.mapleader = " " vim.g.mapleader = " "
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
vim.keymap.set("n", "<leader>gg", vim.cmd.LazyGit) vim.keymap.set("n", "<leader>gg", vim.cmd.LazyGit)
vim.keymap.set('n', '<leader><leader>r', function()
vim.cmd("w")
vim.cmd("source %")
end)
vim.keymap.set("n", "-", "<cmd>Oil<CR>")
vim.keymap.set("n", "<CR>", "<cmd>w!<CR>")
vim.keymap.set("n", "<leader>nh", "<cmd>noh<CR>")
vim.keymap.set("n", "<leader>sq", "<cmd>wq!<CR>")
vim.keymap.set("n", "<leader>lg", "<cmd>LazyGit<CR>")
-- Terminal in neovim --
vim.keymap.set('t', '<C-space>', "<C-\\><C-n><C-w>h",{silent = true})
vim.api.nvim_create_autocmd('TermOpen', {
group = vim.api.nvim_create_augroup('open-terminal', { clear = true }),
callback = function()
vim.opt.number = false
vim.opt.relativenumber = false
vim.api.nvim_input("i")
end,
})
local job_id = 0
vim.keymap.set("n", "<leader>tt", function()
vim.cmd.vnew()
vim.cmd.term()
vim.cmd.wincmd("J")
vim.api.nvim_win_set_height(0, 15)
job_id = vim.bo.channel
end)
-- General config
vim.cmd("set expandtab") vim.cmd("set expandtab")
vim.cmd("set tabstop=2") vim.cmd("set tabstop=2")
vim.cmd("set softtabstop=2") vim.cmd("set softtabstop=2")
@@ -8,12 +44,18 @@ vim.cmd("set shiftwidth=2")
vim.cmd("set syntax=on") vim.cmd("set syntax=on")
vim.cmd("set number") vim.cmd("set number")
vim.cmd("set nu") vim.cmd("set nu")
vim.cmd("set relativenumber") vim.cmd("set linebreak")
vim.cmd("set rnu") vim.cmd("set termguicolors")
vim.cmd("set number relativenumber") -- vim.cmd("set guicursor=n-v-c:block")
vim.cmd("set nu rnu")
vim.api.nvim_set_option("clipboard","unnamed") vim.api.nvim_set_option("clipboard","unnamed")
vim.api.nvim_create_user_command("DiagnosticToggle", function()
-- Markview
vim.keymap.set("n", "<leader>mv", function()
vim.cmd("Markview splitToggle")
end)
-- Command to turn off diagnostics, if crowding screen
vim.api.nvim_create_user_command("DiagnosticsToggle", function()
local config = vim.diagnostic.config local config = vim.diagnostic.config
local vt = config().virtual_text local vt = config().virtual_text
config { config {
@@ -22,3 +64,5 @@ vim.api.nvim_create_user_command("DiagnosticToggle", function()
signs = not vt, signs = not vt,
} }
end, { desc = "toggle diagnostic" }) end, { desc = "toggle diagnostic" })
vim.keymap.set("n", "<leader>dtog", "<cmd>DiagnosticsToggle<CR>")

View File

@@ -1,2 +1,3 @@
return { return {
-- Call local plugins here.
} }

BIN
lua/plugins/.DS_Store vendored

Binary file not shown.

9
lua/plugins/ahoy.lua Normal file
View File

@@ -0,0 +1,9 @@
return {
-- dir = "/Users/danchadwick/Projects/neovim/ahoy.nvim",
"calcu1on/ahoy.nvim",
config = function()
local ahoy = require('ahoy')
vim.keymap.set('n', '<leader>sf', function() ahoy.save_file() end)
end
}

View File

@@ -1,76 +0,0 @@
return {
"goolord/alpha-nvim",
event = "VimEnter", -- load plugin after all configuration is set
dependencies = {
"nvim-tree/nvim-web-devicons",
},
config = function()
local alpha = require("alpha")
local dashboard = require("alpha.themes.dashboard")
dashboard.section.header.val = {
[[ ]],
[[ ]],
[[ ]],
[[ ]],
[[ ]],
[[ ]],
[[ ]],
[[  ]],
[[ ████ ██████ █████ ██ ]],
[[ ███████████ █████  ]],
[[ █████████ ███████████████████ ███ ███████████ ]],
[[ █████████ ███ █████████████ █████ ██████████████ ]],
[[ █████████ ██████████ █████████ █████ █████ ████ █████ ]],
[[ ███████████ ███ ███ █████████ █████ █████ ████ █████ ]],
[[ ██████ █████████████████████ ████ █████ █████ ████ ██████ ]],
[[ ]],
[[ ]],
[[ ]],
}
_Gopts = {
position = "center",
hl = "Type",
-- wrap = "overflow";
}
-- Set menu
dashboard.section.buttons.val = {
-- dashboard.button("SPC j", "󰈚 Restore Session", ":SessionRestore<cr>"),
dashboard.button("e", " New file", ":ene <BAR> startinsert <CR>"),
dashboard.button("f", " Find file", ":cd $HOME/dotfiles/.config | Telescope find_files<CR>"),
dashboard.button("g", "󰱼 Find word", ":Telescope live_grep<CR>"),
dashboard.button("r", " Recent", ":Telescope oldfiles<CR>"),
dashboard.button("c", " Config", ":e $MYVIMRC <CR>"),
dashboard.button("m", "󱌣 Mason", ":Mason<CR>"),
dashboard.button("l", "󰒲 Lazy", ":Lazy<CR>"),
dashboard.button("u", "󰂖 Update plugins", "<cmd>lua require('lazy').sync()<CR>"),
dashboard.button("q", " Quit NVIM", ":qa<CR>"),
}
--local function footer()
--return "Mohammed Babiker Babai"
--end
--dashboard.section.footer.val = footer()
dashboard.opts.opts.noautocmd = true
alpha.setup(dashboard.opts)
require("alpha").setup(dashboard.opts)
vim.api.nvim_create_autocmd("User", {
pattern = "LazyVimStarted",
callback = function()
local stats = require("lazy").stats()
local count = (math.floor(stats.startuptime * 100) / 100)
dashboard.section.footer.val = {
"󱐌 " .. stats.count .. " plugins loaded in " .. count .. " ms"
}
pcall(vim.cmd.AlphaRedraw)
end,
})
end,
}

14
lua/plugins/barbar.lua Normal file
View File

@@ -0,0 +1,14 @@
return {
'romgrk/barbar.nvim',
dependencies = {
'lewis6991/gitsigns.nvim', -- OPTIONAL: for git status
'nvim-tree/nvim-web-devicons', -- OPTIONAL: for file icons
},
config = function()
local opts = { noremap = true, silent = true }
vim.keymap.set("n", "<C-k>", "<cmd>BufferNext<CR>")
vim.keymap.set("n", "<C-j>", "<cmd>BufferPrevious<CR>")
vim.keymap.set('n', '<C-p>', '<Cmd>BufferPin<CR>')
vim.keymap.set('n', '<C-q>', '<Cmd>BufferClose<CR>')
end
}

View File

@@ -1,55 +0,0 @@
return {
'catppuccin/nvim',
priority = 1000,
name = "catppuccin",
config = function()
require("catppuccin").setup({
flavour = "macchiato", -- latte, frappe, macchiato, mocha
background = { -- :h background
light = "latte",
dark = "mocha",
},
transparent_background = false, -- disables setting the background color.
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
dim_inactive = {
enabled = false, -- dims the background color of inactive window
shade = "dark",
percentage = 0.15, -- percentage of the shade to apply to the inactive window
},
no_italic = false, -- Force no italic
no_bold = false, -- Force no bold
no_underline = false, -- Force no underline
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
comments = { "italic" }, -- Change the style of comments
conditionals = { "italic" },
loops = {},
functions = {},
keywords = {},
strings = {},
variables = {},
numbers = {},
booleans = {},
properties = {},
types = {},
operators = {},
-- miscs = {}, -- Uncomment to turn off hard-coded styles
},
color_overrides = {},
custom_highlights = {},
default_integrations = true,
integrations = {
cmp = true,
gitsigns = true,
nvimtree = true,
treesitter = true,
notify = false,
mini = {
enabled = true,
indentscope_color = "",
},
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
},
})
end
}

10
lua/plugins/colorizer.lua Normal file
View File

@@ -0,0 +1,10 @@
return {
"norcalli/nvim-colorizer.lua",
config = function()
require("colorizer").setup({
'css',
'scss',
'javascript',
})
end,
}

View File

@@ -1,44 +1,18 @@
return { return {
{
"hrsh7th/cmp-nvim-lsp"
},
{
"L3MON4D3/LuaSnip",
dependencies = {
"saadparwaiz1/cmp_luasnip",
"rafamadriz/friendly-snippets"
}
},
{ {
"hrsh7th/nvim-cmp", "hrsh7th/nvim-cmp",
lazy = false,
priority = 100,
dependencies = {
"onsails/lspkind.nvim",
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-path",
"hrsh7th/cmp-buffer",
{ "L3MON4D3/LuaSnip", build = "make install_jsregexp" },
"saadparwaiz1/cmp_luasnip",
},
config = function() config = function()
local cmp = require("cmp") require "dan.completions"
require("luasnip.loaders.from_vscode").lazy_load()
cmp.setup({
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
['<C-b>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
}),
sources = cmp.config.sources({
-- { name = 'nvim_lsp' },
-- { name = 'vsnip' }, -- For vsnip users.
{ name = 'luasnip' }, -- For luasnip users.
}, {
{ name = 'buffer' },
})
})
end end
}, }
} }

View File

@@ -0,0 +1,5 @@
return {
"sainnhe/everforest",
priority = 1000,
name = "everforest",
}

9
lua/plugins/fugitive.lua Normal file
View File

@@ -0,0 +1,9 @@
return {
"tpope/vim-fugitive",
config = function()
vim.keymap.set("n", "<leader>gs", "<cmd>Git<CR>")
vim.keymap.set("n", "<leader>gvd", "<cmd>Gvdiff<CR>")
vim.keymap.set("n", "<leader>gc", "<cmd>Git commit<CR>")
vim.keymap.set("n", "<leader>gp", "<cmd>Git push<CR>")
end
}

View File

@@ -9,30 +9,9 @@ return {
-- REQUIRED -- REQUIRED
harpoon:setup() harpoon:setup()
-- REQUIRED -- REQUIRED
-- basic telescope configuration vim.keymap.set("n", "<leader>a", function() harpoon:list():add() end)
local conf = require("telescope.config").values
local function toggle_telescope(harpoon_files)
local file_paths = {}
for _, item in ipairs(harpoon_files.items) do
table.insert(file_paths, item.value)
end
require("telescope.pickers").new({}, {
prompt_title = "Harpoon",
finder = require("telescope.finders").new_table({
results = file_paths,
}),
previewer = conf.file_previewer({}),
sorter = conf.generic_sorter({}),
}):find()
end
vim.keymap.set("n", "<C-h>", function() toggle_telescope(harpoon:list()) end, { desc = "Open harpoon window" })
vim.keymap.set("n", "<leader>a", function() harpoon:list():append() end)
vim.keymap.set("n", "<leader>c", function() harpoon:list():clear() end) vim.keymap.set("n", "<leader>c", function() harpoon:list():clear() end)
vim.keymap.set("n", "<leader>r", function() harpoon:list():remove() end) vim.keymap.set("n", "<leader>r", function() harpoon:list():remove() end)
-- vim.keymap.set("n", "<C-h>", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end) vim.keymap.set("n", "<leader>h", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end)
-- Toggle previous & next buffers stored within Harpoon list
-- vim.keymap.set("n", "<C-S-P>", function() harpoon:list():prev() end)
-- vim.keymap.set("n", "<C-S-N>", function() harpoon:list():next() end)
end end
} }

3
lua/plugins/kanagawa.lua Normal file
View File

@@ -0,0 +1,3 @@
return {
"rebelot/kanagawa.nvim"
}

View File

@@ -3,34 +3,14 @@ return {
"williamboman/mason.nvim", "williamboman/mason.nvim",
config = function() config = function()
require("mason").setup() require("mason").setup()
end end,
}, },
{ {
"williamboman/mason-lspconfig.nvim", "williamboman/mason-lspconfig.nvim",
config = function() config = function()
require("mason-lspconfig").setup({ require("mason-lspconfig").setup({
ensure_installed = { "lua_ls", "phpactor", "rust_analyzer" } ensure_installed = { "lua_ls", "intelephense", "rust_analyzer", "elixirls" },
}) })
end end,
}, },
{
"neovim/nvim-lspconfig",
config = function()
local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require("lspconfig")
lspconfig.lua_ls.setup({
capabilities = capabilities
})
lspconfig.phpactor.setup({
capabilities = capabilities
})
lspconfig.rust_analyzer.setup({
capabilities = capabilities
})
vim.keymap.set("n", 'K', vim.lsp.buf.hover, {})
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, {})
vim.keymap.set({ 'n' }, '<leader>ca', vim.lsp.buf.code_action, {})
end
}
} }

View File

@@ -4,9 +4,9 @@ return {
'nvim-tree/nvim-web-devicons' 'nvim-tree/nvim-web-devicons'
}, },
config = function() config = function()
require('lualine'). setup({ require('lualine').setup({
options= { options= {
theme = 'dracula' theme = 'everforest'
} }
}) })
end end

6
lua/plugins/markview.lua Normal file
View File

@@ -0,0 +1,6 @@
-- For `plugins/markview.lua` users.
return {
"OXY2DEV/markview.nvim",
lazy = false,
priority = 49,
};

View File

@@ -1,13 +0,0 @@
return {
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
},
config = function()
vim.keymap.set("n", "<C-n>", ':Neotree filesystem reveal left<CR>', {})
vim.keymap.set("n", "<C-e>", ':Neotree position=current<CR>', {})
end
}

5
lua/plugins/nightfox.lua Normal file
View File

@@ -0,0 +1,5 @@
return {
"EdenEast/nightfox.nvim",
priority = 1000,
name = "nightfox",
}

20
lua/plugins/oil.lua Normal file
View File

@@ -0,0 +1,20 @@
return {
{
'stevearc/oil.nvim',
---@module 'oil'
---@type oil.SetupOpts
opts = {
view_options = {
show_hidden = true,
is_always_hidden = function(name, _)
return name == "node_modules" or name == ".git"
end,
},
},
-- Optional dependencies
dependencies = { { "echasnovski/mini.icons", opts = {} } },
-- dependencies = { "nvim-tree/nvim-web-devicons" }, -- use if you prefer nvim-web-devicons
-- Lazy loading is not recommended because it is very tricky to make it work correctly in all situations.
lazy = false,
}
}

4
lua/plugins/rosepine.lua Normal file
View File

@@ -0,0 +1,4 @@
return {
"rose-pine/neovim",
name = "rose-pine",
}

70
lua/plugins/snacks.lua Normal file
View File

@@ -0,0 +1,70 @@
return {
"folke/snacks.nvim",
---@type snacks.Config
opts = {
picker = {
ignored = true,
hidden = true,
exclude = {
".git",
".DS_Store",
}
},
explorer = {},
indent = {},
animate = {},
lazygit = {},
scroll = {},
},
keys = {
-- Top Pickers & Explorer
{ "<leader><space>", function() Snacks.picker.smart() end, desc = "Smart Find Files" },
{ "<leader>,", function() Snacks.picker.buffers() end, desc = "Buffers" },
{ "<leader>/", function() Snacks.picker.grep() end, desc = "Grep" },
{ "<leader>:", function() Snacks.picker.command_history() end, desc = "Command History" },
{ "<leader>n", function() Snacks.picker.notifications() end, desc = "Notification History" },
{ "<leader>e", function() Snacks.explorer() end, desc = "File Explorer" },
-- find
{ "<leader>fb", function() Snacks.picker.buffers() end, desc = "Buffers" },
{ "<leader>fc", function() Snacks.picker.files({ cwd = vim.fn.stdpath("config") }) end, desc = "Find Config File" },
{ "<leader>ff", function() Snacks.picker.files() end, desc = "Find Files" },
{ "<leader>fg", function() Snacks.picker.git_files() end, desc = "Find Git Files" },
{ "<leader>fp", function() Snacks.picker.projects() end, desc = "Projects" },
{ "<leader>fr", function() Snacks.picker.recent() end, desc = "Recent" },
-- Grep
{ "<leader>sb", function() Snacks.picker.lines() end, desc = "Buffer Lines" },
{ "<leader>sB", function() Snacks.picker.grep_buffers() end, desc = "Grep Open Buffers" },
{ "<leader>sg", function() Snacks.picker.grep() end, desc = "Grep" },
{ "<leader>sw", function() Snacks.picker.grep_word() end, desc = "Visual selection or word", mode = { "n", "x" } },
-- search
{ '<leader>s"', function() Snacks.picker.registers() end, desc = "Registers" },
{ '<leader>s/', function() Snacks.picker.search_history() end, desc = "Search History" },
{ "<leader>sa", function() Snacks.picker.autocmds() end, desc = "Autocmds" },
{ "<leader>sb", function() Snacks.picker.lines() end, desc = "Buffer Lines" },
{ "<leader>sc", function() Snacks.picker.command_history() end, desc = "Command History" },
{ "<leader>sC", function() Snacks.picker.commands() end, desc = "Commands" },
{ "<leader>sd", function() Snacks.picker.diagnostics() end, desc = "Diagnostics" },
{ "<leader>sD", function() Snacks.picker.diagnostics_buffer() end, desc = "Buffer Diagnostics" },
{ "<leader>sh", function() Snacks.picker.help() end, desc = "Help Pages" },
{ "<leader>sH", function() Snacks.picker.highlights() end, desc = "Highlights" },
{ "<leader>si", function() Snacks.picker.icons() end, desc = "Icons" },
{ "<leader>sj", function() Snacks.picker.jumps() end, desc = "Jumps" },
{ "<leader>sk", function() Snacks.picker.keymaps() end, desc = "Keymaps" },
{ "<leader>sl", function() Snacks.picker.loclist() end, desc = "Location List" },
{ "<leader>sm", function() Snacks.picker.marks() end, desc = "Marks" },
{ "<leader>sM", function() Snacks.picker.man() end, desc = "Man Pages" },
{ "<leader>sp", function() Snacks.picker.lazy() end, desc = "Search for Plugin Spec" },
{ "<leader>sq", function() Snacks.picker.qflist() end, desc = "Quickfix List" },
{ "<leader>sR", function() Snacks.picker.resume() end, desc = "Resume" },
{ "<leader>su", function() Snacks.picker.undo() end, desc = "Undo History" },
{ "<leader>uC", function() Snacks.picker.colorschemes() end, desc = "Colorschemes" },
-- LSP
{ "gd", function() Snacks.picker.lsp_definitions() end, desc = "Goto Definition" },
{ "gD", function() Snacks.picker.lsp_declarations() end, desc = "Goto Declaration" },
{ "gr", function() Snacks.picker.lsp_references() end, nowait = true, desc = "References" },
{ "gI", function() Snacks.picker.lsp_implementations() end, desc = "Goto Implementation" },
{ "gy", function() Snacks.picker.lsp_type_definitions() end, desc = "Goto T[y]pe Definition" },
{ "<leader>ss", function() Snacks.picker.lsp_symbols() end, desc = "LSP Symbols" },
{ "<leader>sS", function() Snacks.picker.lsp_workspace_symbols() end, desc = "LSP Workspace Symbols" },
},
}

View File

@@ -0,0 +1,6 @@
return {
"supermaven-inc/supermaven-nvim",
config = function()
require("supermaven-nvim").setup({})
end,
}

View File

@@ -7,10 +7,10 @@ return {
}, },
config = function() config = function()
local builtin = require('telescope.builtin') local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', builtin.find_files, {}) -- vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {}) -- vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>fb', builtin.buffers, {}) -- vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {}) -- vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
end end
}, },
{ {

View File

@@ -4,11 +4,15 @@ return {
config = function() config = function()
local configs = require("nvim-treesitter.configs") local configs = require("nvim-treesitter.configs")
configs.setup({ configs.setup({
ensure_installed = { "php", "lua", "vim", "javascript", "html", "yaml", "twig" }, ensure_installed = { "php", "lua", "vim", "javascript", "html", "yaml", "twig", "vimdoc", "markdown", "markdown_inline" },
sync_install = false, sync_install = false,
highlight = { enable = true }, highlight = { enable = true },
indent = { enable = true }, indent = { enable = true },
}) })
end end,
dependencies = {
"OXY2DEV/markview.nvim"
},
lazy = false
} }