feat: fancy neovim stuff

This commit is contained in:
Kat Inskip 2022-07-25 17:43:51 -07:00
parent 24a2c3028d
commit 3e5c3a2dd1
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
3 changed files with 211 additions and 61 deletions

View file

@ -1,7 +1,9 @@
{ config, lib, pkgs, nixos, ... }:
{
home.sessionVariables = lib.mkIf config.programs.neovim.enable { EDITOR = "nvim"; };
let
inherit (lib.modules) mkIf;
in {
home.sessionVariables = mkIf config.programs.neovim.enable { EDITOR = "nvim"; };
programs.neovim = {
enable = true;
@ -26,14 +28,40 @@
hop-nvim
# org-mode for vim
neorg
# Fonts
nvim-web-devicons
# Completion
nvim-cmp
# base16
nvim-base16
# Fuzzy Finder
telescope-nvim
# Buffers
bufferline-nvim
# Language Server
nvim-lspconfig
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins: with pkgs.tree-sitter-grammars; [
tree-sitter-c
tree-sitter-lua
tree-sitter-rust
tree-sitter-bash
tree-sitter-css
tree-sitter-dockerfile
tree-sitter-go
tree-sitter-hcl
tree-sitter-html
tree-sitter-javascript
tree-sitter-markdown
tree-sitter-nix
tree-sitter-norg
tree-sitter-python
tree-sitter-regex
tree-sitter-scss
]))
# Treesitter Plugins
nvim-ts-rainbow
nvim-treesitter-context
twilight-nvim
# Languages
vim-nix
vim-terraform
@ -41,9 +69,14 @@
extraPackages = with pkgs; [
# For nvim-lspconfig, Terraform Language Server
terraform-ls
# For tree-sitter
tree-sitter
nodejs
clang
clangStdenv.cc
];
extraConfig = ''
luafile ${./init.lua}
luafile ${./init.lua}
'';
};
}