1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
--[[null-ls.]]
--
-- null-language-server i.e. a sort of language server which does not provide any services such as formatting and diagnostics you expect from a language server. Instead it will need to install corresponding external “sources” and then hook these sources into the neovim lsp client through null-ls.
--
require("null-ls").setup({
--debug = true,
disabled_filetypes = { "PKGBUILD" },
timeout_ms = 5000,
async = true,
debounce = 150,
sources = {
--require("null-ls").builtins.formatting.shfmt, -- shell script formatting
require("null-ls").builtins.diagnostics.dotenv_linter,
--require("null-ls").builtins.diagnostics.editorconfig_checker,
require("null-ls").builtins.formatting.shfmt.with({
filetypes = { "bash", "zsh", "sh" },
extra_args = { "-i", "2", "-ci" },
}),
require("null-ls").builtins.formatting.prettier, -- markdown formatting
--require("null-ls").builtins.diagnostics.shellcheck, -- shell script diagnostics
require("null-ls").builtins.diagnostics.shellcheck.with({
diagnostic_config = {
-- see :help vim.diagnostic.config()
underline = true,
virtual_text = false,
signs = true,
update_in_insert = false,
severity_sort = true,
},
diagnostics_format = "[#{c}] #{m} (#{s})",
-- this will run every time the source runs,
-- so you should prefer caching results if possible
}),
-- require("null-ls").builtins.formatting.stylua, -- lua formatting
-- require("null-ls").builtins.formatting.prettier.with({ -- markdown, html/js formatting
-- filetypes = { "html", "css", "javascript", "javascriptreact", "markdown", "json", "yaml" },
-- }),
-- require("null-ls").builtins.formatting.black,
-- require("null-ls").builtins.formatting.prettierd,
-- require("null-ls").builtins.diagnostics.cspell.with {
-- filetypes = { "python", "rust", "typescript" },
-- },
-- --require("null-ls").builtins.diagnostics.luacheck,
-- --require("null-ls").builtins.diagnostics.eslint,
-- --require("null-ls").builtins.diagnostics.eslint_d,
-- require("null-ls").builtins.diagnostics.mdl,
-- require("null-ls").builtins.diagnostics.vint,
-- require("null-ls").builtins.completion.spell,
-- require("null-ls").builtins.formatting.clang_format,
-- require("null-ls").builtins.formatting.rustfmt,
-- require("null-ls").builtins.formatting.sql_formatter,
-- --require("null-ls").builtins.formatting.google_java_format,
-- require("null-ls").builtins.diagnostics.cppcheck,
require("null-ls").builtins.formatting.shellharden,
-- --require("null-ls").builtins.code_actions.eslint_d,
require("null-ls").builtins.code_actions.shellcheck, -- shell script code actions
require("null-ls").builtins.formatting.clang_format,
require("null-ls").builtins.formatting.rustfmt,
--require("null-ls").builtins.formatting.beautysh,
require("null-ls").builtins.formatting.sql_formatter,
--require("null-ls").builtins.diagnostics.todo_comments,
--require("null-ls").builtins.diagnostics.zsh,
require("null-ls").builtins.hover.dictionary,
require("null-ls").builtins.hover.printenv,
},
-- default_timeout = 5000,
-- diagnostics_format = '[#{c}] #{m} (#{s})',
-- fallback_severity = vim.diagnostic.severity.ERROR,
-- log = {
-- enable = true,
-- level = 'warn',
-- use_console = 'async',
-- },
--on_attach = nil,
--on_init = nil,
--on_exit = nil,
--update_in_insert = false,
--update_in_leave = false,
})
|