{ nixvim, pkgs, ... }: { imports = [ nixvim.nixosModules.nixvim ./plugins ./keymaps.nix ./lsp.nix ]; programs.nixvim = { enable = false; defaultEditor = true; clipboard.register = "unnamedplus"; opts = { number = true; relativenumber = true; expandtab = true; shiftwidth = 2; smartindent = true; tabstop = 2; softtabstop = 2; fillchars.eob = " "; ignorecase = true; smartcase = true; mouse = "a"; }; # colorschemes.nightfox = { # enable = true; # settings = { # # style = "moon"; # flavor = "carbonfox"; # options.transparent = true; # styles = { # sidebars = "transparent"; # floats = "transparent"; # }; # }; # }; colorschemes.base16 = { enable = true; settings = { base00 = "11121d"; base01 = "282934"; base02 = "353747"; # slightly lighter than base01 (or reuse 282934) base03 = "565b6b"; # comment color; you'll probably want to tweak this base04 = "abb2bf"; base05 = "abb2bf"; base06 = "b2b9c6"; base07 = "ffffff"; base08 = "ee6d85"; base09 = "f3627a"; base0A = "dfae67"; base0B = "95c561"; base0C = "a485dd"; # no cyan in your palette, so purple works base0D = "7199ee"; base0E = "a485dd"; base0F = "f3627a"; }; }; extraPlugins = [ pkgs.vimPlugins.boole-nvim ]; extraConfigLua = '' require('boole').setup({ mappings = { -- increment = '', decrement = '' }, allow_caps_additions = { {'enable', 'disable'}, {'true', 'false'} } }) ''; plugins = { lualine.enable = true; bufferline = { enable = true; settings = { options = { show_buffer_close_icons = false; show_close_icon = false; }; }; }; yazi.enable = true; cord = { enable = true; settings.display.theme = "atom"; }; neoscroll.enable = true; telescope = { enable = true; enabledExtensions = [ "persisted" ]; }; which-key.enable = true; flash.enable = true; lsp.enable = true; fugitive.enable = true; treesitter = { enable = true; highlight.enable = true; indent.enable = true; settings.ensure_installed = "all"; }; gitsigns.enable = true; nvim-autopairs = { enable = true; }; cmp = { autoEnableSources = true; settings.sources = [ { name = "nvim_lsp"; } { name = "path"; } { name = "buffer"; } ]; }; persisted.enable = true; render-markdown.enable = true; transparent = { enable = true; autoLoad = true; settings = { groups = [ "Normal" "NormalNC" "Comment" "Constant" "Special" "Identifier" "Statement" "PreProc" "Type" "Underlined" "Todo" "String" "Function" "Conditional" "Repeat" "Operator" "Structure" "LineNr" "NonText" "SignColumn" "CursorLine" "CursorLineNr" "StatusLine" "StatusLineNC" "EndOfBuffer" ]; }; }; }; }; }