101 lines
1.7 KiB
Nix
101 lines
1.7 KiB
Nix
{ pkgs, inputs, ... }:
|
|
let
|
|
nvimLib = pkgs.callPackage ../nix/lib { };
|
|
inherit (nvimLib) mkNeovimPlugin;
|
|
inherit (pkgs) vimPlugins;
|
|
|
|
lsp = with vimPlugins; [
|
|
nvim-lspconfig
|
|
lspkind-nvim
|
|
nvim-lightbulb
|
|
neodev-nvim
|
|
none-ls-nvim
|
|
];
|
|
|
|
cmp = with vimPlugins; [
|
|
cmp-buffer
|
|
cmp-cmdline
|
|
cmp-nvim-lsp
|
|
cmp-nvim-lsp-signature-help
|
|
cmp-path
|
|
cmp_luasnip
|
|
friendly-snippets
|
|
luasnip
|
|
nvim-cmp
|
|
];
|
|
|
|
telescope = with vimPlugins; [
|
|
telescope-dap-nvim
|
|
telescope-fzf-native-nvim
|
|
telescope-nvim
|
|
telescope-ui-select-nvim
|
|
];
|
|
|
|
dap = with vimPlugins; [
|
|
nvim-dap
|
|
nvim-dap-python
|
|
nvim-dap-ui
|
|
nvim-dap-virtual-text
|
|
];
|
|
|
|
treesitter = with vimPlugins; [
|
|
nvim-treesitter-textobjects
|
|
nvim-treesitter-textsubjects
|
|
nvim-treesitter.withAllGrammars
|
|
];
|
|
|
|
neorg-nvim = with vimPlugins; [
|
|
neorg
|
|
neorg-telescope
|
|
];
|
|
|
|
rust = with vimPlugins; [
|
|
rustaceanvim
|
|
crates-nvim
|
|
];
|
|
|
|
go = with vimPlugins; [
|
|
nvim-dap-go
|
|
(mkNeovimPlugin inputs.gopher-nvim "gopher.nvim")
|
|
];
|
|
|
|
general = with vimPlugins; [
|
|
catppuccin-nvim
|
|
gitsigns-nvim
|
|
indent-blankline-nvim
|
|
lazygit-nvim
|
|
lualine-lsp-progress
|
|
lualine-nvim
|
|
mini-nvim
|
|
neo-tree-nvim
|
|
noice-nvim
|
|
nvim-colorizer-lua
|
|
nvim-lastplace
|
|
nvim-web-devicons
|
|
rainbow-delimiters-nvim
|
|
tmux-nvim
|
|
todo-comments-nvim
|
|
trouble-nvim
|
|
undotree
|
|
vim-table-mode
|
|
which-key-nvim
|
|
harpoon
|
|
(mkNeovimPlugin inputs.leetcode-nvim "leetcode.nvim")
|
|
(mkNeovimPlugin inputs.competitest-nvim "competitest.nvim")
|
|
];
|
|
|
|
plugins = builtins.concatLists [
|
|
general
|
|
lsp
|
|
telescope
|
|
dap
|
|
treesitter
|
|
cmp
|
|
neorg-nvim
|
|
rust
|
|
go
|
|
];
|
|
in
|
|
plugins
|
|
|