mason.lua 2.2 KB

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