48 lines
1.2 KiB
Nix
48 lines
1.2 KiB
Nix
inputs @ { options
|
|
, config
|
|
, lib
|
|
, pkgs
|
|
, ...
|
|
}:
|
|
with lib;
|
|
with lib.plusultra; let
|
|
cfg = config.plusultra.cli-apps.neovim;
|
|
in
|
|
{
|
|
options.plusultra.cli-apps.neovim = with types; {
|
|
enable = mkBoolOpt false "Whether or not to enable neovim.";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
environment.systemPackages = with pkgs; [
|
|
# FIXME: As of today (2022-12-09), `page` no longer works with my Neovim
|
|
# configuration. Either something in my configuration is breaking it or `page` is busted.
|
|
# page
|
|
plusultra.neovim
|
|
];
|
|
|
|
environment.variables = {
|
|
# PAGER = "page";
|
|
# MANPAGER =
|
|
# "page -C -e 'au User PageDisconnect sleep 100m|%y p|enew! |bd! #|pu p|set ft=man'";
|
|
PAGER = "less";
|
|
MANPAGER = "less";
|
|
NPM_CONFIG_PREFIX = "$HOME/.npm-global";
|
|
EDITOR = "nvim";
|
|
};
|
|
|
|
plusultra.home = {
|
|
configFile = {
|
|
"dashboard-nvim/.keep".text = "";
|
|
};
|
|
|
|
extraOptions = {
|
|
# Use Neovim for Git diffs.
|
|
programs.zsh.shellAliases.vimdiff = "nvim -d";
|
|
programs.bash.shellAliases.vimdiff = "nvim -d";
|
|
programs.fish.shellAliases.vimdiff = "nvim -d";
|
|
};
|
|
};
|
|
};
|
|
}
|