Minor improvements
This commit is contained in:
@@ -32,16 +32,14 @@ M.options = {
|
||||
|
||||
-------------------- STATUSLINE ----------------------------
|
||||
function M.update_statusline()
|
||||
local sections = M.options.sections
|
||||
if common.is_active() or not cache.previous then
|
||||
local sections = cache.previous
|
||||
if common.is_active() or not sections then
|
||||
sections = M.options.sections
|
||||
sections = statusline.remove_hidden_sections(sections)
|
||||
sections = statusline.reload_sections(sections)
|
||||
sections = statusline.remove_empty_sections(sections)
|
||||
sections = statusline.aggregate_sections(sections)
|
||||
cache.previous = cache.current
|
||||
cache.current = sections
|
||||
else
|
||||
sections = cache.previous
|
||||
cache.previous, cache.current = cache.current, sections
|
||||
end
|
||||
return table.concat(vim.tbl_map(common.color, sections))
|
||||
end
|
||||
|
||||
@@ -5,9 +5,9 @@ local function exclude(bufnr)
|
||||
end
|
||||
|
||||
local function get_head(path, tail)
|
||||
local result = path
|
||||
for i = 1, #vim.split(tail, '/', true) do
|
||||
result = fn.fnamemodify(result, ':~:h')
|
||||
local result = fn.fnamemodify(path, ':p')
|
||||
for i = 1, #vim.split(tail, '/') do
|
||||
result = fn.fnamemodify(result, ':h')
|
||||
end
|
||||
return fn.fnamemodify(result, ':t')
|
||||
end
|
||||
|
||||
@@ -27,8 +27,7 @@ end
|
||||
|
||||
local function remove_empty_sections(sections)
|
||||
local filter = function(s)
|
||||
if type(s) == 'table' then return s.item ~= '' end
|
||||
return s ~= ''
|
||||
if type(s) == 'table' then return s.item ~= '' else return s ~= '' end
|
||||
end
|
||||
return vim.tbl_filter(filter, sections)
|
||||
end
|
||||
@@ -43,7 +42,6 @@ local function reload_sections(sections)
|
||||
return {
|
||||
class = section.class or 'none',
|
||||
item = map(section.item),
|
||||
hide = section.hide or 0,
|
||||
}
|
||||
end
|
||||
common.echo('WarningMsg', 'Invalid section.')
|
||||
|
||||
Reference in New Issue
Block a user