diff --git a/.config/nvim/lua/lilJ/plugins/conform.lua b/.config/nvim/lua/lilJ/plugins/conform.lua index c34aa62..f58a0b5 100644 --- a/.config/nvim/lua/lilJ/plugins/conform.lua +++ b/.config/nvim/lua/lilJ/plugins/conform.lua @@ -25,6 +25,7 @@ return { go = { "gofumpt", "goimports_reviser" }, html = { "prettier" }, lua = { "stylua" }, + python = { "autopep8" }, typescript = { "prettier" }, typescriptreact = { "prettier" }, }, diff --git a/.config/nvim/lua/lilJ/plugins/lint.lua b/.config/nvim/lua/lilJ/plugins/lint.lua index 5513dfe..e0ba7af 100644 --- a/.config/nvim/lua/lilJ/plugins/lint.lua +++ b/.config/nvim/lua/lilJ/plugins/lint.lua @@ -6,6 +6,7 @@ return { lint.linters_by_ft = { json = { "jsonlint" }, + python = { "mypy" }, -- typescript = { "eslint" }, -- typescriptreact = { "eslint" }, } diff --git a/.config/nvim/lua/lilJ/plugins/lsp.lua b/.config/nvim/lua/lilJ/plugins/lsp.lua index 94fbe6c..9187e67 100644 --- a/.config/nvim/lua/lilJ/plugins/lsp.lua +++ b/.config/nvim/lua/lilJ/plugins/lsp.lua @@ -185,6 +185,9 @@ return { }, }, }, + + pyright = {}, + ts_ls = {}, tailwindcss = { @@ -198,6 +201,8 @@ return { "goimports-reviser", "jsonlint", "prettier", + "mypy", + "autopep8", "stylua", }) diff --git a/.config/nvim/lua/lilJ/plugins/mdx.lua b/.config/nvim/lua/lilJ/plugins/mdx.lua index 0f8ec5c..b17f816 100644 --- a/.config/nvim/lua/lilJ/plugins/mdx.lua +++ b/.config/nvim/lua/lilJ/plugins/mdx.lua @@ -1,6 +1,5 @@ return { "davidmh/mdx.nvim", config = true, - ft = "mdx", dependencies = { "nvim-treesitter/nvim-treesitter" }, } diff --git a/.config/nvim/lua/lilJ/plugins/mini.lua b/.config/nvim/lua/lilJ/plugins/mini.lua index d5209cb..00c55b7 100644 --- a/.config/nvim/lua/lilJ/plugins/mini.lua +++ b/.config/nvim/lua/lilJ/plugins/mini.lua @@ -5,21 +5,40 @@ return { local statusline = require "mini.statusline" statusline.setup { use_icons = vim.g.have_nerd_font } + local function get_lsp_clients() + local clients = vim.lsp.get_clients() + + if #clients == 0 then + return "" + end + + local names = {} + for _, client in ipairs(clients) do + table.insert(names, client.name) + end + + local lsp_string = table.concat(names, "|") + return " " .. lsp_string + end + ---@diagnostic disable-next-line: duplicate-set-field statusline.active = function() local mode, mode_hl = statusline.section_mode { trunc_width = 120 } + local diff = statusline.section_diff { trunc_width = 75 } local git = statusline.section_git() local diagnostics = statusline.section_diagnostics() - local filename = statusline.section_filename { trunc_width = 140 } + local fileinfo = MiniStatusline.section_fileinfo { trunc_width = 120 } local location = statusline.section_location() + local lsp = get_lsp_clients() return statusline.combine_groups { { hl = mode_hl, strings = { mode } }, - { hl = "MiniStatuslineDevinfo", strings = { diagnostics } }, + { hl = "MiniStatuslineDevinfo", strings = { git, diff } }, "%<", - { hl = "MiniStatuslineFilename", strings = { filename } }, + { hl = "MiniStatuslineFilename", strings = { fileinfo } }, "%=", - { hl = "MiniStatuslineDevinfo", strings = { git } }, + { hl = "MiniStatuslineFilename", strings = { lsp } }, + { hl = "MiniStatuslineDevinfo", strings = { diagnostics } }, { hl = mode_hl, strings = { location } }, } end