mason.lua 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. "ts_ls",
  17. -- "typst_lsp",
  18. "html",
  19. "r_language_server", --[[ "vscode-html-language-server" ]]
  20. },
  21. })
  22. end,
  23. },
  24. {
  25. "neovim/nvim-lspconfig",
  26. config = function()
  27. local capabilities = require("cmp_nvim_lsp").default_capabilities()
  28. -- After setting up mason-lspconfig you may set up servers via lspconfig
  29. require("lspconfig").lua_ls.setup({ capabilities = capabilities })
  30. -- require("lspconfig").rust_analyzer.setup({capabilities = capabilities})
  31. require("lspconfig").r_language_server.setup({ capabilities = capabilities })
  32. require("lspconfig").html.setup({ capabilities = capabilities })
  33. require("lspconfig").typst_lsp.setup({
  34. capabilities = capabilities,
  35. settings = {
  36. exportPdf = "never", -- Choose onType, onSave or never.
  37. -- serverPath = "" -- Normally, there is no need to uncomment it.
  38. },
  39. })
  40. require("lspconfig").ts_ls.setup({
  41. -- capabilities = capabilities,
  42. init_options = {
  43. plugins = {},
  44. },
  45. filetypes = {
  46. "javascript", "javascript.jsx",
  47. "typescript",
  48. "typescriptreact", "typescript.tsx"
  49. },
  50. })
  51. -- You must make sure volar is setup
  52. -- e.g. require'lspconfig'.volar.setup{}
  53. -- See volar's section for more information
  54. end,
  55. },
  56. }