aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/r_language_server.lua
blob: 32be96b9c56693f4da1e9dcceac1ba5b509adf39 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
local util = require "lspconfig/util"
local configs = require "lspconfig/configs"

configs.r_language_server = {
  default_config = {
    cmd = { "R", "--slave", "-e", "languageserver::run()" },
    filetypes = { "r", "rmd" },
    root_dir = function(fname)
      return util.find_git_ancestor(fname) or vim.loop.os_homedir()
    end,
    log_level = vim.lsp.protocol.MessageType.Warning,
  },
  docs = {
    package_json = "https://raw.githubusercontent.com/REditorSupport/vscode-r-lsp/master/package.json",
    description = [[
    [languageserver](https://github.com/REditorSupport/languageserver) is an
    implementation of the Microsoft's Language Server Protocol for the R
    language.

    It is released on CRAN and can be easily installed by

    ```R
    install.packages("languageserver")
    ```
    ]],
    default_config = {
      root_dir = [[root_pattern(".git") or os_homedir]],
    },
  },
}