From e8d2c35ca15353f6a1de9b8b8e392ec29d17b830 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Wed, 12 Jan 2022 22:55:44 +0100 Subject: Add lualine --- lua/config/init.lua | 1 + lua/config/lualine.lua | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++ lua/plugins.lua | 3 +++ 3 files changed, 70 insertions(+) create mode 100644 lua/config/lualine.lua (limited to 'lua') diff --git a/lua/config/init.lua b/lua/config/init.lua index 31a1aa9..3b14706 100644 --- a/lua/config/init.lua +++ b/lua/config/init.lua @@ -10,3 +10,4 @@ require("config.comment") require("config.gitsigns") require("config.nvim-tree") require("config.bufferline") +require("config.lualine") diff --git a/lua/config/lualine.lua b/lua/config/lualine.lua new file mode 100644 index 0000000..53f82ec --- /dev/null +++ b/lua/config/lualine.lua @@ -0,0 +1,66 @@ +-- Statusbar + +local status_ok, lualine = pcall(require, "lualine") +if not status_ok then + return +end + +local hide_in_width = function() + return vim.fn.winwidth(0) > 80 +end + +local diagnostics = { + "diagnostics", + sources = { "nvim_diagnostic" }, + sections = { "error", "warn" }, + symbols = { error = " ", warn = " " }, + colored = false, + update_in_insert = false, + always_visible = true, +} + +local diff = { + "diff", + colored = false, + symbols = { added = " ", modified = " ", removed = " " }, -- changes diff symbols + cond = hide_in_width, +} + +local branch = { + "b:gitsigns_head", + icon = " ", + cond = hide_in_width, +} + +local location = { "location", cond = hide_in_width } + +local filetype = { "filetype", cond = hide_in_width, color = {} } + +lualine.setup({ + options = { + icons_enabled = true, + theme = "auto", + component_separators = { left = "", right = "" }, + section_separators = { left = "", right = "" }, + disabled_filetypes = { "dashboard", "NvimTree", "Outline" }, + always_divide_middle = true, + }, + sections = { + lualine_a = { "mode" }, + lualine_b = { branch, "filename" }, + lualine_c = { diff }, + lualine_x = { diagnostics, filetype }, + lualine_y = {}, + lualine_z = { "location", "progress", "encoding" }, + }, + inactive_sections = { + lualine_a = { "mode" }, + lualine_b = { "filename" }, + lualine_c = {}, + lualine_x = {}, + lualine_y = {}, + lualine_z = { "location", "progress", "encoding" }, + }, + tabline = {}, + extensions = {}, +}) diff --git a/lua/plugins.lua b/lua/plugins.lua index 2e76741..b576b11 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -29,4 +29,7 @@ return { { "akinsho/bufferline.nvim" }, { "moll/vim-bbye" }, { + "nvim-lualine/lualine.nvim", + requires = { "kyazdani42/nvim-web-devicons", opt = true }, + }, } -- cgit v1.2.3-70-g09d2