{ pkgs, config, lib, inputs, ... }: let inherit (config.lib.stylix) colors; in { imports = [ inputs.nvf.homeManagerModules.default ]; programs.nvf = { enable = true; settings.vim = { useSystemClipboard = true; viAlias = true; vimAlias = true; theme = { enable = true; name = "base16"; style = "dark"; base16-colors = { inherit (colors) base00 base01 base02 base03 base04 base05 base06 base07; inherit (colors) base08 base09 base0A base0B base0C base0D base0E base0F; }; transparent = true; }; options = { tabstop = 2; expandtab = true; softtabstop = 2; shiftwidth = 2; }; lsp = { formatOnSave = true; }; visuals = { nvim-scrollbar.enable = true; nvim-web-devicons.enable = true; nvim-cursorline.enable = true; fidget-nvim.enable = true; }; statusline.lualine.enable = true; autopairs.nvim-autopairs.enable = true; autocomplete.nvim-cmp.enable = true; tabline = { nvimBufferline = { enable = true; mappings = { cycleNext = ""; }; setupOpts.options = { numbers = { _type = "lua-inline"; expr = '' function(opts) return string.format('%s', opts.id) end ''; }; }; }; }; ui = { borders.enable = true; colorizer.enable = true; }; binds.whichKey.enable = true; treesitter.context.enable = false; dashboard = { dashboard-nvim.enable = true; }; languages = { enableLSP = true; enableTreesitter = true; enableFormat = true; nix.enable = true; python = { enable = true; # lsp.server = "pyright"; }; go.enable = true; bash.enable = true; css.enable = true; html.enable = true; lua.enable = true; }; lazy.plugins = { "vim-tmux-navigator" = { package = pkgs.vimPlugins.vim-tmux-navigator; setupModule = "vim-tmux-navigator"; cmd = [ "TmuxNavigateLeft" "TmuxNavigateDown" "TmuxNavigateUp" "TmuxNavigateRight" "TmuxNavigatePrevious" "TmuxNavigatorProcessList" ]; keys = [ { key = ""; mode = "n"; action = "TmuxNavigateLeft"; } { key = ""; mode = "n"; action = "TmuxNavigateDown"; } { key = ""; mode = "n"; action = "TmuxNavigateUp"; } { key = ""; mode = "n"; action = "TmuxNavigateRight"; } { key = ""; mode = "n"; action = "TmuxNavigatePrevious"; } ]; }; }; }; }; }