miovim/config/plugins.nix
harry123 05ad03cb36 fixed grug.far
added missing configuration
2025-07-25 11:26:25 +02:00

267 lines
4.7 KiB
Nix

{
lib,
config,
pkgs,
...
}:
{
plugins = {
lsp = {
enable = true;
servers = {
basedpyright.enable = true;
asm_lsp.enable = true;
gopls.enable = true;
java_language_server.enable = true;
rust_analyzer = {
enable = true;
installRustc = true;
installCargo = true;
};
nil_ls.enable = true;
marksman.enable = true;
clangd = {
enable = true;
};
astro.enable = true;
};
};
grug-far = {
enable = true;
settings = {
debounceMs = 1000;
engine = "ripgrep";
engines = {
ripgrep = {
path = "rg";
showReplaceDiff = true;
};
};
maxSearchMatches = 2000;
maxWorkers = 8;
minSearchChars = 1;
normalModeSearch = false;
};
};
conform-nvim = {
enable = true;
settings = {
notify_no_formatters = true;
formatters_by_ft = {
rust = [ "rustfmt" ];
lua = [ "stylua" ];
python = [
"autoflake"
"autopep8"
"ruff_fix"
"ruff_organize_imports"
"ruff_format"
];
javascript = {
__unkeyed-1 = "prettierd";
__unkeyed-2 = "prettier";
stop_after_first = true;
};
nix = {
__unkeyed-1 = "alejandra";
__unkeyed-2 = "nixfmt";
stop_after_first = true;
};
markdown = [ "markdownlint-cli2" ];
};
};
};
markdown-preview = {
enable = true;
};
blink-ripgrep.enable = true;
blink-cmp = {
enable = true;
setupLspCapabilities = true;
settings = {
keymap = {
"<CR>" = [
"accept"
"fallback"
];
"<Tab>" = [
"select_next"
"snippet_forward"
"fallback"
];
"<S-Tab>" = [
"select_prev"
"snippet_backward"
"fallback"
];
};
signature = {
enabled = true;
window = {
border = "rounded";
};
};
sources = {
default = [
"buffer"
"lsp"
"path"
"snippets"
"ripgrep"
];
providers = {
lsp.score_offset = 4;
ripgrep = {
name = "ripgrep";
module = "blink-ripgrep";
score_offset = 1;
};
};
};
};
};
barbar.enable = true;
gitsigns.enable = true;
comment = {
enable = true;
};
treesitter = {
enable = true;
folding = true;
grammarPackages = pkgs.vimPlugins.nvim-treesitter.passthru.allGrammars;
settings = {
auto_install = true;
};
};
web-devicons = {
enable = true;
};
emmet = {
enable = true;
};
cord = {
enable = true;
};
chadtree = {
enable = true;
view.openDirection = "right";
keymap.openFileFolder.primary = [
"l"
"<enter>"
];
};
fzf-lua = {
enable = true;
};
notify = {
enable = true;
};
lualine = {
enable = true;
settings.options.theme = "ayu_light";
};
neotest = {
enable = true;
adapters = {
bash.enable = true;
rust.enable = true;
python.enable = true;
java.enable = true;
vitest.enable = true;
go.enable = true;
};
};
lsp-lines.enable = true;
which-key = {
enable = true;
};
lazygit.enable = true;
mini.enable = true;
mini-pairs.enable = true;
alpha = {
enable = true;
theme = "startify";
};
dap = {
enable = true;
adapters = {
executables = {
on_config = { };
};
servers = { };
};
};
dap-ui = {
enable = true;
};
dap-python = {
enable = true;
};
toggleterm = {
enable = true;
};
trouble = {
enable = true;
settings = {
auto_jump = true;
auto_refresh = true;
};
};
todo-comments = {
enable = true;
};
zen-mode = {
enable = true;
};
indent-blankline.enable = true;
neorg = {
enable = true;
};
obsidian = {
enable = true;
settings = {
completion = {
min_chars = 2;
blink = true;
};
new_notes_location = "current_dir";
workspaces = [
{
name = "notes";
path = "~/Documents/Notes";
}
];
};
};
};
}