From e97b5e38b06d2021de72d56f527e70e9bf50a75c Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 2 Jun 2022 21:14:15 +0200 Subject: nvim: lualine show active lsp status --- .config/nvim/lua/setup/lualine.lua | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) (limited to '.config/nvim/lua/setup/lualine.lua') diff --git a/.config/nvim/lua/setup/lualine.lua b/.config/nvim/lua/setup/lualine.lua index 2a792b7..36517b0 100644 --- a/.config/nvim/lua/setup/lualine.lua +++ b/.config/nvim/lua/setup/lualine.lua @@ -1,4 +1,6 @@ -require 'lualine'.setup { +local lualine = require 'lualine' + +local config = { options = { icons_enabled = true, theme = 'onedark', @@ -26,3 +28,33 @@ require 'lualine'.setup { tabline = {}, extensions = {}, } + +-- local function ins_left(component) +-- table.insert(config.sections.lualine_c, component) +-- end + +local function ins_right(component) + table.insert(config.sections.lualine_x, 1, component) +end + +ins_right { + -- Lsp server name . + function() + local msg = '' + local buf_ft = vim.api.nvim_buf_get_option(0, 'filetype') + local clients = vim.lsp.get_active_clients() + if next(clients) == nil then + return msg + end + for _, client in ipairs(clients) do + local filetypes = client.config.filetypes + if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then + return ' ' .. client.name + end + end + return msg + end, + -- icon = ' ', +} + +lualine.setup(config) -- cgit v1.2.3-70-g09d2