11.stylix/modules/vim.nix
2020-12-20 19:36:37 +00:00

35 lines
789 B
Nix

{ pkgs, config, ... }:
let
base16-vim = pkgs.fetchFromGitHub {
owner = "chriskempson";
repo = "base16-vim";
rev = "6191622d5806d4448fa2285047936bdcee57a098";
sha256 = "6FsT87qcl9GBxgxrPx2bPULIMA/O8TRxHaN49qMM4uM=";
};
themePlugin = pkgs.vimUtils.buildVimPlugin {
name = "stylix";
src = base16-vim;
data = config.lib.stylix.base16.json;
passAsFile = [ "data" ];
buildPhase = ''
mkdir -p $out/colors
${pkgs.mustache-go}/bin/mustache $dataPath \
$src/templates/default.mustache > $out/colors/base16-stylix.vim
'';
};
vimOptions = {
plugins = [ themePlugin ];
extraConfig = "colorscheme base16-stylix";
};
in {
stylix.homeModule = {
programs.vim = vimOptions;
programs.neovim = vimOptions;
};
}