{ user, home }: { inputs, ... }: { home-manager.users.${user} = { imports = [ inputs.nvf.homeManagerModules.default ]; programs = { nvf = { enable = true; defaultEditor = true; settings = { vim = { enableLuaLoader = true; viAlias = true; vimAlias = true; # autocomplete = { # blink-cmp.enable = true; # enableSharedCmpSources = true; # }; binds = { cheatsheet.enable = true; hardtime-nvim.enable = true; whichKey.enable = true; }; clipboard = { enable = true; providers.wl-copy.enable = true; registers = "unnamedplus"; }; comments = { comment-nvim.enable = true; }; # dashboard = { # alpha.enable = true; # }; filetree = { neo-tree = { enable = true; }; }; # formatter = { # conform-nvim.enable = true; # }; git = { enable = true; # git-conflict.enable = true; gitsigns.enable = true; # neogit.enable = true; }; languages = { enableDAP = true; enableFormat = true; enableTreesitter = true; enableExtraDiagnostics = true; assembly.enable = true; bash.enable = true; clang.enable = true; csharp.enable = true; css.enable = true; go.enable = true; html.enable = true; java.enable = true; lua.enable = true; markdown.enable = true; nix = { enable = true; format.type = "nixfmt"; }; php.enable = true; python.enable = true; rust.enable = true; sql.enable = true; svelte.enable = true; ts.enable = true; yaml.enable = true; }; lsp = { enable = true; formatOnSave = true; # nvim-docs-view.enable = true; # otter-nvim.enable = true; # trouble.enable = true; }; # minimap = { # codewindow.enable = true; # }; notify = { nvim-notify.enable = true; }; options = { tabstop = 2; shiftwidth = 2; expandtab = true; smartindent = true; }; # projects = { # project-nvim.enable = true; # }; searchCase = "smart"; # snippets = { # luasnip.enable = true; # }; # tabline = { # nvimBufferline.enable = true; # }; telescope = { enable = true; }; terminal = { toggleterm = { enable = true; }; }; treesitter = { enable = true; context.enable = true; fold = true; textobjects.enable = true; }; ui = { # breadcrumbs = { # enable = true; # navbuddy.enable = true; # }; colorizer.enable = true; # fastaction.enable = true; # illuminate.enable = true; }; undoFile.enable = true; utility = { # diffview-nvim.enable = true; # icon-picker.enable = true; # images = { # img-clip.enable = true; # }; # mkdir.enable = true; motion = { precognition.enable = true; }; # multicursors.enable = true; # nvim-biscuits.enable = true; # smart-splits.enable = true; # surround.enable = true; # undotree.enable = true; # yazi-nvim.enable = true; }; visuals = { # cinnamon-nvim.enable = true; # fidget-nvim.enable = true; # highlight-undo.enable = true; indent-blankline.enable = true; nvim-cursorline.enable = true; # nvim-scrollbar.enable = true; # nvim-web-devicons.enable = true; }; }; }; }; zsh.p10k.extraRightPromptElements = [ "vim_shell" ]; }; }; }