fixed mason

This commit is contained in:
Acid
2026-05-24 23:59:22 -04:00
parent cd2851ae68
commit bc1286b3d0
7 changed files with 403 additions and 375 deletions
+28 -26
View File
@@ -1,3 +1,31 @@
--------------
-- MY WINDOWS --
--------------
-- Workspace assignments
hl.window_rule({ name = "ws-wezterm", match = { class = "^(org.wezfurlong.wezterm)$" }, workspace = 1 })
hl.window_rule({ name = "ws-firefox", match = { class = "^(org.mozilla.firefox)$" }, workspace = 2 })
hl.window_rule({ name = "ws-waterfox", match = { class = "^(waterfox)$" }, workspace = 2 })
hl.window_rule({ name = "ws-nemo", match = { class = "^(nemo)$" }, workspace = 3 })
hl.window_rule({ name = "ws-vscodium", match = { title = "^(VSCodium)$" }, workspace = 4 })
hl.window_rule({ name = "ws-jetbrains", match = { title = "^(jetbrains-idea)$" }, workspace = 4 })
hl.window_rule({ name = "ws-postman", match = { title = "^(Postman)$" }, workspace = 4 })
hl.window_rule({ name = "ws-rstudio", match = { title = "^(RStudio)$" }, workspace = 4 })
hl.window_rule({ name = "ws-obsidian", match = { class = "^(obsidian)$" }, workspace = 5 })
hl.window_rule({ name = "ws-libreoff", match = { class = "^(libreoffice.*)$" }, workspace = 5 })
hl.window_rule({ name = "ws-discord", match = { class = "^(com.discordapp.Discord)$" }, workspace = 5 })
hl.window_rule({ name = "ws-thunderbird", match = { class = "^(net.thunderbird.Thunderbird)$" }, workspace = 7 })
hl.window_rule({ name = "ws-jellyfin", match = { title = "^(Jellyfin Media Player)$" }, workspace = 8 })
hl.window_rule({ name = "ws-gcalendar", match = { class = "^(chrome-calendar.*)$" }, workspace = 8 })
hl.window_rule({ name = "ws-affinity", match = { class = "^(affinity)$" }, workspace = 8 })
hl.window_rule({ name = "ws-tauon", match = { title = "^(Tauon)$" }, workspace = 8 })
hl.window_rule({ name = "ws-steam", match = { class = "^(steam)$" }, workspace = 9 })
hl.window_rule({ name = "ws-virt", match = { class = "^(virt-manager)$" }, workspace = 9 })
hl.window_rule({ name = "ws-krita", match = { class = "^(krita)$" }, workspace = 10 })
hl.window_rule({ name = "ws-inkscape", match = { class = "^(org.inkscape.Inkscape)$" }, workspace = 10 })
hl.window_rule({ name = "ws-sqlite", match = { class = "^(sqlitebrowser)$" }, workspace = 10 })
hl.window_rule({ name = "ws-veracrypt", match = { class = "^(veracrypt)$" }, workspace = 10 })
--------------
-- Special rules --
--------------
@@ -48,29 +76,3 @@ hl.window_rule({
match = { class = "^(jetbrains-studio)$", title = "^win.*" },
no_initial_focus = true,
})
--------------
-- MY WINDOWS --
--------------
-- Workspace assignments
hl.window_rule({ name = "ws-wezterm", match = { class = "^(org.wezfurlong.wezterm)$" }, workspace = 1 })
hl.window_rule({ name = "ws-firefox", match = { class = "^(org.mozilla.firefox)$" }, workspace = 2 })
hl.window_rule({ name = "ws-nemo", match = { class = "^(nemo)$" }, workspace = 3 })
hl.window_rule({ name = "ws-vscodium", match = { title = "^(VSCodium)$" }, workspace = 4 })
hl.window_rule({ name = "ws-postman", match = { title = "^(Postman)$" }, workspace = 4 })
hl.window_rule({ name = "ws-rstudio", match = { title = "^(RStudio)$" }, workspace = 4 })
hl.window_rule({ name = "ws-obsidian", match = { class = "^(obsidian)$" }, workspace = 5 })
hl.window_rule({ name = "ws-libreoff", match = { class = "^(libreoffice.*)$" }, workspace = 5 })
hl.window_rule({ name = "ws-discord", match = { class = "^(com.discordapp.Discord)$" }, workspace = 5 })
hl.window_rule({ name = "ws-thunderbird", match = { class = "^(net.thunderbird.Thunderbird)$" }, workspace = 7 })
hl.window_rule({ name = "ws-jellyfin", match = { title = "^(Jellyfin Media Player)$" }, workspace = 8 })
hl.window_rule({ name = "ws-gcalendar", match = { class = "^(chrome-calendar.*)$" }, workspace = 8 })
hl.window_rule({ name = "ws-affinity", match = { class = "^(affinity)$" }, workspace = 8 })
hl.window_rule({ name = "ws-tauon", match = { title = "^(Tauon)$" }, workspace = 8 })
hl.window_rule({ name = "ws-steam", match = { class = "^(steam)$" }, workspace = 9 })
hl.window_rule({ name = "ws-virt", match = { class = "^(virt-manager)$" }, workspace = 9 })
hl.window_rule({ name = "ws-krita", match = { class = "^(krita)$" }, workspace = 10 })
hl.window_rule({ name = "ws-inkscape", match = { class = "^(org.inkscape.Inkscape)$" }, workspace = 10 })
hl.window_rule({ name = "ws-sqlite", match = { class = "^(sqlitebrowser)$" }, workspace = 10 })
hl.window_rule({ name = "ws-veracrypt", match = { class = "^(veracrypt)$" }, workspace = 10 })
+2
View File
@@ -1,4 +1,6 @@
require("plugins")
-- Ensure Neovim's own bundled parsers take priority over nvim-treesitter's older versions
vim.opt.runtimepath:prepend("/usr/lib64/nvim")
-- General settings
require("options")
-- keymaps
+4 -4
View File
@@ -2,7 +2,7 @@
"LuaSnip": { "branch": "master", "commit": "0abc8f390b278c3b4aabc4c004ac8a088b65cf24" },
"barbar.nvim": { "branch": "master", "commit": "a4bef5b4fc1f064f2f673172252028eae18191c9" },
"buffer-vacuum": { "branch": "main", "commit": "917986d31cce6501c929ab6088c0887beff56b69" },
"catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" },
"catppuccin": { "branch": "main", "commit": "8edd468af4d63212b84d69b2ddb5ffc9023ef5eb" },
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
"cmp-nvim-lua": { "branch": "main", "commit": "e3a22cb071eb9d6508a156306b102c45cd2d573d" },
@@ -16,6 +16,7 @@
"local-highlight.nvim": { "branch": "master", "commit": "dd8ae2ca26a5cfa17fb598864eacbe2df63938f3" },
"lualine.nvim": { "branch": "master", "commit": "131a558e13f9f28b15cd235557150ccb23f89286" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "7b01e2974a47d489bb92f47a41e4c0088ea8f86e" },
"mason.nvim": { "branch": "main", "commit": "bb639d4bf385a4d89f478b83af4d770be05ab7eb" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "ebd66767191714e008ce73b769518a763ff31bdc" },
"none-ls-extras.nvim": { "branch": "main", "commit": "167f29529ff1438e673b1792a71aaf79ddd6c74f" },
@@ -29,18 +30,17 @@
"nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" },
"nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" },
"nvim-web-devicons": { "branch": "master", "commit": "0d7d35fa946837b8738b17c18d1faa1ac351e7f9" },
"oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" },
"oil.nvim": { "branch": "master", "commit": "b91ee5a77a6a9605d9c1aaf4fda74b66082c8297" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "a798325b7f36acc62741d1029930a7b96d4dd4bf" },
"ruffer": { "branch": "plugin", "commit": "5248604605bf1039147f3f29dcd46aa296557e9c" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"telescope.nvim": { "branch": "master", "commit": "7d324792b7943e4aa16ad007212e6acc6f9fe335" },
"undotree": { "branch": "master", "commit": "6fa6b57cda8459e1e4b2ca34df702f55242f4e4d" },
"vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" },
"vim-dadbod": { "branch": "master", "commit": "6d1d41da4873a445c5605f2005ad2c68c99d8770" },
"vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" },
"vim-dadbod-ui": { "branch": "master", "commit": "07e92e22114cc5b1ba4938d99897d85b58e20475" },
"vim-devicons": { "branch": "master", "commit": "71f239af28b7214eebb60d4ea5bd040291fb7e33" },
"vim-floaterm": { "branch": "master", "commit": "bb4ba7952e906408e1f83b215f55ffe57efcade6" },
"vim-signature": { "branch": "master", "commit": "6bc3dd1294a22e897f0dcf8dd72b85f350e306bc" },
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }
+170 -157
View File
@@ -1,21 +1,21 @@
vim.diagnostic.config({
virtual_text = true,
signs = true,
update_in_insert = false,
underline = true,
severity_sort = false,
float = true,
virtual_text = true,
signs = true,
update_in_insert = false,
underline = true,
severity_sort = false,
float = true,
})
--"'''''''Mason''''''''''''''''''''''''''''''''''''''''''''''''''''''
require("mason").setup({
ui = {
icons = {
package_installed = "",
package_pending = "",
package_uninstalled = "",
},
},
ui = {
icons = {
package_installed = "",
package_pending = "",
package_uninstalled = "",
},
},
})
-- Define capabilities for LSP servers
@@ -24,130 +24,129 @@ capabilities.textDocument.completion.completionItem.snippetSupport = true
-- LSP attach callback
local lsp_attach = function(client, bufnr)
-- Helper function to set buffer-local keymaps
local bufmap = function(mode, lhs, rhs, desc)
vim.keymap.set(mode, lhs, rhs, { buffer = bufnr, desc = desc })
end
-- Helper function to set buffer-local keymaps
local bufmap = function(mode, lhs, rhs, desc)
vim.keymap.set(mode, lhs, rhs, { buffer = bufnr, desc = desc })
end
-- Keymaps for LSP actions
bufmap("n", "gd", vim.lsp.buf.definition, "Go to definition")
bufmap("n", "gD", vim.lsp.buf.declaration, "Go to declaration")
bufmap("n", "K", function()
vim.lsp.buf.hover({
border = "rounded",
})
end, "Show hover documentation")
bufmap("n", "<leader>vws", vim.lsp.buf.workspace_symbol, "Search workspace symbols")
bufmap("n", "<leader>vd", vim.diagnostic.open_float, "Show diagnostics in float")
bufmap("n", "[d", vim.diagnostic.goto_prev, "Go to previous diagnostic")
bufmap("n", "]d", vim.diagnostic.goto_next, "Go to next diagnostic")
bufmap("n", "<leader>ca", vim.lsp.buf.code_action, "Code action")
bufmap("n", "gr", vim.lsp.buf.references, "Find references")
bufmap("n", "<F2>", vim.lsp.buf.rename, "Rename symbol")
bufmap("n", "<C-k>", vim.lsp.buf.signature_help, "Show signature help")
-- Keymaps for LSP actions
bufmap("n", "gd", vim.lsp.buf.definition, "Go to definition")
bufmap("n", "gD", vim.lsp.buf.declaration, "Go to declaration")
bufmap("n", "K", function()
vim.lsp.buf.hover({
border = "rounded",
})
end, "Show hover documentation")
bufmap("n", "<leader>vws", vim.lsp.buf.workspace_symbol, "Search workspace symbols")
bufmap("n", "<leader>vd", vim.diagnostic.open_float, "Show diagnostics in float")
bufmap("n", "<leader>ca", vim.lsp.buf.code_action, "Code action")
bufmap("n", "gr", vim.lsp.buf.references, "Find references")
bufmap("n", "<F2>", vim.lsp.buf.rename, "Rename symbol")
bufmap("n", "<C-k>", vim.lsp.buf.signature_help, "Show signature help")
end
-- Mason-LSPconfig setup
local servers = {
"clangd",
"vtsls",
"pyright",
"tailwindcss",
"html",
"stimulus_ls",
"cssls",
"gopls",
"autotools-language-server",
"lua_ls",
"clangd",
"vtsls",
"pyright",
"tailwindcss",
"html",
"stimulus_ls",
"cssls",
"gopls",
"yamlls",
}
------Uncoment on first run
-- require("mason-lspconfig").setup({
-- ensure_installed = servers,
-- })
require("mason-lspconfig").setup({
ensure_installed = servers,
automatic_enable = false,
})
for _, server in ipairs(servers) do
vim.lsp.config(server, {
capabilities = capabilities,
on_attach = lsp_attach,
})
vim.lsp.enable(server)
vim.lsp.config(server, {
capabilities = capabilities,
on_attach = lsp_attach,
})
vim.lsp.enable(server)
end
vim.lsp.config("pyright", {
capabilities = capabilities,
on_attach = lsp_attach,
settings = {
python = {
analysis = {
autoSearchPaths = true,
useLibraryCodeForTypes = true,
stubPath = "",
diagnosticMode = "off",
autoImportCompletions = true,
},
},
},
capabilities = capabilities,
on_attach = lsp_attach,
settings = {
python = {
analysis = {
autoSearchPaths = true,
useLibraryCodeForTypes = true,
stubPath = "",
diagnosticMode = "off",
autoImportCompletions = true,
},
},
},
})
vim.lsp.enable("pyright")
----------- RUFF
vim.lsp.config("ruff", {
filetypes = { "python" },
init_options = {
settings = {
configuration = "~/.config/ruff/pyproject.toml",
},
},
filetypes = { "python" },
init_options = {
settings = {
configuration = "~/.config/ruff/pyproject.toml",
},
},
})
vim.api.nvim_create_autocmd("LspAttach", {
group = vim.api.nvim_create_augroup("lsp_attach_disable_ruff_hover", { clear = true }),
callback = function(args)
local client = vim.lsp.get_client_by_id(args.data.client_id)
if client == nil then
return
end
if client.name == "ruff" then
client.server_capabilities.hoverProvider = false
end
end,
desc = "LSP: Disable hover capability from Ruff",
group = vim.api.nvim_create_augroup("lsp_attach_disable_ruff_hover", { clear = true }),
callback = function(args)
local client = vim.lsp.get_client_by_id(args.data.client_id)
if client == nil then
return
end
if client.name == "ruff" then
client.server_capabilities.hoverProvider = false
end
end,
desc = "LSP: Disable hover capability from Ruff",
})
vim.lsp.enable("ruff")
--------- django experimental
vim.lsp.config("djls", {
cmd = { "djls", "serve" },
filetypes = { "htmldjango", "html", "python" },
root_markers = { "manage.py" },
cmd = { "djls", "serve" },
filetypes = { "htmldjango", "html", "python" },
root_markers = { "manage.py" },
})
vim.lsp.enable("djls")
-------------- LUA
vim.lsp.config("lua_ls", {
capabilities = capabilities,
on_attach = lsp_attach,
capabilities = capabilities,
on_attach = lsp_attach,
settings = {
Lua = {
workspace = {
library = {
"/usr/share/hypr/stubs",
-- Neovim Lua runtime completion
vim.env.VIMRUNTIME,
-- Your nvim config Lua files
vim.fn.stdpath("config") .. "/lua",
},
checkThirdParty = false,
},
diagnostics = {
enable = true,
globals = { "vim", "hl" },
},
},
},
settings = {
Lua = {
workspace = {
library = {
"/usr/share/hypr/stubs",
-- Neovim Lua runtime completion
vim.env.VIMRUNTIME,
-- Your nvim config Lua files
vim.fn.stdpath("config") .. "/lua",
},
checkThirdParty = false,
},
diagnostics = {
enable = true,
globals = { "vim", "hl" },
},
},
},
})
vim.lsp.enable("lua_ls")
@@ -158,74 +157,88 @@ local helpers = require("null-ls.helpers")
local methods = require("null-ls.methods")
local ruff_format = helpers.make_builtin({
name = "ruff_format",
method = methods.internal.FORMATTING,
filetypes = { "python" },
generator_opts = {
command = "ruff",
args = { "format", "--stdin-filename", "$FILENAME", "-" },
to_stdin = true,
},
factory = helpers.formatter_factory,
name = "ruff_format",
method = methods.internal.FORMATTING,
filetypes = { "python" },
generator_opts = {
command = "ruff",
args = { "format", "--stdin-filename", "$FILENAME", "-" },
to_stdin = true,
},
factory = helpers.formatter_factory,
})
null_ls.setup({
sources = {
null_ls.builtins.diagnostics.djlint,
null_ls.builtins.diagnostics.cppcheck,
null_ls.builtins.diagnostics.codespell,
null_ls.builtins.diagnostics.hadolint,
null_ls.builtins.formatting.prettierd.with({ extra_args = { "--single-quote" } }),
null_ls.builtins.formatting.gofumpt,
null_ls.builtins.formatting.stylua,
ruff_format,
},
on_attach = function(client, bufnr)
if client:supports_method("textDocument/formatting") then -- run formatters on save
vim.api.nvim_create_autocmd("BufWritePre", {
buffer = bufnr,
callback = function()
vim.lsp.buf.format({ bufnr = bufnr })
end,
})
end
end,
sources = {
null_ls.builtins.diagnostics.djlint,
null_ls.builtins.diagnostics.cppcheck,
null_ls.builtins.diagnostics.codespell,
null_ls.builtins.diagnostics.hadolint,
null_ls.builtins.formatting.prettierd.with({ extra_args = { "--single-quote" } }),
null_ls.builtins.formatting.gofumpt,
null_ls.builtins.formatting.stylua,
ruff_format,
},
on_attach = function(client, bufnr)
if client:supports_method("textDocument/formatting") then -- run formatters on save
vim.api.nvim_create_autocmd("BufWritePre", {
buffer = bufnr,
callback = function()
vim.lsp.buf.format({ bufnr = bufnr })
end,
})
end
end,
})
--"'''''''''''''''''''Tree sitter highlight''''''''''''''''''''''''''''''
require("nvim-treesitter").install({ "lua", "bash", "python", "typescript", "javascript", "go" })
require("nvim-treesitter").install({ "lua", "yaml", "bash", "python", "typescript", "javascript", "go" })
local ts_indent_langs = { "html", "javascript", "tsx", "go", "lua" }
vim.api.nvim_create_autocmd("FileType", {
callback = function(ev)
pcall(vim.treesitter.start)
if vim.tbl_contains(ts_indent_langs, ev.match) then
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
end
end,
callback = function(ev)
pcall(vim.treesitter.start)
if vim.tbl_contains(ts_indent_langs, ev.match) then
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
end
end,
})
require("nvim-treesitter-textobjects").setup({
select = {
lookahead = true,
selection_modes = {
["@parameter.outer"] = "v",
["@function.outer"] = "V",
["@class.outer"] = "<c-v>",
},
include_surrounding_whitespace = false,
},
move = { set_jumps = true },
select = {
lookahead = true,
selection_modes = {
["@parameter.outer"] = "v",
["@function.outer"] = "V",
["@class.outer"] = "<c-v>",
},
include_surrounding_whitespace = false,
},
move = { set_jumps = true },
})
local select = require("nvim-treesitter-textobjects.select")
local move = require("nvim-treesitter-textobjects.move")
vim.keymap.set({ "x", "o" }, "af", function() select.select_textobject("@function.outer", "textobjects") end)
vim.keymap.set({ "x", "o" }, "if", function() select.select_textobject("@function.inner", "textobjects") end)
vim.keymap.set({ "x", "o" }, "ac", function() select.select_textobject("@class.outer", "textobjects") end)
vim.keymap.set({ "x", "o" }, "ic", function() select.select_textobject("@class.inner", "textobjects") end)
vim.keymap.set({ "x", "o" }, "as", function() select.select_textobject("@local.scope", "locals") end)
vim.keymap.set({ "x", "o" }, "af", function()
select.select_textobject("@function.outer", "textobjects")
end)
vim.keymap.set({ "x", "o" }, "if", function()
select.select_textobject("@function.inner", "textobjects")
end)
vim.keymap.set({ "x", "o" }, "ac", function()
select.select_textobject("@class.outer", "textobjects")
end)
vim.keymap.set({ "x", "o" }, "ic", function()
select.select_textobject("@class.inner", "textobjects")
end)
vim.keymap.set({ "x", "o" }, "as", function()
select.select_textobject("@local.scope", "locals")
end)
vim.keymap.set({ "n", "x", "o" }, "<C-f>", function() move.goto_next_start("@function.outer", "textobjects") end)
vim.keymap.set({ "n", "x", "o" }, "<A-f>", function() move.goto_previous_start("@function.outer", "textobjects") end)
vim.keymap.set({ "n", "x", "o" }, "<C-f>", function()
move.goto_next_start("@function.outer", "textobjects")
end)
vim.keymap.set({ "n", "x", "o" }, "<A-f>", function()
move.goto_previous_start("@function.outer", "textobjects")
end)
+192 -182
View File
@@ -1,224 +1,234 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
local plugins = {
{ "neovim/nvim-lspconfig" },
{ "neovim/nvim-lspconfig" },
-- mine
{
"acidburnmonkey/ruffer",
config = function()
require("ruffer").setup()
end,
},
-- mine
{
"acidburnmonkey/ruffer",
config = function()
require("ruffer").setup()
end,
},
-- Terminal floating window
{ "voldikss/vim-floaterm" },
-- Terminal floating window
{ "voldikss/vim-floaterm" },
-- Indent guides
{
"lukas-reineke/indent-blankline.nvim",
main = "ibl",
opts = {},
},
-- Indent guides
{
"lukas-reineke/indent-blankline.nvim",
main = "ibl",
event = "BufReadPre",
opts = {},
},
-- Color highlighting
{ "catgoose/nvim-colorizer.lua" },
-- Color highlighting
{ "catgoose/nvim-colorizer.lua", event = "BufReadPre" },
-- Undo tree viewer
{ "mbbill/undotree" },
-- Undo tree viewer
{ "mbbill/undotree", cmd = "UndotreeToggle" },
-- Devicons
{ "nvim-tree/nvim-web-devicons", opts = {} },
-- Devicons
{ "nvim-tree/nvim-web-devicons", opts = {} },
-- Neo-tree file explorer
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
},
lazy = true,
},
-- Neo-tree file explorer
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
},
lazy = true,
},
-- Telescope fuzzy finder
{
"nvim-telescope/telescope.nvim",
tag = "0.1.8",
dependencies = { "nvim-lua/plenary.nvim" },
},
-- Telescope fuzzy finder
{
"nvim-telescope/telescope.nvim",
dependencies = { "nvim-lua/plenary.nvim" },
},
-- Treesitter
{
"nvim-treesitter/nvim-treesitter",
branch = "main",
lazy = false,
build = ":TSUpdate",
},
{ "nvim-treesitter/nvim-treesitter-textobjects", branch = "main" },
-- Treesitter
{
"nvim-treesitter/nvim-treesitter",
branch = "main",
lazy = false,
build = ":TSUpdate",
},
{ "nvim-treesitter/nvim-treesitter-textobjects", branch = "main" },
-- Mason package manager
{
"mason-org/mason.nvim",
opts = {},
},
-- Mason package manager
{
"mason-org/mason.nvim",
cmd = { "Mason", "MasonInstall", "MasonUpdate" },
opts = {},
},
-- LuaSnip engine
{
"L3MON4D3/LuaSnip",
build = "make install_jsregexp",
},
-- LuaSnip snippets
{ "rafamadriz/friendly-snippets" },
-- mason-lspconfig
{
"mason-org/mason-lspconfig.nvim",
opts = {},
dependencies = {
{ "mason-org/mason.nvim", opts = {} },
"neovim/nvim-lspconfig",
},
},
-- Autopairs
{
"windwp/nvim-autopairs",
event = "InsertEnter",
},
-- LuaSnip engine
{
"L3MON4D3/LuaSnip",
build = "make install_jsregexp",
},
-- LuaSnip snippets
{ "rafamadriz/friendly-snippets" },
-- Commenting utility
{ "tpope/vim-commentary" },
-- Autopairs
{
"windwp/nvim-autopairs",
event = "InsertEnter",
},
-- Catppuccin theme
{ "catppuccin/nvim", name = "catppuccin", priority = 1000 },
-- Commenting utility
{ "tpope/vim-commentary" },
-- Surround plugin
{ "tpope/vim-surround" },
-- Catppuccin theme
{ "catppuccin/nvim", name = "catppuccin", priority = 1000 },
-- Formatter/Linter integration
{
"nvimtools/none-ls.nvim",
dependencies = {
"nvimtools/none-ls-extras.nvim",
},
},
-- Surround plugin
{ "tpope/vim-surround" },
-- Treesitter auto-closing tags
{ "windwp/nvim-ts-autotag" },
-- Formatter/Linter integration
{
"nvimtools/none-ls.nvim",
dependencies = {
"nvimtools/none-ls-extras.nvim",
},
},
-- Signature marks
{ "kshenoy/vim-signature" },
-- Treesitter auto-closing tags
{ "windwp/nvim-ts-autotag", ft = { "html", "jsx", "tsx", "svelte", "vue", "xml" } },
-- Oil file explorer
{
"stevearc/oil.nvim",
lazy = false,
},
-- Signature marks
{ "kshenoy/vim-signature" },
-- Rainbow delimiters
{ "HiPhish/rainbow-delimiters.nvim" },
-- Oil file explorer
{
"stevearc/oil.nvim",
lazy = false,
},
-- Completion engine
{ "hrsh7th/nvim-cmp" },
{ "hrsh7th/cmp-buffer" },
{ "hrsh7th/cmp-path" },
{ "saadparwaiz1/cmp_luasnip" },
{ "hrsh7th/cmp-nvim-lsp" },
{ "hrsh7th/cmp-nvim-lua" },
-- Rainbow delimiters
{ "HiPhish/rainbow-delimiters.nvim", event = "BufReadPost" },
-- Lualine
{ "nvim-lualine/lualine.nvim", dependencies = { "nvim-tree/nvim-web-devicons" } },
-- Completion engine
{ "hrsh7th/nvim-cmp" },
{ "hrsh7th/cmp-buffer" },
{ "hrsh7th/cmp-path" },
{ "saadparwaiz1/cmp_luasnip" },
{ "hrsh7th/cmp-nvim-lsp" },
{ "hrsh7th/cmp-nvim-lua" },
-- File icons
{ "ryanoasis/vim-devicons" },
-- Lualine
{ "nvim-lualine/lualine.nvim", dependencies = { "nvim-tree/nvim-web-devicons" } },
-- barbar
{
"romgrk/barbar.nvim",
dependencies = {
"nvim-tree/nvim-web-devicons",
},
init = function()
vim.g.barbar_auto_setup = false -- disable auto-setup
end,
},
-- barbar
{
"romgrk/barbar.nvim",
dependencies = {
"nvim-tree/nvim-web-devicons",
},
init = function()
vim.g.barbar_auto_setup = false -- disable auto-setup
end,
},
-- highlight
{
"tzachar/local-highlight.nvim",
},
-- highlight
{
"tzachar/local-highlight.nvim",
event = "BufReadPost",
},
-- buffer vacuum
{
"ChuufMaster/buffer-vacuum",
opts = {
max_buffers = 2,
count_pinned_buffers = false,
enable_messages = false,
},
},
-- buffer vacuum
{
"ChuufMaster/buffer-vacuum",
opts = {
max_buffers = 2,
count_pinned_buffers = false,
enable_messages = false,
},
},
-- telescope plugin
{ "nvim-telescope/telescope-ui-select.nvim" },
-- telescope plugin
{ "nvim-telescope/telescope-ui-select.nvim" },
-- harpoon
{ "ThePrimeagen/harpoon", lazy = false },
-- harpoon
{ "ThePrimeagen/harpoon", lazy = false },
--MarkdownPreview
{
"iamcco/markdown-preview.nvim",
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
build = "cd app && npm install",
init = function()
vim.g.mkdp_filetypes = { "markdown" }
end,
ft = { "markdown" },
},
--MarkdownPreview
{
"iamcco/markdown-preview.nvim",
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
build = "cd app && npm install",
init = function()
vim.g.mkdp_filetypes = { "markdown" }
end,
ft = { "markdown" },
},
-- Dadbod
{
"kristijanhusak/vim-dadbod-ui",
dependencies = {
{ "tpope/vim-dadbod", lazy = true },
{ "kristijanhusak/vim-dadbod-completion", ft = { "sql", "mysql", "plsql" }, lazy = true },
},
cmd = {
"DBUI",
"DBUIToggle",
"DBUIAddConnection",
"DBUIFindBuffer",
},
init = function()
vim.g.db_ui_use_nerd_fonts = 1
end,
},
-- Dadbod
{
"kristijanhusak/vim-dadbod-ui",
dependencies = {
{ "tpope/vim-dadbod", lazy = true },
{ "kristijanhusak/vim-dadbod-completion", ft = { "sql", "mysql", "plsql" }, lazy = true },
},
cmd = {
"DBUI",
"DBUIToggle",
"DBUIAddConnection",
"DBUIFindBuffer",
},
init = function()
vim.g.db_ui_use_nerd_fonts = 1
end,
},
-- go-tagger
{
"romus204/go-tagger.nvim",
config = function()
require("go-tagger").setup({
skip_private = true,
casing = "camelCase",
tags = {
json = {
casing = "camelCase",
},
xml = {
casing = "snake_case",
},
},
})
end,
},
-- go-tagger
{
"romus204/go-tagger.nvim",
ft = { "go" },
config = function()
require("go-tagger").setup({
skip_private = true,
casing = "camelCase",
tags = {
json = {
casing = "camelCase",
},
xml = {
casing = "snake_case",
},
},
})
end,
},
}
local opts = {}
+1 -1
View File
@@ -43,7 +43,7 @@
"custom/firefox": {
"format": "{}  ",
"tooltip": false,
"on-click": "firefox"
"on-click": "flatpak run net.waterfox.waterfox"
},
+6 -5
View File
@@ -20,11 +20,11 @@ video/mp4=mpv.desktop
text/x-java=org.gnome.TextEditor.desktop
application/x-shellscript=org.gnome.TextEditor.desktop
application/json=org.gnome.TextEditor.desktop
text/html=firefox.desktop
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=chromium-browser.desktop
x-scheme-handler/unknown=chromium-browser.desktop
text/html=brave-browser.desktop
x-scheme-handler/http=brave-browser.desktop
x-scheme-handler/https=brave-browser.desktop
x-scheme-handler/about=brave-browser.desktop
x-scheme-handler/unknown=brave-browser.desktop
x-scheme-handler/chrome=firefox.desktop
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
@@ -39,6 +39,7 @@ application/x-bat=org.gnome.TextEditor.desktop
x-scheme-handler/claude-cli=claude-code-url-handler.desktop
text/javascript=org.gnome.TextEditor.desktop
text/css=org.gnome.TextEditor.desktop
x-scheme-handler/jetbrains=jetbrainsd.desktop
[Added Associations]
x-scheme-handler/terminal=org.wezfurlong.wezterm.desktop;