diff options
| author | William Boman <william@redwill.se> | 2022-04-08 09:25:34 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-08 09:25:34 +0200 |
| commit | 5c223f21ff8b513e87ff9f002d5d133dffe729de (patch) | |
| tree | 29ada007d785baa2e0f986f4cf70589975c1e741 /lua/nvim-lsp-installer/servers/r_language_server/init.lua | |
| parent | run autogen_metadata.lua (diff) | |
| download | mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar.gz mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar.bz2 mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar.lz mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar.xz mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.tar.zst mason-5c223f21ff8b513e87ff9f002d5d133dffe729de.zip | |
r_language_server: install languageserversetup via remotes::install_github (#580)
Co-authored-by: Samuel C-J Lee <chia-jung.l@outlook.com>
Diffstat (limited to 'lua/nvim-lsp-installer/servers/r_language_server/init.lua')
| -rw-r--r-- | lua/nvim-lsp-installer/servers/r_language_server/init.lua | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/lua/nvim-lsp-installer/servers/r_language_server/init.lua b/lua/nvim-lsp-installer/servers/r_language_server/init.lua index c8ae0f41..4a36c289 100644 --- a/lua/nvim-lsp-installer/servers/r_language_server/init.lua +++ b/lua/nvim-lsp-installer/servers/r_language_server/init.lua @@ -7,15 +7,31 @@ return function(name, root_dir) options(langserver_library = %q); options(repos = list(CRAN = "http://cran.rstudio.com/")); rlsLib <- getOption("langserver_library"); -install.packages("languageserversetup", lib = rlsLib); -loadNamespace("languageserversetup", lib.loc = rlsLib); +didInstallRemotes <- FALSE; +tryCatch( + expr = { library("remotes") }, + error = function (e) { + install.packages("remotes", lib = rlsLib); + loadNamespace("remotes", lib.loc = rlsLib); + didInstallRemotes <- TRUE; + } +); + +remotes::install_github("jozefhajnala/languageserversetup", lib = rlsLib); + +if (didInstallRemotes) { + remove.packages("remotes", lib = rlsLib); +} + +loadNamespace("languageserversetup", lib.loc = rlsLib); languageserversetup::languageserver_install( fullReinstall = TRUE, confirmBeforeInstall = FALSE, strictLibrary = TRUE ); -]]):format(install_dir, install_dir, install_dir) +library("languageserver", lib.loc = rlsLib); +]]):format(install_dir) end local server_script = ([[ |
