aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/r_language_server.lua
blob: 7bf8e52664df4f959d11cd3642bddb72250b9eca (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]],
    },
  },
}