mason.lua 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. return {
  2. {
  3. "williamboman/mason.nvim",
  4. config = function()
  5. require("mason").setup()
  6. end,
  7. },
  8. {
  9. "williamboman/mason-lspconfig.nvim",
  10. config = function()
  11. require("mason-lspconfig").setup({
  12. ensure_installed = {
  13. "lua_ls",
  14. "rust_analyzer",
  15. "tsserver",
  16. "typst_lsp",
  17. "html",
  18. "r_language_server", --[[ "vscode-html-language-server" ]]
  19. },
  20. })
  21. end,
  22. },
  23. {
  24. "neovim/nvim-lspconfig",
  25. config = function()
  26. local capabilities = require("cmp_nvim_lsp").default_capabilities()
  27. -- After setting up mason-lspconfig you may set up servers via lspconfig
  28. require("lspconfig").lua_ls.setup({ capabilities = capabilities })
  29. -- require("lspconfig").rust_analyzer.setup({capabilities = capabilities})
  30. require("lspconfig").r_language_server.setup({ capabilities = capabilities })
  31. require("lspconfig").html.setup({ capabilities = capabilities })
  32. require("lspconfig").typst_lsp.setup({
  33. capabilities = capabilities,
  34. settings = {
  35. exportPdf = "onType", -- Choose onType, onSave or never.
  36. -- serverPath = "" -- Normally, there is no need to uncomment it.
  37. },
  38. })
  39. require("lspconfig").tsserver.setup({
  40. capabilities = capabilities,
  41. init_options = {
  42. plugins = {},
  43. },
  44. filetypes = {
  45. "javascript",
  46. "typescript",
  47. },
  48. })
  49. -- You must make sure volar is setup
  50. -- e.g. require'lspconfig'.volar.setup{}
  51. -- See volar's section for more information
  52. end,
  53. },
  54. }