Skip to content

Commit fcec22e

Browse files
committed
WIP - setting up language servers. Some I couldn't get working at first and are commented out. I'm trying to get ltex_plus to not attach to plain text files but the setting isn't getting picked up for some reason.
1 parent 421753e commit fcec22e

File tree

1 file changed

+73
-7
lines changed

1 file changed

+73
-7
lines changed

lua/kickstart/plugins/lspconfig.lua

Lines changed: 73 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,27 @@ return {
198198
-- So, we create new capabilities with blink.cmp, and then broadcast that to the servers.
199199
local capabilities = require('blink.cmp').get_lsp_capabilities()
200200

201+
local ltex_plus_filetypes = {
202+
'bib',
203+
'context',
204+
'gitcommit',
205+
'html',
206+
'markdown',
207+
'org',
208+
'pandoc',
209+
'plaintex',
210+
'quarto',
211+
'mail',
212+
'mdx',
213+
'rmd',
214+
'rnoweb',
215+
'rst',
216+
'tex',
217+
-- 'text',
218+
'typst',
219+
'xhtml',
220+
}
221+
201222
-- Enable the following language servers
202223
-- Feel free to add/remove any LSPs that you want here. They will automatically be installed.
203224
--
@@ -208,18 +229,41 @@ return {
208229
-- - settings (table): Override the default settings passed when initializing the server.
209230
-- For example, to see the options for `lua_ls`, you could go to: https://luals.github.io/wiki/settings/
210231
local servers = {
211-
-- clangd = {},
212232
-- gopls = {},
213233
-- pyright = {},
214234
-- rust_analyzer = {},
215235
-- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs
216236
--
217-
-- Some languages (like typescript) have entire language plugins that can be useful:
218-
-- https://github.com/pmizio/typescript-tools.nvim
219-
--
220-
-- But for many setups, the LSP (`ts_ls`) will work just fine
221-
-- ts_ls = {},
222-
--
237+
awk_ls = {},
238+
bashls = {},
239+
clangd = {}, -- TODO: setup compile_commands.json generation for any projects that need to use this LSP
240+
csharp_ls = {}, -- or use omnisharp or rosyln_ls instead?
241+
css_variables = {},
242+
cssls = {},
243+
docker_compose_language_service = {},
244+
dockerls = {},
245+
eslint = {},
246+
-- gdscript = {}, -- TODO: in docs but causes mason error
247+
-- gdshader_lsp = {}, -- TODO: in docs but causes mason error
248+
gh_actions_ls = {},
249+
gitlab_ci_ls = {},
250+
glsl_analyzer = {},
251+
gradle_ls = {},
252+
graphql = {},
253+
groovyls = {},
254+
html = {},
255+
-- java_language_server = {}, -- Note - for fancier use cases jdtls lsp or nvim-jdtls plugin may be better -- TODO: mason errors during install
256+
jqls = {},
257+
jsonls = {},
258+
kotlin_language_server = {},
259+
ltex_plus = {
260+
filetypes = ltex_plus_filetypes,
261+
settings = {
262+
ltex = {
263+
enabled = ltex_plus_filetypes,
264+
},
265+
},
266+
}, -- LaTeX, Markdown, etc. LSP
223267

224268
lua_ls = {
225269
-- cmd = { ... },
@@ -235,6 +279,28 @@ return {
235279
},
236280
},
237281
},
282+
283+
-- metals = {}, -- Scala LSP -- TODO: in docs but causes mason error
284+
perlnavigator = {}, -- Other ones that have about the same level of activity are perlls and perlpls
285+
pico8_ls = {},
286+
ruby_lsp = {}, -- or use solargraph? see also standardrb, syntax_tree, and typeprof
287+
spyglassmc_language_server = {}, -- Minecraft datapacks, may require additional configuration
288+
sqls = {}, -- See also the confusingly similarly named sqlls, and sqruff
289+
terraformls = {}, -- This is the official hashicorp one, see also terraform_lsp
290+
tflint = {},
291+
typos_lsp = {}, -- Code spellchecker
292+
293+
-- Some languages (like typescript) have entire language plugins that can be useful:
294+
-- https://github.com/pmizio/typescript-tools.nvim
295+
--
296+
-- But for many setups, the LSP (`ts_ls`) will work just fine
297+
ts_ls = {}, -- see also ts_query_ls, tsgo
298+
299+
vacuum = {}, -- OpenAPI/Swagger linter/analyzer, requires filetypes to be registered
300+
vimls = {}, -- Vimscript
301+
yamlls = {},
302+
303+
-- TODO: There are a shitload of python LSPs - research and pick one
238304
}
239305

240306
-- Ensure the servers and tools above are installed

0 commit comments

Comments
 (0)