{config, ...}: { programs.nvf = { enable = true; settings = { vim = { theme = { enable = true; name = "base16"; }; viAlias = true; vimAlias = true; lsp = { enable = true; }; languages = { enableLSP = true; enableDAP = true; enableExtraDiagnostics = true; enableFormat = true; enableTreesitter = true; rust.enable = true; nix.enable = true; markdown.enable = true; java.enable = true; }; autocomplete.nvim-cmp = { enable = true; }; }; }; }; # Pulls stylix base16 colours into nvf for use in the vim theme. # This works for colours generated from the wallpaper, colours set manually and colours pulled from a base16Scheme yaml file. programs.nvf.settings.vim.theme.base16-colors = { base00 = "${config.lib.stylix.colors.base00}"; base01 = "${config.lib.stylix.colors.base01}"; base02 = "${config.lib.stylix.colors.base02}"; base03 = "${config.lib.stylix.colors.base03}"; base04 = "${config.lib.stylix.colors.base04}"; base05 = "${config.lib.stylix.colors.base05}"; base06 = "${config.lib.stylix.colors.base06}"; base07 = "${config.lib.stylix.colors.base07}"; base08 = "${config.lib.stylix.colors.base08}"; base09 = "${config.lib.stylix.colors.base09}"; base0A = "${config.lib.stylix.colors.base0A}"; base0B = "${config.lib.stylix.colors.base0B}"; base0C = "${config.lib.stylix.colors.base0C}"; base0D = "${config.lib.stylix.colors.base0D}"; base0E = "${config.lib.stylix.colors.base0E}"; base0F = "${config.lib.stylix.colors.base0F}"; }; }