nixos-config/config/programs/vim/default.nix

52 lines
1.1 KiB
Nix
Raw Normal View History

2022-06-12 20:45:19 +00:00
{pkgs, ...}: let
2022-06-12 19:29:42 +00:00
dsquotes = "''";
2022-06-12 20:45:19 +00:00
in {
2022-06-12 19:29:42 +00:00
programs.neovim = {
enable = true;
extraPackages = with pkgs; [
universal-ctags
rust-analyzer
];
extraConfig = ''
lua require("base")
'';
plugins = with pkgs.vimPlugins; [
2022-06-12 20:45:19 +00:00
{
plugin = nerdtree;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./nerdtree.lua}\")";
2022-06-12 20:45:19 +00:00
}
{
plugin = nerdtree-git-plugin;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./nerdtree-git.lua}\")";
2022-06-12 20:45:19 +00:00
}
2022-06-12 19:29:42 +00:00
vim-devicons
2022-06-12 20:45:19 +00:00
{
plugin = ctrlp-vim;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./ctrlp.lua}\")";
2022-06-12 20:45:19 +00:00
}
2022-06-12 19:29:42 +00:00
vim-nix
2022-06-12 20:45:19 +00:00
{
plugin = tagbar;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./tagbar.lua}\")";
2022-06-12 20:45:19 +00:00
}
{
plugin = vim-airline;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./airline.lua}\")";
2022-06-12 20:45:19 +00:00
}
2022-06-12 19:29:42 +00:00
copilot-vim
rust-vim # for proper syntax highlighting
2022-06-12 20:45:19 +00:00
{
plugin = nvim-lspconfig;
2022-06-12 20:54:08 +00:00
config = "lua dofile(\"${./lsp.lua}\")";
2022-06-12 20:45:19 +00:00
}
2022-06-12 19:59:53 +00:00
vim-gitgutter
2022-06-12 20:05:03 +00:00
nvim-web-devicons
2022-06-12 20:45:19 +00:00
{
plugin = bufferline-nvim;
config = "lua require(\"bufferline\").setup{}";
}
2022-06-12 19:29:42 +00:00
];
};
xdg.configFile."nvim/lua/base.lua".source = ./base.lua;
}