Files
NixOS-Configs/home/nvim/config/lua/plugins/extras.lua

49 lines
1.4 KiB
Lua

-- User custom plugin configurations and overrides
return {
-- Disable Mason on NixOS (all LSPs/formatters/linters are managed declaratively via Nix)
{ "mason.nvim", enabled = false },
{ "mason-lspconfig.nvim", enabled = false },
{ "mason-nvim-dap.nvim", enabled = false },
-- Treesitter configuration tailored for NixOS
{
"nvim-treesitter/nvim-treesitter",
opts = function(_, opts)
-- Nix provides all precompiled grammars in ~/.config/nvim/parser and rtp.
-- Clear LazyVim's default ensure_installed list to prevent compile triggers on startup.
opts.ensure_installed = {}
opts.auto_install = false
opts.sync_install = false
opts.highlight = {
enable = true,
additional_vim_regex_highlighting = false,
}
opts.indent = { enable = true }
end,
},
-- Example: Telescope / fzf configuration
{
"nvim-telescope/telescope.nvim",
opts = {
defaults = {
layout_strategy = "horizontal",
layout_config = { prompt_position = "top" },
sorting_strategy = "ascending",
winblend = 0,
},
},
},
-- Linting configuration (graceful fallback if linters are not yet in PATH)
{
"mfussenegger/nvim-lint",
opts = function(_, opts)
opts.linters_by_ft = opts.linters_by_ft or {}
if vim.fn.executable("statix") == 0 then
opts.linters_by_ft["nix"] = {}
end
end,
},
}