nvim/lua/plugins/heirline.lua

55 lines
1.9 KiB
Lua

return {
'rebelot/heirline.nvim',
dependencies = { 'Zeioth/heirline-components.nvim' },
opts = function()
local compon = require 'heirline-components.all'
return {
tabline = { -- UI upper bar
compon.component.tabline_conditional_padding(),
compon.component.tabline_buffers(),
compon.component.fill { hl = { bg = 'tabline_bg' } },
compon.component.tabline_tabpages()
},
winbar = { -- UI breadcrumbs bar
init = function(self) self.bufnr = vim.api.nvim_get_current_buf() end,
fallthrough = false,
compon.component.breadcrumbs_when_inactive(),
compon.component.breadcrumbs { hl = compon.hl.get_attributes('winbar', true) },
},
statuscolumn = { -- UI left column
init = function(self) self.bufnr = vim.api.nvim_get_current_buf() end,
compon.component.foldcolumn(),
compon.component.fill(),
compon.component.numbercolumn(),
compon.component.signcolumn(),
} or nil,
statusline = { -- UI statusbar
hl = { fg = 'fg', bg = 'bg' },
compon.component.mode { mode_text = { pad_text = 'left' } },
compon.component.git_branch(),
compon.component.file_info { filetype = false, filename = {}, file_modified = {}, file_read_only = {} },
compon.component.git_diff(),
compon.component.diagnostics(),
compon.component.fill(),
compon.component.cmd_info { search_count = {} },
compon.component.fill(),
-- compon.component.lsp(),
compon.component.compiler_state(),
compon.component.virtual_env(),
compon.component.file_encoding(),
compon.component.nav(),
},
}
end,
config = function(_, opts)
local heirline = require 'heirline'
lib = require 'heirline-components.all'
-- Setup
lib.init.subscribe_to_events()
heirline.load_colors(lib.hl.get_colors())
heirline.setup(opts)
end,
enabled = false
}