meuter / lualine-so-fancy.nvim

Small collection of _fancy_ components for the lualine.nvim plugin.
MIT License
73 stars 4 forks source link
lua lualine lualine-components neovim neovim-plugin

lualine-so-fancy.nvim

code size license

Small collection of fancy components for the lualine.nvim plugin. The main purpose of this plugin is to simplify my personal lualine configuration. But if someone finds this helpful or useful at all... sharing is caring as they say.

Fancy!

Installation

For lazy.nvim:

{
    "nvim-lualine/lualine.nvim",
    dependencies = {
        "nvim-tree/nvim-web-devicons",
        "meuter/lualine-so-fancy.nvim",
    },
    opts = {
        options = {
            theme = "seoul256",
            component_separators = { left = "│", right = "│" },
            section_separators = { left = "", right = "" },
            globalstatus = true,
            refresh = {
                statusline = 100,
            },
        },
        sections = {
            lualine_a = {
                { "fancy_mode", width = 3 }
            },
            lualine_b = {
                { "fancy_branch" },
                { "fancy_diff" },
            },
            lualine_c = {
                { "fancy_cwd", substitute_home = true }
            },
            lualine_x = {
                { "fancy_macro" },
                { "fancy_diagnostics" },
                { "fancy_searchcount" },
                { "fancy_location" },
            },
            lualine_y = {
                { "fancy_filetype", ts_icon = "" }
            },
            lualine_z = {
                { "fancy_lsp_servers" }
            },
        }
    },
}

You will need a patched font including the latest codicons glyphs. The screenshot was taken using Fira Code Regular Nerd Font Complete, patched manually by yours truly and Windows Terminal.

Components

All components can be customized similarly to the ones provided by lualine (icon, color, etc.).

Contributing

If anyone would like to contribute with some fixes, improvements, extra components, pull-requests are welcome. Just keep in mind that I have a day-job, and may not be able get to them immediately, but I'll do my best 😅.