mirror of
https://github.com/Dichgrem/DCGOS.git
synced 2025-12-17 03:31:59 -05:00
feat:add_nixvim
This commit is contained in:
95
home/nixvim/plugins/ui/ufo.nix
Normal file
95
home/nixvim/plugins/ui/ufo.nix
Normal file
@@ -0,0 +1,95 @@
|
||||
{lib, ...}: {
|
||||
autoCmd = [
|
||||
{
|
||||
event = [
|
||||
"BufEnter"
|
||||
"BufNew"
|
||||
];
|
||||
desc = "disable statuscolumn for neo-tree and dashboard";
|
||||
callback = lib.nixvim.mkRaw ''
|
||||
function()
|
||||
local ft_ignore = { "dashboard", "neo-tree" }
|
||||
if vim.tbl_contains(ft_ignore, vim.bo.filetype) then
|
||||
vim.cmd("setlocal foldcolumn=0")
|
||||
end
|
||||
end
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
plugins = {
|
||||
statuscol = {
|
||||
enable = true;
|
||||
settings = {
|
||||
relculright = true;
|
||||
ft_ignore = [
|
||||
"dashboard"
|
||||
"neo-tree"
|
||||
];
|
||||
segments = [
|
||||
{
|
||||
click = "v:lua.ScFa";
|
||||
text = [(lib.nixvim.mkRaw "require('statuscol.builtin').foldfunc")];
|
||||
}
|
||||
{
|
||||
click = "v:lua.ScSa";
|
||||
text = [" %s"];
|
||||
}
|
||||
{
|
||||
click = "v:lua.ScLa";
|
||||
text = [
|
||||
(lib.nixvim.mkRaw "require('statuscol.builtin').lnumfunc")
|
||||
" "
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
nvim-ufo = {
|
||||
enable = true;
|
||||
settings = {
|
||||
provider_selector =
|
||||
# lua
|
||||
''
|
||||
function()
|
||||
return { "lsp", "indent" }
|
||||
end
|
||||
'';
|
||||
preview.mappings = {
|
||||
close = "q";
|
||||
switch = "K";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
opts = {
|
||||
foldcolumn = "1";
|
||||
foldlevel = 99;
|
||||
foldlevelstart = 99;
|
||||
foldenable = true;
|
||||
fillchars = lib.nixvim.mkRaw "[[eob: ,fold: ,foldopen:,foldsep: ,foldclose:]]";
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
mode = "n";
|
||||
key = "zR";
|
||||
action = lib.nixvim.mkRaw "function() require('ufo').openAllFolds() end";
|
||||
options.desc = "open all folds";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "zM";
|
||||
action = lib.nixvim.mkRaw "function() require('ufo').closeAllFolds() end";
|
||||
options.desc = "close all folds";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "zK";
|
||||
action = lib.nixvim.mkRaw "function() local winid = require('ufo').peekFoldedLinesUnderCursor() if not winid then vim.lsp.buf.hover() end end";
|
||||
options.desc = "Peek Folded Lines";
|
||||
}
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user