This repository has been archived on 2024-12-15. You can view files and clone it, but cannot push or open issues or pull requests.
nixos-config/home-manager/neovim/default.nix
2022-07-13 16:01:51 +02:00

104 lines
2.4 KiB
Nix

{ config, lib, pkgs, user, ... }:
{
home.packages = with pkgs; [
xclip
# LSP
sumneko-lua-language-server
rnix-lsp
terraform-ls
tflint
nodePackages.bash-language-server
rust-analyzer
nodePackages.yaml-language-server
];
programs = {
neovim = {
enable = true;
plugins = with pkgs.vimPlugins; [
# theme
nvim-solarized-lua
delimitMate
vim-bbye
ansible-vim
# session handling
vim-obsession
vim-prosession
nvim-treesitter
markdown-preview-nvim # use({ "iamcco/markdown-preview.nvim", run = ":call mkdp#util#install()" })
toggleterm-nvim
nvim-notify
comment-nvim
lualine-nvim
tabline-nvim
indent-blankline-nvim
plenary-nvim
vim-illuminate
registers-nvim
# git
gitsigns-nvim
vim-fugitive
gv-vim
# snippets
friendly-snippets
luasnip
# auto-completion
nvim-cmp
cmp-nvim-lsp
cmp-buffer
cmp-path
cmp-cmdline
cmp-nvim-lua
cmp_luasnip
cmp-calc
# telescope
telescope-nvim
telescope-fzf-native-nvim
telescope-ui-select-nvim
# LSP
nvim-lspconfig
lsp-status-nvim
rust-tools-nvim
lua-dev-nvim
];
extraConfig = ''
lua << EOF
vim.o.guifont = "DejaVu Sans Mono:h8"
if vim.g.neovide then
vim.g.neovide_cursor_animation_length = 0.01
vim.g.neovide_cursor_trail_length = 0.01
end
${builtins.readFile ./keymaps.lua }
${builtins.readFile ./options.lua }
${builtins.readFile ./treesitter.lua }
${builtins.readFile ./lspconfig.lua }
${builtins.readFile ./toggleterm.lua }
${builtins.readFile ./notify.lua }
${builtins.readFile ./comment.lua }
${builtins.readFile ./lualine.lua }
${builtins.readFile ./tabline.lua }
${builtins.readFile ./indent-blankline.lua }
${builtins.readFile ./gitsigns.lua }
${builtins.readFile ./luasnip.lua }
${builtins.readFile ./nvim-cmp.lua }
${builtins.readFile ./telescope.lua }
${builtins.readFile ./themes.lua }
EOF
'';
};
};
}