feat: add `vimdiffAlias` and `nvimdiffAlias` mkNeovimPkg options
parent
359462b075
commit
a396afc2c4
20
README.md
20
README.md
|
|
@ -128,15 +128,17 @@ sloth-flake.lib.mkNeovimPkg {
|
||||||
|
|
||||||
Here's a list of all accepted arguments
|
Here's a list of all accepted arguments
|
||||||
|
|
||||||
| name | default | description |
|
| name | default | description |
|
||||||
|-------------------------|-------------------------|----------------------------------------------------------|
|
|-------------------------|-------------------------|----------------------------------------------------------------|
|
||||||
| `pkgs` | N/A | The nixpkgs set. **REQUIRED** |
|
| `pkgs` | N/A | The nixpkgs set. **REQUIRED** |
|
||||||
| `package` | `pkgs.neovim-unwrapped` | The unwrapped neovim package to use |
|
| `package` | `pkgs.neovim-unwrapped` | The unwrapped neovim package to use |
|
||||||
| `runtime` | `{}` | Your Runtime configuration (see below) |
|
| `runtime` | `{}` | Your Runtime configuration (see below) |
|
||||||
| `dependencies` | `[]` | A list of your dependencies (see below) |
|
| `dependencies` | `[]` | A list of your dependencies (see below) |
|
||||||
| `dependenciesExtraArgs` | `{}` | Extra arguments to load your dependencies in other files |
|
| `dependenciesExtraArgs` | `{}` | Extra arguments to load your dependencies in other files |
|
||||||
| `viAlias` | `false` | Wether to create a `vi` alias to run neovim |
|
| `viAlias` | `false` | Wether to create a `vi` alias to run neovim |
|
||||||
| `vimAlias` | `false` | Wether to create a `vim` alias to run neovim |
|
| `vimAlias` | `false` | Wether to create a `vim` alias to run neovim |
|
||||||
|
| `vimdiffAlias` | `false` | Wether to create a `vimdiff` alias to run neovim in diff mode |
|
||||||
|
| `nvimdiffAlias` | `false` | Wether to create a `nvimdiff` alias to run neovim in diff mode |
|
||||||
|
|
||||||
The Runtime configuration object accepts the following properties:
|
The Runtime configuration object accepts the following properties:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,10 +9,14 @@
|
||||||
runtime ? {},
|
runtime ? {},
|
||||||
viAlias ? false,
|
viAlias ? false,
|
||||||
vimAlias ? false,
|
vimAlias ? false,
|
||||||
|
vimdiffAlias ? false,
|
||||||
|
nvimdiffAlias ? false,
|
||||||
...
|
...
|
||||||
} @ config: let
|
} @ config: let
|
||||||
inherit (builtins) map;
|
inherit (builtins) map;
|
||||||
inherit (pkgs) callPackage;
|
inherit (pkgs) callPackage bash lib;
|
||||||
|
inherit (lib.strings) optionalString;
|
||||||
|
inherit (lib.trivial) flip;
|
||||||
# inherit (lib.lists) concatMap filter foldl' map optional reverseList;
|
# inherit (lib.lists) concatMap filter foldl' map optional reverseList;
|
||||||
# inherit (lib.attrsets) attrNames optionalAttrs;
|
# inherit (lib.attrsets) attrNames optionalAttrs;
|
||||||
# inherit (lib.strings) concatStringsSep fileContents hasSuffix removePrefix removeSuffix replaceStrings;
|
# inherit (lib.strings) concatStringsSep fileContents hasSuffix removePrefix removeSuffix replaceStrings;
|
||||||
|
|
@ -48,5 +52,18 @@
|
||||||
removeAttrs neovimConfig ["manifestRc" "neovimRcContent"]
|
removeAttrs neovimConfig ["manifestRc" "neovimRcContent"]
|
||||||
// {inherit viAlias vimAlias;};
|
// {inherit viAlias vimAlias;};
|
||||||
pkg = pkgs.wrapNeovimUnstable package params;
|
pkg = pkgs.wrapNeovimUnstable package params;
|
||||||
|
mkDiffAlias = name:
|
||||||
|
(flip optionalString) ''
|
||||||
|
cat <<SH > $out/bin/${name}
|
||||||
|
#!${bash}/bin/bash
|
||||||
|
exec $out/bin/nvim -d "\''${@}"
|
||||||
|
SH
|
||||||
|
chmod 555 $out/bin/${name}
|
||||||
|
'';
|
||||||
in
|
in
|
||||||
builtins.seq (types.mkNeovimPkgOptions config) pkg
|
builtins.seq (types.mkNeovimPkgOptions config) (pkg.overrideAttrs (final: super: {
|
||||||
|
postBuild =
|
||||||
|
super.postBuild
|
||||||
|
+ (mkDiffAlias "vimdiff" vimdiffAlias)
|
||||||
|
+ (mkDiffAlias "nvimdiff" nvimdiffAlias);
|
||||||
|
}))
|
||||||
|
|
|
||||||
|
|
@ -92,5 +92,11 @@
|
||||||
|
|
||||||
# Create a vim alias
|
# Create a vim alias
|
||||||
vimAlias = option bool;
|
vimAlias = option bool;
|
||||||
|
|
||||||
|
# Create a vimdiff alias to run neovim in diff mode
|
||||||
|
vimdiffAlias = option bool;
|
||||||
|
|
||||||
|
# Create a nvimdiff alias to run neovim in diff mode
|
||||||
|
nvimdiffAlias = option bool;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue