fix: Configure Neovim using a wrappers

This commit is contained in:
Madeleine Sydney
2024-12-29 19:59:56 -07:00
parent 4f3d5579e7
commit 8b86c01550
2 changed files with 50 additions and 12 deletions

View File

@@ -1,12 +1,31 @@
{ config, lib, pkgs, ... }:
{
home.file.".vimrc".text = ''
imap jk <ESC>
xmap JK <ESC>
'';
let
my-vimrc =
pkgs.writeTextFile {
name = "vimrc";
text = ''
imap jk <ESC>
xmap JK <ESC>
set number
set relativenumber
'';
};
xdg.configFile."nvim/init.vim".text = ''
so ~/.vimrc
'';
my-neovim =
pkgs.symlinkJoin {
name = "neovim";
paths = [ pkgs.neovim ];
buildInputs = [ pkgs.makeWrapper ];
postBuild = ''
wrapProgram $out/bin/nvim \
--add-flags "-u ${my-vimrc}"
# Symlink {v,vi,vim} to nvim.
for i in {v,vi,vim}; do
ln -s $out/bin/nvim $out/bin/$i
done
'';
};
in {
home.packages = [ my-neovim ];
}