Powershell_es is so perfect rn
This commit is contained in:
@@ -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
|
||||||
+26
-26
@@ -1,40 +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", {
|
||||||
pattern = "*",
|
pattern = "*",
|
||||||
callback = function(args)
|
callback = function(args)
|
||||||
require("conform").format({ bufnr = args.buf })
|
require("conform").format({ bufnr = args.buf })
|
||||||
end,
|
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",
|
||||||
})
|
})
|
||||||
|
|||||||
+263
-252
@@ -3,302 +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-lspconfig").setup {
|
require("mason-lspconfig").setup {
|
||||||
automatic_enable = false,
|
automatic_enable = false,
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
"lua_ls",
|
"lua_ls",
|
||||||
"qmlls",
|
"qmlls",
|
||||||
"rust_analyzer",
|
"rust_analyzer",
|
||||||
"powershell_es",
|
},
|
||||||
},
|
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,
|
||||||
|
|
||||||
["powershell_es"] = function()
|
["rust_analyzer"] = function()
|
||||||
local lspconfig = require "lspconfig"
|
local lspconfig = require "lspconfig"
|
||||||
lspconfig.powershell_es.setup {
|
lspconfig.rust_analyzer.setup {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
}
|
settings = {
|
||||||
end,
|
["rust-analyzer"] = {
|
||||||
|
cargo = { allFeatures = true },
|
||||||
|
checkOnSave = { command = "clippy" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
|
||||||
["rust_analyzer"] = function()
|
zls = function()
|
||||||
local lspconfig = require "lspconfig"
|
local lspconfig = require "lspconfig"
|
||||||
lspconfig.rust_analyzer.setup {
|
lspconfig.zls.setup {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
settings = {
|
root_dir = lspconfig.util.root_pattern(".git", "build.zig", "zls.json"),
|
||||||
["rust-analyzer"] = {
|
settings = {
|
||||||
cargo = { allFeatures = true },
|
zls = {
|
||||||
checkOnSave = { command = "clippy" },
|
enable_inlay_hints = true,
|
||||||
},
|
enable_snippets = true,
|
||||||
},
|
warn_style = true,
|
||||||
}
|
},
|
||||||
end,
|
},
|
||||||
|
}
|
||||||
|
vim.g.zig_fmt_parse_errors = 0
|
||||||
|
vim.g.zig_fmt_autosave = 0
|
||||||
|
end,
|
||||||
|
|
||||||
zls = function()
|
["lua_ls"] = function()
|
||||||
local lspconfig = require "lspconfig"
|
local lspconfig = require "lspconfig"
|
||||||
lspconfig.zls.setup {
|
lspconfig.lua_ls.setup {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
root_dir = lspconfig.util.root_pattern(".git", "build.zig", "zls.json"),
|
settings = {
|
||||||
settings = {
|
Lua = {
|
||||||
zls = {
|
runtime = { version = "Lua 5.1" },
|
||||||
enable_inlay_hints = true,
|
diagnostics = {
|
||||||
enable_snippets = true,
|
globals = {
|
||||||
warn_style = true,
|
"bit",
|
||||||
},
|
"vim",
|
||||||
},
|
"it",
|
||||||
}
|
"describe",
|
||||||
vim.g.zig_fmt_parse_errors = 0
|
"before_each",
|
||||||
vim.g.zig_fmt_autosave = 0
|
"after_each",
|
||||||
end,
|
},
|
||||||
|
},
|
||||||
["lua_ls"] = function()
|
},
|
||||||
local lspconfig = require "lspconfig"
|
},
|
||||||
lspconfig.lua_ls.setup {
|
}
|
||||||
capabilities = capabilities,
|
end,
|
||||||
settings = {
|
},
|
||||||
Lua = {
|
|
||||||
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)
|
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
|
||||||
|
|||||||
+220
-220
@@ -1,227 +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",
|
|
||||||
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,
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user