config/users/natalie/vim.nix

32 lines
874 B
Nix
Raw Normal View History

2025-05-21 10:44:59 -07:00
{pkgs, ...}: {
2025-05-19 21:42:58 -07:00
imports = [
./vim/default.nix
];
2025-05-12 15:19:01 -07:00
vim = {
2025-05-21 10:44:59 -07:00
options = {
tabstop = 2;
softtabstop = 2;
shiftwidth = 2;
undofile = true;
swapfile = false;
showmode = false;
foldmethod = "expr";
foldexpr = "v:lua.vim.treesitter.foldexpr()";
};
autocmds = [
{
event = ["LspAttach"];
pattern = ["*"];
desc = "User: Set LSP folding if client supports it";
callback = pkgs.lib.generators.mkLuaInline ''function(ctx) local client = assert(vim.lsp.get_client_by_id(ctx.data.client_id)) if client:supports_method("textDocument/foldingRange") then local win = vim.api.nvim_get_current_win() vim.wo[win][0].foldexpr = "v:lua.vim.lsp.foldexpr()" end end'';
}
];
2025-05-12 15:19:01 -07:00
theme = {
name = "catppuccin";
style = "mocha";
};
2025-05-20 21:30:54 -07:00
hideSearchHighlight = true;
2025-05-12 15:19:01 -07:00
};
}