84 lines
1.7 KiB
Nix
84 lines
1.7 KiB
Nix
{...}: {
|
|
plugins.lualine = {
|
|
enable = true;
|
|
globalstatus = true;
|
|
theme = "gruvbox-material";
|
|
|
|
# Load our extensions
|
|
extensions = [
|
|
"neo-tree"
|
|
];
|
|
|
|
# Icons for our separators
|
|
componentSeparators = {
|
|
left = "";
|
|
right = "";
|
|
};
|
|
sectionSeparators = {
|
|
left = "";
|
|
right = "";
|
|
};
|
|
|
|
# Display components in tabline
|
|
tabline = {
|
|
lualine_a = [{name = "buffers";}];
|
|
lualine_x = [{name = "hostname";}];
|
|
lualine_z = [{name = "encoding";}];
|
|
};
|
|
|
|
# Lualine has sections as shown below
|
|
# +-------------------------------------------------+
|
|
# | A | B | C X | Y | Z |
|
|
# +-------------------------------------------------+
|
|
sections = {
|
|
# Section A
|
|
lualine_a = [{name = "mode";}];
|
|
|
|
# Section B
|
|
lualine_b = [
|
|
# Git branch
|
|
{
|
|
name = "branch";
|
|
icon = "";
|
|
}
|
|
|
|
# Git diff status
|
|
{
|
|
name = "diff";
|
|
extraConfig.symbols = {
|
|
added = "+";
|
|
modified = "~";
|
|
removed = "-";
|
|
};
|
|
}
|
|
];
|
|
|
|
# Section C
|
|
lualine_c = [{name = "filename";}];
|
|
|
|
# Section X
|
|
lualine_x = [
|
|
# Diagnostic count from nvim_lsp
|
|
{
|
|
name = "diagnostics";
|
|
extraConfig = {
|
|
sources = ["nvim_lsp"];
|
|
symbols = {
|
|
error = "error:";
|
|
warn = "warning:";
|
|
info = "info:";
|
|
hint = "hint:";
|
|
};
|
|
};
|
|
}
|
|
];
|
|
|
|
# Section Y
|
|
lualine_y = [{name = "progress";}];
|
|
|
|
# Section Z
|
|
lualine_z = [{name = "location";}];
|
|
};
|
|
};
|
|
}
|