From e1ccc891650e3494355e5bcc70254a8e2f5fbd0b Mon Sep 17 00:00:00 2001 From: schererleander Date: Sun, 11 May 2025 02:07:58 +0200 Subject: use nvf --- modules/nvf.nix | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 modules/nvf.nix (limited to 'modules/nvf.nix') diff --git a/modules/nvf.nix b/modules/nvf.nix new file mode 100644 index 0000000..791b211 --- /dev/null +++ b/modules/nvf.nix @@ -0,0 +1,90 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.nvf; +in { + options.nvf.enable = lib.mkEnableOption "Setup nvf"; + + config = lib.mkIf cfg.enable { + programs.nvf = { + enable = true; + settings = { + vim = { + theme.enable = true; + theme.name = "gruvbox"; + theme.transparent = true; + theme.style = "dark"; + + options = { + tabstop = 2; + shiftwidth = 2; + expandtab = true; + autoindent = true; + mouse = "a"; + }; + + telescope.enable = true; + autocomplete.nvim-cmp.enable = true; + + mini = { + starter = { + enable = true; + setupOpts = { + header = " /l、 \n" + + "(゚、 。 7 \n" + + " l ~ ヽ \n" + + " じしf_,)ノ \n"; + footer = " "; + }; + }; + }; + + autopairs.nvim-autopairs = { + enable = true; + }; + + git.enable = true; + + lsp = { + enable = true; + + formatOnSave = true; + lspkind.enable = true; + }; + + languages = { + enableTreesitter = true; + + nix.enable = true; + }; + + visuals = { + nvim-web-devicons.enable = true; + }; + + snippets.luasnip.enable = true; + + binds = { + whichKey.enable = true; + cheatsheet.enable = true; + }; + + ui = { + borders.enable = false; + }; + + autocmds = [ + { + enable = true; + event = ["VimEnter"]; + command = "highlight Statusline guibg=none | highlight StatuslineNC guibg=none"; + desc = "Transparent statusline"; + } + ]; + + statusline.lualine.enable = true; + }; + }; + }; + }; +} -- cgit v1.3.1