134 lines
5.2 KiB
Lua
134 lines
5.2 KiB
Lua
--[[
|
||
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠚⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠗⢀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣤⣀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣶⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣶⣤
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠐⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⠂
|
||
⠀⠀⠀⠀⢀⣠⣴⣆⡈⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠃⠘⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢁⣰⣦⣄⡀
|
||
⠀⠀⠐⠾⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠷⠂
|
||
⠀⢸⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⡇
|
||
⠀⢸⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⡇
|
||
⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⡆⢰⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠃⠘⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⡇⢸⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⡇⢸⠿⠛⠉
|
||
|
||
__ _ _
|
||
/ _|___ ___| |_ __ _ ___| | __
|
||
| ||_ /____/ __| __/ _` |/ __| |/ /
|
||
| _/ /_____\__ \ || (_| | (__| <
|
||
|_|/___| |___/\__\__,_|\___|_|\_\
|
||
|
||
Neovim 0.12 configuration
|
||
(c) Frank Zechert 2026
|
||
]]
|
||
|
||
local function expandtabs()
|
||
if not vim.bo.expandtab then
|
||
return string.format("%s %d", vim.g.ui.listchars.leadtab, vim.bo.tabstop)
|
||
else
|
||
local width = vim.bo.shiftwidth
|
||
if width == 0 then
|
||
width = vim.bo.tabstop
|
||
end
|
||
return string.format("%s %d", vim.g.ui.listchars.nbsp, width)
|
||
end
|
||
end
|
||
|
||
local function windownumber()
|
||
return string.format("%s %s", vim.g.ui.symbols.window, vim.fn.winnr())
|
||
end
|
||
|
||
local function treesitter_status()
|
||
local ok, parser = pcall(vim.treesitter.get_parser, 0)
|
||
if not ok or not parser then
|
||
return ""
|
||
else
|
||
return "T"
|
||
end
|
||
end
|
||
|
||
return {
|
||
{
|
||
"nvim-lualine/lualine.nvim",
|
||
dependencies = {
|
||
{ "nvim-tree/nvim-web-devicons" },
|
||
},
|
||
lazy = false,
|
||
opts = {
|
||
options = {
|
||
component_separators = vim.g.ui.symbols.component_separators,
|
||
section_separators = vim.g.ui.symbols.section_separators,
|
||
globalstatus = false,
|
||
refresh = {
|
||
refresh_time = 33, -- ~30 fps
|
||
}
|
||
},
|
||
sections = {
|
||
lualine_a = { "mode" },
|
||
lualine_b = { "searchcount", "selectioncount" },
|
||
lualine_c = {
|
||
{ "filename", file_status = true, newfile_status = true, path = 1 },
|
||
},
|
||
lualine_x = {
|
||
"encoding",
|
||
{ "fileformat", icons_enabled = true, symbols = { unix = "LF", dos = "CRLF", mac = "CR" } },
|
||
expandtabs,
|
||
"filesize"
|
||
},
|
||
lualine_y = {},
|
||
lualine_z = { "location", "progress" },
|
||
},
|
||
inactive_sections = {
|
||
lualine_a = {},
|
||
lualine_b = {},
|
||
lualine_c = {
|
||
{ "filename", file_status = true, newfile_status = true, path = 1 },
|
||
},
|
||
lualine_x = {
|
||
"encoding",
|
||
{ "fileformat", icons_enabled = true, symbols = { unix = "LF", dos = "CRLF", mac = "CR" } },
|
||
expandtabs,
|
||
"filesize",
|
||
},
|
||
lualine_y = {},
|
||
lualine_z = { "location", "progress" },
|
||
},
|
||
tabline = {
|
||
lualine_a = {
|
||
{ "buffers", mode = 2, use_mode_colors = true },
|
||
},
|
||
lualine_b = {},
|
||
lualine_c = {},
|
||
lualine_x = {},
|
||
lualine_y = {},
|
||
lualine_z = {
|
||
{ "tabs", mode = 0, use_mode_colors = true },
|
||
},
|
||
},
|
||
winbar = {
|
||
lualine_a = { windownumber },
|
||
lualine_b = { "filename", "filetype" },
|
||
lualine_c = { "diagnostics" },
|
||
lualine_x = { treesitter_status },
|
||
lualine_y = { "branch", "diff" },
|
||
lualine_z = {},
|
||
},
|
||
inactive_winbar = {
|
||
lualine_a = { windownumber },
|
||
lualine_b = {},
|
||
lualine_c = {},
|
||
lualine_x = {},
|
||
lualine_y = {},
|
||
lualine_z = {},
|
||
}
|
||
}
|
||
}
|
||
}
|