nvf/modules/statusline/lualine/config.nix
2023-02-03 21:50:06 +03:00

95 lines
2 KiB
Nix

{
pkgs,
config,
lib,
...
}:
with lib; {
config = {
vim.statusline.lualine = {
enable = mkDefault false;
icons = mkDefault true;
theme = mkDefault "auto";
sectionSeparator = {
left = mkDefault "";
right = mkDefault "";
};
componentSeparator = {
left = mkDefault "";
right = mkDefault "";
};
activeSection = {
# left side of the statusline 4
a = mkDefault "{'mode'}";
b = mkDefault ''
{
{
"filename",
color = {bg='none'},
symbols = {modified = '', readonly = ''},
},
}
'';
c = mkDefault ''
{
{
"branch",
icon = ' ',
separator = { left = '(', right = ')'},
},
}
'';
# right side of the statusline (x, y, z)
x = mkDefault ''
{
{
"diagnostics",
sources = {'nvim_lsp', 'nvim_diagnostic'},
symbols = {error = '', warn = '', info = '', hint = ''}
},
}
'';
y = mkDefault ''
{
{
"fileformat",
color = {bg='none'}
},
}
'';
z = mkDefault ''
{
{
"progress",
color = {
bg='none',
fg='lavender'
}
},
{
"location",
color = {bg='none', fg='lavender'},
},
{
"filetype",
color = {bg='none', fg='lavender'},
},
}
'';
};
inactiveSection = {
a = mkDefault "{}";
b = mkDefault "{}";
c = mkDefault "{'filename'}";
x = mkDefault "{'location'}";
y = mkDefault "{}";
z = mkDefault "{}";
};
};
};
}