mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-08-30 14:49:43 +02:00
feat(lsp): bind formatexpr and omnifunc by default (#2865)
This commit is contained in:
parent
6ab3e8a739
commit
dec21bbab6
4 changed files with 21 additions and 5 deletions
|
@ -132,18 +132,20 @@ end
|
|||
---filter passed to vim.lsp.buf.format
|
||||
---always selects null-ls if it's available and caches the value per buffer
|
||||
---@param client table client attached to a buffer
|
||||
---@return table chosen clients
|
||||
---@return boolean if client matches
|
||||
function M.format_filter(client)
|
||||
local filetype = vim.bo.filetype
|
||||
local n = require "null-ls"
|
||||
local s = require "null-ls.sources"
|
||||
local method = n.methods.FORMATTING
|
||||
local avalable_sources = s.get_available(filetype, method)
|
||||
local avalable_formatters = s.get_available(filetype, method)
|
||||
|
||||
if #avalable_sources > 0 then
|
||||
if #avalable_formatters > 0 then
|
||||
return client.name == "null-ls"
|
||||
else
|
||||
elseif client.supports_method "textDocument/formatting" then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -159,6 +161,7 @@ function M.format(opts)
|
|||
|
||||
local bufnr = opts.bufnr or vim.api.nvim_get_current_buf()
|
||||
|
||||
---@type table|nil
|
||||
local clients = vim.lsp.get_active_clients {
|
||||
id = opts.id,
|
||||
bufnr = bufnr,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue