mirror of
https://github.com/boxpositron/absolute-vim.git
synced 2026-02-28 19:50:38 +00:00
feat(lsp-config.lua): Add configurations for various language servers and setup custom key mappings and settings for improved development experience. feat(lualine.lua, mason.lua, mini-diff.lua, mini.lua, notify.lua, nvim-bqf.lua, nvim-cmp.lua, nvim-silicon.lua, nvim-surround.lua): Add new Lua files and configurations for lualine theme, mason setup, mini-diff, mini map integrations, notify setup, nvim-bqf, nvim-cmp autocompletion, nvim-silicon screenshot, and nvim-surround setup. feat(nvim-tree.lua): add custom configurations for Nvim Tree plugin feat(nvim-treesitter-context.lua): implement Treesitter Context plugin setup feat(nvim-treesitter.lua): configure Nvim Treesitter with specific parsers and features feat(poet-v.lua): set up Poet-V plugin with custom settings feat(smear-cursor.lua): integrate Smear Cursor plugin with defined options feat(tailwind-sorter.lua): initialize Tailwind Sorter plugin with save patterns and settings feat(telescope.lua): add custom settings and extensions to improve Telescope functionality feat(venv-selector.lua): add venv-selector setup and key mappings for VenvSelector and VenvSelectCached to enhance venv management.
98 lines
2.2 KiB
Lua
98 lines
2.2 KiB
Lua
local lualine = require("lualine")
|
|
local lazy_status = require("lazy.status") -- to configure lazy pending updates count
|
|
|
|
local colors = {
|
|
blue = "#65D1FF",
|
|
green = "#3EFFDC",
|
|
violet = "#FF61EF",
|
|
yellow = "#FFDA7B",
|
|
red = "#FF4A4A",
|
|
fg = "#c3ccdc",
|
|
bg = "#112638",
|
|
inactive_bg = "#2c3043",
|
|
}
|
|
|
|
local my_lualine_theme = {
|
|
normal = {
|
|
a = { bg = colors.blue, fg = colors.bg, gui = "bold" },
|
|
b = { bg = colors.bg, fg = colors.fg },
|
|
c = { bg = colors.bg, fg = colors.fg },
|
|
},
|
|
insert = {
|
|
a = { bg = colors.green, fg = colors.bg, gui = "bold" },
|
|
b = { bg = colors.bg, fg = colors.fg },
|
|
c = { bg = colors.bg, fg = colors.fg },
|
|
},
|
|
visual = {
|
|
a = { bg = colors.violet, fg = colors.bg, gui = "bold" },
|
|
b = { bg = colors.bg, fg = colors.fg },
|
|
c = { bg = colors.bg, fg = colors.fg },
|
|
},
|
|
command = {
|
|
a = { bg = colors.yellow, fg = colors.bg, gui = "bold" },
|
|
b = { bg = colors.bg, fg = colors.fg },
|
|
c = { bg = colors.bg, fg = colors.fg },
|
|
},
|
|
replace = {
|
|
a = { bg = colors.red, fg = colors.bg, gui = "bold" },
|
|
b = { bg = colors.bg, fg = colors.fg },
|
|
c = { bg = colors.bg, fg = colors.fg },
|
|
},
|
|
inactive = {
|
|
a = { bg = colors.inactive_bg, fg = colors.semilightgray, gui = "bold" },
|
|
b = { bg = colors.inactive_bg, fg = colors.semilightgray },
|
|
c = { bg = colors.inactive_bg, fg = colors.semilightgray },
|
|
},
|
|
}
|
|
|
|
function GetPoetvStatusLine()
|
|
-- Get the poetv statusline
|
|
-- If poetv is not active, return empty string
|
|
|
|
if IsPoetvActive() then
|
|
local poetv_name = vim.g.poetv_name
|
|
local poetv_statusline_symbol = vim.g.poetv_statusline_symbol
|
|
|
|
local result = string.sub(poetv_name, 1, 20) .. " " .. poetv_statusline_symbol
|
|
|
|
return result
|
|
else
|
|
return ""
|
|
end
|
|
end
|
|
|
|
function IsPoetvActive()
|
|
-- Check if vim.g.poetv_name exists
|
|
-- If it does, then poetv is active
|
|
|
|
if vim.g.poetv_name ~= nil then
|
|
return true
|
|
else
|
|
return false
|
|
end
|
|
end
|
|
|
|
-- configure lualine with modified theme
|
|
lualine.setup({
|
|
options = {
|
|
theme = my_lualine_theme,
|
|
},
|
|
sections = {
|
|
lualine_x = {
|
|
{
|
|
GetPoetvStatusLine,
|
|
cond = IsPoetvActive,
|
|
color = { fg = "#ff9e64" },
|
|
},
|
|
{
|
|
lazy_status.updates,
|
|
cond = lazy_status.has_updates,
|
|
color = { fg = "#ff9e64" },
|
|
},
|
|
{ "encoding" },
|
|
{ "fileformat" },
|
|
{ "filetype" },
|
|
},
|
|
},
|
|
})
|