42 lines
1,010 B
Nix
42 lines
1,010 B
Nix
{pkgs, ...}: {
|
|
imports = [
|
|
./vim/default.nix
|
|
];
|
|
vim = {
|
|
options = {
|
|
tabstop = 2;
|
|
softtabstop = 2;
|
|
shiftwidth = 2;
|
|
undofile = true;
|
|
swapfile = false;
|
|
showmode = false;
|
|
foldlevel = 99;
|
|
foldcolumn = "1";
|
|
foldlevelstart = 99;
|
|
foldenable = true;
|
|
foldmethod = "expr";
|
|
#Default to treesitter folding
|
|
foldexpr = "v:lua.vim.treesitter.foldexpr()";
|
|
};
|
|
|
|
autocmds = [
|
|
{
|
|
event = ["LspAttach"];
|
|
callback = pkgs.lib.generators.mkLuaInline ''
|
|
function(args)
|
|
local client = vim.lsp.get_client_by_id(args.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
|
|
'';
|
|
}
|
|
];
|
|
theme = {
|
|
name = "catppuccin";
|
|
style = "mocha";
|
|
};
|
|
hideSearchHighlight = true;
|
|
};
|
|
}
|