From 5c223f21ff8b513e87ff9f002d5d133dffe729de Mon Sep 17 00:00:00 2001 From: William Boman Date: Fri, 8 Apr 2022 09:25:34 +0200 Subject: r_language_server: install languageserversetup via remotes::install_github (#580) Co-authored-by: Samuel C-J Lee --- .../servers/r_language_server/init.lua | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'lua') 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 = ([[ -- cgit v1.2.3-70-g09d2