fix inactive

This commit is contained in:
Ray Andrew 2023-08-05 16:26:47 -05:00
parent 74de18c0b3
commit 51fb990de0
No known key found for this signature in database
GPG key ID: E2E8D63137DD489E

View file

@ -1,3 +1,6 @@
-- credit goes to
-- https://nuxsh.is-a.dev/blog/custom-nvim-statusline.html
local M = {} local M = {}
local modes = { local modes = {
@ -64,7 +67,7 @@ local function filename()
return fname .. " " return fname .. " "
end end
function M.render() function M.render_active()
local parts = { local parts = {
"%#Statusline#", "%#Statusline#",
update_mode_colors(), update_mode_colors(),
@ -80,18 +83,49 @@ function M.render()
return statusline return statusline
end end
function M.render_inactive()
local parts = {
"%#Statusline#",
"%#Normal# ",
"%=%#StatusLineExtra#",
}
local statusline = table.concat(parts, "")
return statusline
end
-- function M.render(opts)
-- opts = opts or {}
-- local active = opts.active or false
-- local statusline = ""
-- if active then
-- statusline = M.render_active()
-- else
-- statusline = M.render_inactive()
-- end
-- vim.opt_local.statusline = statusline
-- end
function M.setup() function M.setup()
local augroup = require("rayandrew.util").augroup local augroup = require("rayandrew.util").augroup
local autocmd = vim.api.nvim_create_autocmd local autocmd = vim.api.nvim_create_autocmd
-- Statusline -- Statusline
autocmd({ "BufEnter", "BufWinEnter", "WinEnter" }, { autocmd({ "BufEnter", "BufWinEnter", "WinEnter" }, {
group = augroup("statusline"), group = augroup("statusline-enter"),
pattern = "*", pattern = "*",
callback = function() callback = function()
vim.opt_local.statusline = "%!v:lua.require('rayandrew.statusline').render()" vim.opt_local.statusline = "%!v:lua.require('rayandrew.statusline').render_active()"
end, end,
-- command = [[lua require("rayandrew.util").render()]], -- command = [[lua require("rayandrew.statusline").render({ active = true })]],
})
autocmd({ "BufLeave", "BufWinLeave", "WinLeave" }, {
group = augroup("statusline-leave"),
pattern = "*",
callback = function()
vim.opt_local.statusline = "%!v:lua.require('rayandrew.statusline').render_inactive()"
end,
-- command = [[lua require("rayandrew.statusline").render({ active = false })]],
}) })
end end