You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

104 lines
2.1 KiB

local get_hex = require('cokeline/utils').get_hex
--INFO: Specialized function to return the filename if it's an actual file
local function filenameIfFileOpened()
local filename = vim.fn.expand('%:t')
if filename == '' then
return ''
elseif filename == 'COMMIT_EDITMSG' then
return '[Git commit]'
elseif vim.bo.modified then
return filename .. '*'
else
return filename
end
end
require('lualine').setup({
options = {
icons_enabled = true,
theme = 'sonokai',
component_separators = { left = '', right = '' },
section_separators = { left = '', right = '' },
disabled_filetypes = {},
},
sections = {
lualine_a = { 'mode' },
lualine_b = { 'branch' },
lualine_c = { filenameIfFileOpened },
lualine_x = { 'fileformat' },
lualine_y = { 'diff' },
lualine_z = { 'filetype' },
},
inactive_sections = {
lualine_a = {},
lualine_b = {},
lualine_c = { filenameIfFileOpened },
lualine_x = { 'location' },
lualine_y = {},
lualine_z = {},
},
tabline = {},
extensions = {},
})
-- Credit to the original author of cokeline for creating most of this config
require('cokeline').setup({
default_hl = {
--[[focused = {
fg = get_hex('Normal', 'fg'),
bg = get_hex('Background', 'bg'),
},
unfocused = {
fg = get_hex('Comment', 'fg'),
bg = get_hex('Background', 'bg'),
},--]]
fg = function(buffer)
if buffer.is_focused then
return get_hex('Normal', 'fg')
end
return get_hex('Comment', 'fg')
end,
bg = function(_)
return get_hex('Background', 'bg')
end,
},
components = {
{
text = function(buffer)
if buffer.is_focused then
return '' .. buffer.devicon.icon
else
return '| ' .. buffer.devicon.icon
end
end,
hl = {
fg = function(buffer)
return buffer.devicon.color
end,
},
},
{
text = function(buffer)
return buffer.unique_prefix
end,
hl = {
style = 'italic',
},
},
{
text = function(buffer)
return buffer.filename .. ' '
end,
},
{
text = 'X',
delete_buffer_on_left_click = true,
},
{
text = ' ',
},
},
})