Compare commits

2 Commits
11 changed files with 637 additions and 586 deletions
@@ -0,0 +1,29 @@
function! neoformat#formatters#powershell#enabled() abort
return ['pwshfmt']
endfunction
function! neoformat#formatters#powershell#pwshfmt() abort
"if has('win32') || has('win64')
" let l:args = [
" \ '-NoProfile',
" \ '-Command',
" \ 'Import-Module PSScriptAnalyzer; Invoke-Formatter -ScriptDefinition (\$input | Out-String)',
" \ ]
"else
" let l:args = [
" \ '-NoProfile',
" \ '-Command',
" \ '"Import-Module (Resolve-Path \"/opt/powershell-editor-services/PSScriptAnalyzer/*/PSScriptAnalyzer.psd1\" | Select-Object -ExpandProperty Path); Invoke-Formatter -ScriptDefinition (\$input | Out-String)"'
" \ ]
"endif
"
return {
\ 'exe': 'pwsh',
\ 'args': [
\ '-NoProfile',
\ '-Command',
\ 'Import-Module PSScriptAnalyzer; Invoke-Formatter -ScriptDefinition ($input | Out-String)'
\ ],
\ 'stdin': 1,
\ }
endfunction
+55 -55
View File
@@ -27,82 +27,82 @@ local function pick(light, dark)
end end
local c = { local c = {
bg = "#141219", bg = "#121318",
bg_alt = "#1C1B21", bg_alt = "#1A1B20",
bg_float = "#201F25", bg_float = "#1E1F25",
bg_popup = "#2B2930", bg_popup = "#292A2F",
bg_cursorline = pick("#2B2930", "#36343B"), bg_cursorline = pick("#292A2F", "#33343A"),
bg_fold = "#1C1B21", bg_fold = "#1A1B20",
bg_visual = "#4A4169", bg_visual = "#3E4867",
bg_search = pick("#882F73", "#4A4169"), bg_search = pick("#C177BE", "#3E4867"),
bg_incsearch = "#5840A7", bg_incsearch = "#718EDF",
bg_selection = "#5840A7", bg_selection = "#718EDF",
bg_statusline = pick("#2B2930", "#201F25"), bg_statusline = pick("#292A2F", "#1E1F25"),
bg_statusline_nc = "#1C1B21", bg_statusline_nc = "#1A1B20",
bg_tabline = "#1C1B21", bg_tabline = "#1A1B20",
bg_tabsel = "#2B2930", bg_tabsel = "#292A2F",
fg = "#E6E0EA", fg = "#E3E2E9",
fg_muted = "#CAC4D4", fg_muted = "#C4C6D3",
fg_subtle = "#938E9D", fg_subtle = "#8E909C",
fg_comment = pick("#938E9D", "#484552"), fg_comment = pick("#8E909C", "#444651"),
fg_strong = pick("#1A1B1F", "#F2F2F7"), fg_strong = pick("#1A1B1F", "#F2F2F7"),
fg_on_soft = pick("#17181C", "#F4F4F8"), fg_on_soft = pick("#17181C", "#F4F4F8"),
border = "#484552", border = "#444651",
accent = "#CCBDFF", accent = "#B3C5FF",
accent_container = "#5840A7", accent_container = "#718EDF",
accent_fg = "#CCBDFF", accent_fg = "#001748",
accent_solid_fg = "#351783", accent_solid_fg = "#002B75",
secondary = "#CBC0F0", secondary = "#BBC5EA",
secondary_container = "#4A4169", secondary_container = "#3E4867",
secondary_fg = "#BAAFDD", secondary_fg = "#ADB7DB",
secondary_solid_fg = "#332B51", secondary_solid_fg = "#252F4D",
tertiary = "#FFADE3", tertiary = "#FCACF7",
tertiary_container = "#882F73", tertiary_container = "#C177BE",
tertiary_fg = "#FFACE3", tertiary_fg = "#360039",
tertiary_solid_fg = "#5E044E", tertiary_solid_fg = "#531356",
error = "#FFB4AB", error = "#FFB4AB",
error_container = "#93000A", error_container = "#93000A",
error_fg = "#FFDAD6", error_fg = "#FFDAD6",
error_solid_fg = "#690005", error_solid_fg = "#690005",
ok = "#FFBAC2", ok = "#44DEF5",
warn = "#FFDCF2", warn = "#FFDCF2",
info = "#9FA8D8", info = "#90ACD5",
hint = "#9DCEFF", hint = "#9BCEFE",
add = "#FFBAC2", add = "#44DEF5",
change = "#9FA8D8", change = "#90ACD5",
delete = "#BF68FF", delete = "#947DFF",
cursor_fg = "#351783", cursor_fg = "#002B75",
cursor_bg = "#CCBDFF", cursor_bg = "#B3C5FF",
match_bg = "#882F73", match_bg = "#C177BE",
match_fg = "#FFACE3", match_fg = "#360039",
todo_bg = "#882F73", todo_bg = "#C177BE",
todo_fg = "#FFACE3", todo_fg = "#360039",
-- Syntax accents must stay dynamic. These come from your generated palette -- Syntax accents must stay dynamic. These come from your generated palette
-- instead of fixed hex values, so foregrounds change with the wallpaper too. -- instead of fixed hex values, so foregrounds change with the wallpaper too.
code_keyword = "#BE9CE6", code_keyword = "#A6A3EE",
code_func = "#9DCEFF", code_func = "#9BCEFE",
code_string = "#FFBAC2", code_string = "#44DEF5",
code_number = "#FFDCF2", code_number = "#FFDCF2",
code_const = "#BF68FF", code_const = "#947DFF",
code_type = "#CCBDFF", code_type = "#B3C5FF",
code_special = "#FFADE3", code_special = "#FCACF7",
code_preproc = "#CBC0F0", code_preproc = "#BBC5EA",
code_builtin = "#CCBDFF", code_builtin = "#B3C5FF",
code_param = "#FFDCF2", code_param = "#FFDCF2",
code_field = "#CBC0F0", code_field = "#BBC5EA",
code_namespace = "#FFADE3", code_namespace = "#FCACF7",
code_operator = pick("#CCBDFF", "#CBC0F0"), code_operator = pick("#B3C5FF", "#BBC5EA"),
line_current = pick("#232428", "#E7E7EC"), line_current = pick("#232428", "#E7E7EC"),
ref_bg = pick("#36343B", "#2B2930"), ref_bg = pick("#33343A", "#292A2F"),
} }
-- Core UI ------------------------------------------------------------------- -- Core UI -------------------------------------------------------------------
-12
View File
@@ -1,12 +0,0 @@
local gen_hook = MiniSplitjoin.gen_hook
local curly = { brackets = { "%b{}" }, separator = ";" }
local curly_semi = { brackets = { "%b{}" }, separator = ";" }
local add_semicolon_curly = gen_hook.add_trailing_separator(curly)
local remove_semicolon_curly = gen_hook.del_trailing_separator(curly)
local pad_curly = gen_hook.pad_brackets(curly_semi)
vim.b.minisplitjoin_config = {
split = { hooks_post = { remove_semicolon_curly } },
join = { hooks_pre = { add_semicolon_curly }, hooks_post = { pad_curly } },
}
+26 -28
View File
@@ -1,42 +1,40 @@
local autocmd = vim.api.nvim_create_autocmd local autocmd = vim.api.nvim_create_autocmd
autocmd("LspAttach", { autocmd("LspAttach", {
callback = function(args) callback = function(args)
local client = vim.lsp.get_client_by_id(args.data.client_id) local client = vim.lsp.get_client_by_id(args.data.client_id)
if client then if client then
vim.lsp.document_color.enable(false, { bufnr = args.buf }) vim.lsp.document_color.enable(false, { bufnr = args.buf })
end end
end, end,
}) })
autocmd("VimLeave", { autocmd("VimLeave", {
command = "set guicursor=a:ver25-Cursor", command = "set guicursor=a:ver25-Cursor",
}) })
autocmd("BufWritePre", { autocmd("BufWritePre", {
callback = function() pattern = "*",
local ok = pcall(function() callback = function(args)
vim.cmd "undojoin" require("conform").format({ bufnr = args.buf })
end) end,
vim.cmd "Neoformat"
end,
}) })
-- fWindows -- fWindows
autocmd("VimLeavePre", { autocmd("VimLeavePre", {
group = vim.api.nvim_create_augroup("fuck_shada_temp", { clear = true }), group = vim.api.nvim_create_augroup("fuck_shada_temp", { clear = true }),
pattern = { "*" }, pattern = { "*" },
callback = function() callback = function()
local status = 0 local status = 0
for _, f in ipairs(vim.fn.globpath(vim.fn.stdpath "data" .. "/shada", "*tmp*", false, true)) do for _, f in ipairs(vim.fn.globpath(vim.fn.stdpath "data" .. "/shada", "*tmp*", false, true)) do
if vim.tbl_isempty(vim.fn.readfile(f)) then if vim.tbl_isempty(vim.fn.readfile(f)) then
status = status + vim.fn.delete(f) status = status + vim.fn.delete(f)
end end
end end
if status ~= 0 then if status ~= 0 then
vim.notify("Could not delete empty temporary ShaDa files.", vim.log.levels.ERROR) vim.notify("Could not delete empty temporary ShaDa files.", vim.log.levels.ERROR)
vim.fn.getchar() vim.fn.getchar()
end end
end, end,
desc = "Delete empty temp ShaDa files", desc = "Delete empty temp ShaDa files",
}) })
+18
View File
@@ -0,0 +1,18 @@
require("conform").setup {
formatters_by_ft = {
lua = { "stylua" },
python = { "ruff" },
rust = { "rustfmt" },
javascript = { "prettier" },
typescript = { "prettier" },
qml = { "qmlformat" },
go = { "gofmt" },
sh = { "shfmt" },
bash = { "shfmt" },
zsh = { "shfmt" },
ps1 = {},
},
format_on_save = {
lsp_fallback = true,
},
}
+265 -234
View File
@@ -3,282 +3,313 @@ local cmp_lsp = require "cmp_nvim_lsp"
local cmp_kinds = require("assets.icons").icons.kinds local cmp_kinds = require("assets.icons").icons.kinds
local function flatten_to_array(t) local function flatten_to_array(t)
local res = {} local res = {}
local function _flatten(tbl) local function _flatten(tbl)
for _, v in ipairs(tbl) do for _, v in ipairs(tbl) do
if type(v) == "table" then if type(v) == "table" then
_flatten(v) _flatten(v)
else else
table.insert(res, v) table.insert(res, v)
end end
end
end end
end _flatten(t)
_flatten(t) return res
return res
end end
local capabilities = local capabilities =
vim.tbl_deep_extend("force", {}, vim.lsp.protocol.make_client_capabilities(), cmp_lsp.default_capabilities()) vim.tbl_deep_extend("force", {}, vim.lsp.protocol.make_client_capabilities(), cmp_lsp.default_capabilities())
require("fidget").setup {} require("fidget").setup {}
require("mason").setup()
require("mason-lspconfig").setup { require("mason-lspconfig").setup {
automatic_enable = true, automatic_enable = false,
ensure_installed = { ensure_installed = {
"lua_ls", "lua_ls",
"qmlls", "qmlls",
"rust_analyzer", "rust_analyzer",
"gopls", },
}, handlers = {
handlers = { function(server_name) -- default handler (optional)
function(server_name) -- default handler (optional) require("lspconfig")[server_name].setup {
require("lspconfig")[server_name].setup { capabilities = capabilities,
capabilities = capabilities, }
} end,
end,
["tailwindcss"] = function() ["tailwindcss"] = function()
local lspconfig = require "lspconfig" local lspconfig = require "lspconfig"
lspconfig.tailwindcss.setup { lspconfig.tailwindcss.setup {
capabilities = capabilities, capabilities = capabilities,
} }
end, end,
["css-lsp"] = function() ["css-lsp"] = function()
local lspconfig = require "lspconfig" local lspconfig = require "lspconfig"
lspconfig.cssls.setup { lspconfig.cssls.setup {
capabilities = capabilities, capabilities = capabilities,
} }
end, end,
zls = function() ["rust_analyzer"] = function()
local lspconfig = require "lspconfig" local lspconfig = require "lspconfig"
lspconfig.zls.setup { lspconfig.rust_analyzer.setup {
capabilities = capabilities, capabilities = capabilities,
root_dir = lspconfig.util.root_pattern(".git", "build.zig", "zls.json"), settings = {
settings = { ["rust-analyzer"] = {
zls = { cargo = { allFeatures = true },
enable_inlay_hints = true, checkOnSave = { command = "clippy" },
enable_snippets = true, },
warn_style = true, },
}, }
}, end,
}
vim.g.zig_fmt_parse_errors = 0 zls = function()
vim.g.zig_fmt_autosave = 0 local lspconfig = require "lspconfig"
end, lspconfig.zls.setup {
["lua_ls"] = function() capabilities = capabilities,
local lspconfig = require "lspconfig" root_dir = lspconfig.util.root_pattern(".git", "build.zig", "zls.json"),
lspconfig.lua_ls.setup { settings = {
capabilities = capabilities, zls = {
settings = { enable_inlay_hints = true,
Lua = { enable_snippets = true,
runtime = { version = "Lua 5.1" }, warn_style = true,
diagnostics = { },
globals = { },
"bit", }
"vim", vim.g.zig_fmt_parse_errors = 0
"it", vim.g.zig_fmt_autosave = 0
"describe", end,
"before_each",
"after_each", ["lua_ls"] = function()
}, local lspconfig = require "lspconfig"
}, lspconfig.lua_ls.setup {
}, capabilities = capabilities,
}, settings = {
} Lua = {
end, runtime = { version = "Lua 5.1" },
}, diagnostics = {
globals = {
"bit",
"vim",
"it",
"describe",
"before_each",
"after_each",
},
},
},
},
}
end,
},
} }
cmp.setup { cmp.setup {
preselect = "None", preselect = "None",
formatting = { formatting = {
fields = { "kind", "abbr" }, fields = { "kind", "abbr" },
format = function(entry, vim_item) format = function(entry, vim_item)
vim_item.kind = cmp_kinds[vim_item.kind] or "" vim_item.kind = cmp_kinds[vim_item.kind] or ""
if entry.completion_item.detail then if entry.completion_item.detail then
vim_item.menu = entry.completion_item.detail vim_item.menu = entry.completion_item.detail
end end
return vim_item return vim_item
end, end,
}, },
completion = { completeopt = "menu,menuone" }, completion = { completeopt = "menu,menuone" },
snippet = { snippet = {
expand = function(args) expand = function(args)
require("luasnip").lsp_expand(args.body) require("luasnip").lsp_expand(args.body)
end, end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
view = {
entries = "custom",
},
mapping = {
["<C-p>"] = cmp.mapping.select_prev_item(),
["<C-n>"] = cmp.mapping.select_next_item(),
["<C-d>"] = cmp.mapping.scroll_docs(-4),
["<C-f>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping.close(),
["<CR>"] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Insert,
select = true,
}, },
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif require("luasnip").expand_or_jumpable() then
require("luasnip").expand_or_jump()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif require("luasnip").jumpable(-1) then
require("luasnip").jump(-1)
else
fallback()
end
end, { "i", "s" }),
},
sources = cmp.config.sources { window = {
{ name = "path" }, completion = cmp.config.window.bordered(),
{ name = "nvim_lsp" }, documentation = cmp.config.window.bordered(),
{ name = "luasnip" }, },
{ name = "buffer" },
{ name = "nvim_lua" }, view = {
{ name = "copilot" }, entries = "custom",
}, },
mapping = {
["<C-p>"] = cmp.mapping.select_prev_item(),
["<C-n>"] = cmp.mapping.select_next_item(),
["<C-d>"] = cmp.mapping.scroll_docs(-4),
["<C-f>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping.close(),
["<CR>"] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Insert,
select = true,
},
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif require("luasnip").expand_or_jumpable() then
require("luasnip").expand_or_jump()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif require("luasnip").jumpable(-1) then
require("luasnip").jump(-1)
else
fallback()
end
end, { "i", "s" }),
},
sources = cmp.config.sources {
{ name = "path" },
{ name = "nvim_lsp" },
{ name = "luasnip" },
{ name = "buffer" },
{ name = "nvim_lua" },
{ name = "copilot" },
},
} }
vim.diagnostic.config { vim.diagnostic.config {
virtual_text = false, virtual_text = false,
virtual_lines = false, virtual_lines = false,
signs = true, signs = true,
underline = true, underline = true,
float = { float = {
focusable = false, focusable = false,
style = "minimal", style = "minimal",
border = "rounded", border = "rounded",
source = true, source = true,
header = "", header = "",
prefix = "", prefix = "",
}, },
} }
local lspconfig = vim.lsp.config local lspconfig = vim.lsp.config
lspconfig("texlab", { lspconfig("texlab", {
cmd = { "texlab" }, cmd = { "texlab" },
filetypes = { "tex", "bib", "plaintex" }, filetypes = { "tex", "bib", "plaintex" },
root_markers = { root_markers = {
".git", ".git",
".latexmkrc", ".latexmkrc",
"latexmkrc", "latexmkrc",
".texlabroot", ".texlabroot",
"texlabroot", "texlabroot",
"Tectonic.toml", "Tectonic.toml",
}, },
settings = { settings = {
texlab = { texlab = {
rootDirectory = nil, rootDirectory = nil,
build = { build = {
executable = "latexmk", executable = "latexmk",
args = { args = {
"-pdf", "-pdf",
"-interaction=nonstopmode", "-interaction=nonstopmode",
"-synctex=1", "-synctex=1",
"%f", "%f",
}, },
onSave = true, onSave = true,
forwardSearchAfter = true, forwardSearchAfter = true,
}, },
forwardSearch = { forwardSearch = {
executable = "zathura", executable = "zathura",
args = { args = {
"--synctex-editor-command", "--synctex-editor-command",
[[ nvim-texlabconfig -file '%%%{input}' -line %%%{line} -server ]] .. vim.v.servername, [[ nvim-texlabconfig -file '%%%{input}' -line %%%{line} -server ]] .. vim.v.servername,
"--synctex-forward", "--synctex-forward",
"%l:1:%f", "%l:1:%f",
"%p", "%p",
}, },
}, },
chktex = { chktex = {
onEdit = false, onEdit = false,
onOpenAndSave = true, onOpenAndSave = true,
}, },
diagnosticsDelay = 300, diagnosticsDelay = 300,
latexFormatter = "latexindent", latexFormatter = "latexindent",
latexindent = { latexindent = {
["local"] = nil, ["local"] = nil,
modifyLineBreaks = false, modifyLineBreaks = false,
}, },
bibtexFormatter = "texlab", bibtexFormatter = "texlab",
formatterLineLength = 80, formatterLineLength = 80,
},
}, },
},
}) })
lspconfig("qmlls", { lspconfig("qmlls", {
cmd = { "qmlls6", "qmlls" }, cmd = { "qmlls6", "qmlls" },
filetypes = { "qml", "qmljs" }, filetypes = { "qml", "qmljs" },
root_markers = { ".git" }, root_markers = { ".git" },
}) })
lspconfig("jsonls", { lspconfig("jsonls", {
settings = { settings = {
json = { json = {
schemas = require("schemastore").json.schemas(), schemas = require("schemastore").json.schemas(),
validate = { enable = true }, validate = { enable = true },
},
},
})
lspconfig("powershell_es", {
settings = {
powershell = {
codeFormatting = {
preset = "Custom",
openBraceOnSameLine = true,
newLineAfterOpenBrace = false,
newLineAfterCloseBrace = true,
whitespaceBeforeOpenBrace = true,
whitespaceBeforeOpenParen = true,
whitespaceAroundOperator = true,
whitespaceAfterSeparator = true,
ignoreOneLineBlock = true,
pipelineIndentationStyle = "NoIndentation",
},
},
}, },
},
}) })
lspconfig("yamlls", { lspconfig("yamlls", {
settings = { settings = {
yaml = { yaml = {
schemaStore = { schemaStore = {
enable = false, enable = false,
url = "", url = "",
}, },
schemas = require("schemastore").yaml.schemas(), schemas = require("schemastore").yaml.schemas(),
},
}, },
},
}) })
local lspenable = vim.lsp.enable local lspenable = vim.lsp.enable
local servers = { local servers = {
"html", "html",
"bashls", "bashls",
"pyright", "pyright",
"ts_ls", "ts_ls",
"texlab", "texlab",
"sourcekit", "sourcekit",
"qmlls", "qmlls",
"tailwindcss", "tailwindcss",
"systemd-lsp", "systemd-lsp",
require("mason-lspconfig").get_installed_servers(), require("mason-lspconfig").get_installed_servers(),
} }
local flat_servers = flatten_to_array(servers) local flat_servers = flatten_to_array(servers)
for _, server in ipairs(flat_servers) do for _, server in ipairs(flat_servers) do
lspconfig(server, { lspconfig(server, {
on_attach = function(client, bufnr) on_attach = function(client)
if client.name == "typos_lsp" or client.name == "copilot" then if client.name == "typos_lsp" or client.name == "copilot" then
return return
end end
end, end,
capabilities = capabilities, capabilities = capabilities,
}) })
lspenable(server) lspenable(server)
end end
-20
View File
@@ -1,20 +0,0 @@
local M = {}
M.plugin = {
"sbdchd/neoformat",
config = function()
vim.g.neoformat_enabled_lua = { "luaformatter" }
vim.g.neoformat_enabled_python = { "black" }
vim.g.neoformat_enabled_javascript = { "prettier" }
vim.g.neoformat_enabled_typescript = { "prettier" }
vim.g.neoformat_enabled_qml = { "qmlformat" }
vim.g.neoformat_enabled_go = { "gofmt" }
vim.g.neoformat_enabled_sh = { "shfmt" }
vim.g.neoformat_enabled_bash = { "shfmt" }
vim.g.neoformat_enabled_zsh = { "shfmt" }
vim.g.neoformat_enabled_rust = { "rustfmt" }
vim.g.neoformat_enabled_ps1 = { "pwshfmt" }
end,
}
return M
+10 -10
View File
@@ -6,19 +6,19 @@ local function pick(light, dark)
end end
local c = { local c = {
bg = "#141219", bg = "#121318",
bg_alt = "#1C1B21", bg_alt = "#1A1B20",
bg_mid = pick("#2B2930", "#201F25"), bg_mid = pick("#292A2F", "#1E1F25"),
fg = "#E6E0EA", fg = "#E3E2E9",
fg_muted = "#CAC4D4", fg_muted = "#C4C6D3",
fg_strong = pick("#15161A", "#F4F4F8"), fg_strong = pick("#15161A", "#F4F4F8"),
normal = "#5840A7", normal = "#718EDF",
insert = "#4A4169", insert = "#3E4867",
visual = "#882F73", visual = "#C177BE",
replace = "#93000A", replace = "#93000A",
command = pick("#FFDCF2", "#9FA8D8"), command = pick("#FFDCF2", "#90ACD5"),
inactive = "#1C1B21", inactive = "#1A1B20",
normal_fg = pick("#15161A", "#F4F4F8"), normal_fg = pick("#15161A", "#F4F4F8"),
insert_fg = pick("#15161A", "#F4F4F8"), insert_fg = pick("#15161A", "#F4F4F8"),
+12 -1
View File
@@ -11,13 +11,24 @@ map("n", "<C-a>", "ggVG", { noremap = true, silent = true })
map("n", "<C-j>", "<C-d>zz") map("n", "<C-j>", "<C-d>zz")
map("n", "<C-k>", "<C-u>zz") map("n", "<C-k>", "<C-u>zz")
map("n", "<A-->", ":bdelete<CR>") map("n", "<A-->", ":bdelete<CR>")
map("", "=", function()
require("conform").format({ async = true, lsp_fallback = true }, function(err)
if not err then
local mode = vim.api.nvim_get_mode().mode
if vim.startswith(string.lower(mode), "v") then
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
end
end
end)
end, { desc = "Format code" })
-- map("n", "<SA-->", ":BufferRestore<CR>") -- map("n", "<SA-->", ":BufferRestore<CR>")
map("n", "<leader>e", function() map("n", "<leader>e", function()
Snacks.explorer() Snacks.explorer()
end) end)
map("n", "<leader>g", require("telescope.builtin").live_grep, { desc = "Telescope grep" }) map("n", "<leader>g", require("telescope.builtin").live_grep, { desc = "Telescope grep" })
map("n", "<leader>f", require("telescope.builtin").find_files, { desc = "Telescope find files" }) map("n", "<leader>f", require("telescope.builtin").find_files, { desc = "Telescope find files" })
map('n', '<leader>u', require('undotree').toggle, { noremap = true, silent = true }) map("n", "<leader>u", require("undotree").toggle, { noremap = true, silent = true })
-- Copilot Chat buffer -- Copilot Chat buffer
map("n", "<A-c>", vim.cmd.CopilotChatToggle) map("n", "<A-c>", vim.cmd.CopilotChatToggle)
+2 -5
View File
@@ -15,12 +15,9 @@ return {
-- lazy = false, -- lazy = false,
}, },
{ {
"sbdchd/neoformat", "stevearc/conform.nvim",
config = function() config = function()
require "config.format.neoformat" require "config.format.conform"
end, end,
-- init = function()
-- vim.cmd("source" .. vim.fn.stdpath "config" .. "/lua/config/test.vim")
-- end,
}, },
} }
+220 -221
View File
@@ -1,228 +1,227 @@
return { return {
{ {
require "config.snacks", require "config.snacks",
},
{
"nvim-treesitter/nvim-treesitter",
lazy = false,
build = ":TSUpdate",
branch = "main",
config = function()
require "config.modules.treesitter"
end,
},
{
"sainnhe/edge",
lazy = false,
priority = 1000,
config = function()
vim.g.edge_enable_italic = 1
vim.g.edge_style = "default"
vim.g.edge_menu_selection_background = "purple"
end,
},
{
"rmagatti/auto-session",
config = function()
require "config.modules.autosession"
end,
},
{
"lambdalisue/vim-suda",
init = function()
vim.g.suda_smart_edit = 1
end,
},
{
"nvim-tree/nvim-web-devicons",
},
{
"akinsho/bufferline.nvim",
event = "VeryLazy",
config = function()
require "config.other.barbar"
end,
},
{
"mawkler/modicator.nvim",
config = function()
require "config.gui.modicator"
end,
},
{
"jiaoshijie/undotree",
config = function()
require "config.modules.undotree"
end,
},
{
"hiphish/rainbow-delimiters.nvim",
enabled = true,
},
{
"windwp/nvim-autopairs",
event = "InsertEnter",
config = function()
require "config.other.autopairs"
end,
},
{
"tpope/vim-fugitive",
},
{
"rcarriga/nvim-notify",
config = function()
require "config.other.notify"
end,
},
{
"zbirenbaum/copilot.lua",
cmd = "Copilot",
event = "InsertEnter",
config = function()
require "config.ai.copilot"
end,
},
{
"CopilotC-Nvim/CopilotChat.nvim",
dependencies = {
{ "zbirenbaum/copilot.lua" },
{ "nvim-lua/plenary.nvim", branch = "master" },
}, },
build = "make tiktoken", {
config = function() "nvim-treesitter/nvim-treesitter",
require "config.ai.copilotchat" lazy = false,
end, build = ":TSUpdate",
}, branch = "main",
{ config = function()
"mfussenegger/nvim-dap", require "config.modules.treesitter"
config = function() end,
require "config.other.dapconf"
end,
},
{
"mason-org/mason-lspconfig.nvim",
opts = {},
dependencies = {
{ "mason-org/mason.nvim", opts = {} },
"neovim/nvim-lspconfig",
}, },
}, {
{ "sainnhe/edge",
"folke/lazydev.nvim", lazy = false,
ft = "lua", priority = 1000,
opts = function() config = function()
require "config.lazydev" vim.g.edge_enable_italic = 1
end, vim.g.edge_style = "default"
}, vim.g.edge_menu_selection_background = "purple"
{ end,
"neovim/nvim-lspconfig",
enabled = true,
dependencies = {
-- "williamboman/mason.nvim",
-- "williamboman/mason-lspconfig.nvim",
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"hrsh7th/cmp-cmdline",
"hrsh7th/nvim-cmp",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip",
"j-hui/fidget.nvim",
"b0o/schemastore.nvim",
}, },
config = function() {
require "config.format.lspconfig" "rmagatti/auto-session",
end, config = function()
}, require "config.modules.autosession"
{ end,
"smolck/command-completion.nvim",
opts = {
border = nil,
highlight_selection = true,
use_matchfuzzy = true,
tab_completion = true,
}, },
}, {
{ "lambdalisue/vim-suda",
"andweeb/presence.nvim", init = function()
}, vim.g.suda_smart_edit = 1
{ end,
"mfussenegger/nvim-jdtls", },
}, {
{ "nvim-tree/nvim-web-devicons",
"ziglang/zig.vim", },
}, {
{ "akinsho/bufferline.nvim",
"mg979/vim-visual-multi", event = "VeryLazy",
branch = "master", config = function()
}, require "config.other.barbar"
{ end,
"elkowar/yuck.vim", },
}, {
{ "mawkler/modicator.nvim",
"f3fora/nvim-texlabconfig", config = function()
config = function() require "config.gui.modicator"
require "config.format.texlab" end,
end, },
build = "go build", {
}, "jiaoshijie/undotree",
{ config = function()
"lancewilhelm/horizon-extended.nvim", require "config.modules.undotree"
}, end,
{ },
"vimpostor/vim-tpipeline", {
}, "hiphish/rainbow-delimiters.nvim",
{ enabled = true,
"Yazeed1s/minimal.nvim", },
config = function() {
vim.g.minimal_italic_comments = true "windwp/nvim-autopairs",
vim.g.minimal_italic_functions = true event = "InsertEnter",
end, config = function()
}, require "config.other.autopairs"
{ end,
"aserowy/tmux.nvim", },
config = function() {
require "config.terminal.tmux" "tpope/vim-fugitive",
end, },
}, {
{ "rcarriga/nvim-notify",
"rachartier/tiny-inline-diagnostic.nvim", config = function()
config = function() require "config.other.notify"
require "config.format.TID" end,
end, },
}, {
{ "zbirenbaum/copilot.lua",
"ThePrimeagen/harpoon", cmd = "Copilot",
branch = "harpoon2", event = "InsertEnter",
dependencies = { config = function()
"nvim-lua/plenary.nvim", require "config.ai.copilot"
end,
},
{
"CopilotC-Nvim/CopilotChat.nvim",
dependencies = {
{ "zbirenbaum/copilot.lua" },
{ "nvim-lua/plenary.nvim", branch = "master" },
},
build = "make tiktoken",
config = function()
require "config.ai.copilotchat"
end,
},
{
"mfussenegger/nvim-dap",
config = function()
require "config.other.dapconf"
end,
},
{
"mason-org/mason-lspconfig.nvim",
dependencies = {
{ "mason-org/mason.nvim", opts = {} },
"neovim/nvim-lspconfig",
},
},
{
"folke/lazydev.nvim",
ft = "lua",
opts = function()
require "config.lazydev"
end,
},
{
"neovim/nvim-lspconfig",
enabled = true,
dependencies = {
-- "williamboman/mason.nvim",
-- "williamboman/mason-lspconfig.nvim",
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"hrsh7th/cmp-cmdline",
"hrsh7th/nvim-cmp",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip",
"j-hui/fidget.nvim",
"b0o/schemastore.nvim",
},
config = function()
require "config.format.lspconfig"
end,
},
{
"smolck/command-completion.nvim",
opts = {
border = nil,
highlight_selection = true,
use_matchfuzzy = true,
tab_completion = true,
},
},
{
"andweeb/presence.nvim",
},
{
"mfussenegger/nvim-jdtls",
},
{
"ziglang/zig.vim",
},
{
"mg979/vim-visual-multi",
branch = "master",
},
{
"elkowar/yuck.vim",
},
{
"f3fora/nvim-texlabconfig",
config = function()
require "config.format.texlab"
end,
build = "go build",
},
{
"lancewilhelm/horizon-extended.nvim",
},
{
"vimpostor/vim-tpipeline",
},
{
"Yazeed1s/minimal.nvim",
config = function()
vim.g.minimal_italic_comments = true
vim.g.minimal_italic_functions = true
end,
},
{
"aserowy/tmux.nvim",
config = function()
require "config.terminal.tmux"
end,
},
{
"rachartier/tiny-inline-diagnostic.nvim",
config = function()
require "config.format.TID"
end,
},
{
"ThePrimeagen/harpoon",
branch = "harpoon2",
dependencies = {
"nvim-lua/plenary.nvim",
},
config = function()
require "config.other.harpoon"
end,
},
{
"aznhe21/actions-preview.nvim",
config = function()
require "config.other.actions-preview"
end,
},
{
"Zacharias-Brohn/zterm-navigator.nvim",
config = function()
require "config.terminal.zterm-navigator"
end,
},
{
"Fildo7525/pretty_hover",
event = "LspAttach",
opts = {},
},
{
"jiaoshijie/undotree",
config = function()
require "config.modules.undotree"
end,
}, },
config = function()
require "config.other.harpoon"
end,
},
{
"aznhe21/actions-preview.nvim",
config = function()
require "config.other.actions-preview"
end,
},
{
"Zacharias-Brohn/zterm-navigator.nvim",
config = function()
require "config.terminal.zterm-navigator"
end,
},
{
"Fildo7525/pretty_hover",
event = "LspAttach",
opts = {},
},
{
"jiaoshijie/undotree",
config = function()
require "config.modules.undotree"
end,
},
} }