neovim-flake/config/plugins/qol.nix

110 lines
2.4 KiB
Nix
Raw Normal View History

# Quality of life plugins
{ pkgs, inputs, ... }:
2024-09-02 18:28:53 -07:00
{
extraPackages = with pkgs; [
ripgrep
fd
];
plugins = {
zen-mode.enable = true;
direnv.enable = true;
intellitab.enable = true;
guess-indent.enable = true;
comment.enable = true;
vim-bbye.enable = true;
indent-blankline.enable = true;
2024-09-17 14:21:47 -07:00
which-key = {
enable = true;
settings.delay = 1000;
};
nvim-autopairs.enable = true;
yanky = {
enable = true;
enableTelescope = true;
};
trouble.enable = true;
barbecue.enable = true;
lualine = {
enable = true;
settings = {
sections = {
lualine_a = [ "branch" ];
lualine_b = [
2024-09-17 16:23:43 -07:00
{
__unkeyed-1 = {
__raw = ''
function()
return require('lsp-progress').progress()
end,
'';
};
}
2024-09-17 15:22:42 -07:00
];
lualine_c = [
"progress"
"filetype"
2024-09-17 15:22:42 -07:00
];
lualine_x = [
"encoding"
"fileformat"
];
lualine_y = [
2024-09-17 16:23:43 -07:00
"diff"
"diagnostics"
];
2024-09-17 15:22:42 -07:00
lualine_z = [ "location" ];
};
options = {
globalstatus = true;
2024-09-17 15:59:09 -07:00
disabled_filetypes = [
"ministarter"
];
2024-09-17 15:22:42 -07:00
section_separators = {
left = "";
right = "";
};
};
};
};
crates-nvim.enable = true;
# git stuff
2024-09-17 14:48:00 -07:00
gitsigns = {
enable = true;
settings = {
current_line_blame_opts = {
virt_text = true;
virt_text_pos = "eol";
};
};
};
neogit = {
enable = true;
settings.graph_style = "unicode";
};
2024-09-18 00:29:27 -07:00
# The greatest QoL plugin of all time. Renders codeblocks, formatting, etc
markdown-preview.enable = true;
2024-09-18 00:29:27 -07:00
# Language specific tools
2024-08-28 01:39:06 -07:00
ts-autotag.enable = true;
};
extraPlugins = [
(pkgs.vimUtils.buildVimPlugin {
name = "satellite.nvim";
src = inputs.satellite;
})
(pkgs.vimUtils.buildVimPlugin {
name = "render-markdown.nvim";
src = inputs.render-markdown;
})
(pkgs.vimUtils.buildVimPlugin {
name = "lsp-progress.nvim";
src = inputs.lsp-progress;
})
2024-09-18 00:32:13 -07:00
(pkgs.vimUtils.buildVimPlugin {
name = "cellular-automaton.nvim";
src = inputs.cellular-automaton;
})
];
}