diff --git a/home/neovim.nix b/home/neovim.nix index 61cbb19..fbfae80 100644 --- a/home/neovim.nix +++ b/home/neovim.nix @@ -1,5 +1,7 @@ { pkgs, lib, inputs, config, ...}: -{ +let + undoDir = "${config.home.homeDirectory}/.vim/undo"; +in { programs.neovim = { enable = true; defaultEditor = true; @@ -41,6 +43,11 @@ set tabstop=2 set expandtab + set undofile + set undodir=${undoDir} + set undolevels=1000 + set undoreload=10000 + " Integrate status with lightline let g:lightline = { \ 'active': { @@ -117,4 +124,7 @@ map :noh ''; }; + + # Create undo directory + home.activation.vimUndoDir = lib.hm.dag.entryAfter ["writeBoundary"] "mkdir -p ${undoDir}"; }