Enable neovim through home-manager
- We need to set the default editor to just "nvim" not a particular path, as
this allows us to override nvim in our home
- Add the mapleader bind to the start of init.vim
- As the leader is interpreted whenever we make a keybind, we must have it at
the start or it won't be respected for some of our keybinds (but will be for
others)
- Package the scrollbar plugin and install it
- Setup configs for stuff like treesitter, theme, COC, scrollbar etc.
- Add git capabilities to neovim
- Install fugitive, gitgutter and git-conflict, along with some other basic git
stuff
- Allow mouse control in neovim
diff --git a/modules/neovim/git/default.nix b/modules/neovim/git/default.nix
new file mode 100644
index 0000000..30ebf70
--- /dev/null
+++ b/modules/neovim/git/default.nix
@@ -0,0 +1,18 @@
+{pkgs, lib, ...}: {
+ programs.neovim = {
+ extraConfig = ''
+ source ${./git-conflict.lua}
+ '' + lib.pipe [
+ ./lazygit.vim
+ ] [
+ (map builtins.readFile)
+ (builtins.concatStringsSep "\n")
+ ];
+ plugins = with pkgs.vimPlugins; [
+ vim-gitgutter
+ vim-fugitive
+ lazygit-nvim
+ pkgs.git-conflict-nvim
+ ];
+ };
+}