{ 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; showmode = false; fillchars.eob = " "; ignorecase = true; smartcase = true; mouse = "a"; }; extraPlugins = with pkgs.vimPlugins; [ boole-nvim tokyodark-nvim ]; extraConfigLua = '' require('boole').setup({ mappings = { -- increment = '', decrement = '' }, allow_caps_additions = { {'enable', 'disable'}, {'true', 'false'} } }) require('tokyodark').setup({ gamma = 0.9, transparent_background = true, terminal_colors = false, custom_highlights = function(_, palette) return { ["@variable"] = { fg = "#A0A8CD", }, } end, }) vim.cmd.colorscheme("tokyodark") ''; plugins = { lualine.enable = true; bufferline = { enable = true; settings = { options = { show_buffer_close_icons = false; show_close_icon = false; themable = true; separator_style = "thin"; indicator.style = "none"; always_show_bufferline = false; color_icons = true; show_buffer_icons = true; }; # highlights = { # fill.bg = "NONE"; # separator.fg = "NONE"; # separator_selected.fg = "NONE"; # separator_visible.fg = "NONE"; # }; }; }; 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; oil = { enable = true; settings = { view_options = { show_hidden = true; }; }; }; colorizer.enable = true; }; }; }