nixos/home/editor/neovim/default.nix

64 lines
1.3 KiB
Nix
Raw Normal View History

2024-02-27 21:20:00 +00:00
{ pkgs, ... }: {
2024-02-27 11:12:40 +00:00
programs = {
neovim = {
enable = true;
defaultEditor = true;
2024-02-27 21:16:39 +00:00
vimAlias = true;
plugins = with pkgs.vimPlugins; [
vim-fugitive
2024-02-27 21:20:00 +00:00
undotree
telescope-nvim
2024-02-28 01:46:28 +00:00
nvim-cmp
2024-02-28 02:40:13 +00:00
cmp-nvim-lsp
2024-02-28 01:46:28 +00:00
nvim-lspconfig
2024-02-28 01:50:10 +00:00
lsp-zero-nvim
2024-02-28 02:40:13 +00:00
vim-floaterm
luasnip
2024-03-05 07:26:26 +00:00
cmp_luasnip
2024-02-28 09:01:01 +00:00
lualine-nvim
vim-sleuth
2024-03-05 07:26:26 +00:00
copilot-lua
copilot-cmp
cmp-cmdline
cmp-buffer
catppuccin-nvim
2024-02-27 21:20:00 +00:00
(nvim-treesitter.withPlugins (p: [
2024-02-28 09:01:01 +00:00
p.tree-sitter-yaml
2024-02-27 21:20:00 +00:00
p.tree-sitter-nix
p.tree-sitter-go
2024-02-28 09:01:01 +00:00
p.tree-sitter-lua
2024-02-27 21:20:00 +00:00
p.tree-sitter-vim
p.tree-sitter-bash
p.tree-sitter-json
p.tree-sitter-python
2024-05-12 21:12:10 +00:00
p.tree-sitter-c
p.tree-sitter-cmake
p.tree-sitter-cpp
2024-02-27 21:20:00 +00:00
]))
2024-02-27 21:16:39 +00:00
];
extraLuaConfig = ''
${builtins.readFile ./options.lua}
2024-02-28 01:46:28 +00:00
${builtins.readFile ./plugins.lua}
${builtins.readFile ./keybinds.lua}
2024-02-27 21:16:39 +00:00
'';
2024-02-27 11:12:40 +00:00
};
};
2024-02-27 21:16:39 +00:00
home.packages = with pkgs; [
# nix stuff
2024-02-27 21:48:45 +00:00
nixpkgs-fmt
2024-02-27 21:16:39 +00:00
statix
2024-02-28 01:46:28 +00:00
# LSPs
gopls
2024-06-09 00:27:10 +00:00
pyright
2024-02-28 01:46:28 +00:00
nodePackages.typescript-language-server
2024-03-05 21:54:24 +00:00
nodePackages.typescript
2024-02-28 01:46:28 +00:00
nil
yaml-language-server
2024-03-05 21:49:06 +00:00
lua-language-server
2024-05-12 15:05:05 +00:00
clang-tools
2024-05-20 00:42:23 +00:00
zls
2024-02-27 21:16:39 +00:00
];
2024-02-27 11:12:40 +00:00
home.sessionVariables.EDITOR = "nvim";
}