mason.lua 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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. "tinymist",
  18. -- "typst_lsp",
  19. "html",
  20. "r_language_server", --[[ "vscode-html-language-server" ]]
  21. },
  22. })
  23. end,
  24. },
  25. {
  26. "neovim/nvim-lspconfig",
  27. config = function()
  28. local capabilities = require("cmp_nvim_lsp").default_capabilities()
  29. -- After setting up mason-lspconfig you may set up servers via lspconfig
  30. require("lspconfig").lua_ls.setup({ capabilities = capabilities })
  31. -- require("lspconfig").rust_analyzer.setup({capabilities = capabilities})
  32. require("lspconfig").r_language_server.setup({ capabilities = capabilities })
  33. require("lspconfig").html.setup({ capabilities = capabilities })
  34. require("lspconfig").tinymist.setup({
  35. capabilities = capabilities,
  36. offset_encoding = "utf-8",
  37. root_dir = function(filename, bufnr)
  38. return vim.fn.getcwd()
  39. end,
  40. settings = {
  41. tinymist = {
  42. settings = {
  43. formatterMode = "typstfmt",
  44. },
  45. },
  46. },
  47. })
  48. -- require("lspconfig").typst_lsp.setup({
  49. -- capabilities = capabilities,
  50. -- offset_encoding = "utf-8",
  51. --
  52. -- settings = {
  53. -- exportPdf = "never", -- Choose onType, onSave or never.
  54. -- experimentalFormatterMode = "on",
  55. -- -- serverPath = "" -- Normally, there is no need to uncomment it.
  56. -- },
  57. -- })
  58. -- require("lspconfig").tinymist.setup({
  59. -- offset_encoding = "utf-8",
  60. -- settings = {
  61. -- formatterMode = "typstyle",
  62. -- exportPdf = "onSave",
  63. -- },
  64. -- })
  65. require("lspconfig").ts_ls.setup({
  66. -- capabilities = capabilities,
  67. init_options = {
  68. plugins = {},
  69. },
  70. filetypes = {
  71. "javascript",
  72. "javascript.jsx",
  73. "typescript",
  74. "typescriptreact",
  75. "typescript.tsx",
  76. },
  77. })
  78. -- You must make sure volar is setup
  79. -- e.g. require'lspconfig'.volar.setup{}
  80. -- See volar's section for more information
  81. end,
  82. },
  83. }