浏览代码

feat: add support for using minimal_lsp on windows (#1882)

kylo252 3 年之前
父节点
当前提交
7a2a5fc810
共有 2 个文件被更改,包括 22 次插入5 次删除
  1. 21 4
      tests/minimal_lsp.lua
  2. 1 1
      utils/bin/lvim.ps1

+ 21 - 4
tests/minimal_lsp.lua

@@ -1,8 +1,25 @@
+local on_windows = vim.loop.os_uname().version:match "Windows"
+
+local function join_paths(...)
+  local path_sep = on_windows and "\\" or "/"
+  local result = table.concat({ ... }, path_sep)
+  return result
+end
+
 vim.cmd [[set runtimepath=$VIMRUNTIME]]
-vim.cmd [[set packpath=/tmp/nvim/site]]
 
-local package_root = "/tmp/nvim/site/pack"
-local install_path = package_root .. "/packer/start/packer.nvim"
+local temp_dir
+if on_windows then
+  temp_dir = vim.loop.os_getenv "TEMP"
+else
+  temp_dir = "/tmp"
+end
+
+vim.cmd("set packpath=" .. join_paths(temp_dir, "nvim", "site"))
+
+local package_root = join_paths(temp_dir, "nvim", "site", "pack")
+local install_path = join_paths(package_root, "packer", "start", "packer.nvim")
+local compile_path = join_paths(install_path, "plugin", "packer_compiled.lua")
 
 -- Choose whether to use the executable that's managed by lsp-installer
 local use_lsp_installer = true
@@ -16,7 +33,7 @@ local function load_plugins()
     },
     config = {
       package_root = package_root,
-      compile_path = install_path .. "/plugin/packer_compiled.lua",
+      compile_path = compile_path,
     },
   }
 end

+ 1 - 1
utils/bin/lvim.ps1

@@ -6,4 +6,4 @@ $env:LUNARVIM_RUNTIME_DIR = ($env:LUNARVIM_RUNTIME_DIR, "$env:XDG_DATA_HOME\luna
 $env:LUNARVIM_CONFIG_DIR = ($env:LUNARVIM_CONFIG_DIR, "$env:XDG_CONFIG_HOME\lvim", 1 -ne $null)[0]
 $env:LUNARVIM_CACHE_DIR = ($env:LUNARVIM_CACHE_DIR, "$env:XDG_CACHE_HOME\lvim", 1 -ne $null)[0]
 
-nvim -u "$env:LUNARVIM_RUNTIME_DIR\lvim\init.lua"
+nvim -u "$env:LUNARVIM_RUNTIME_DIR\lvim\init.lua" @args