mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-09 14:40:04 +08:00
46 lines
1.5 KiB
Lua
46 lines
1.5 KiB
Lua
local util = require 'lspconfig.util'
|
|
|
|
-- set os dependent library path
|
|
local function library_path(path, cmd_env)
|
|
path = path or '/usr/local/lib'
|
|
cmd_env = cmd_env or {}
|
|
if vim.fn.has 'macunix' and not cmd_env.DYLD_LIBRARY_PATH then
|
|
cmd_env.DYLD_LIBRARY_PATH = path
|
|
elseif vim.fn.has 'linux' and not cmd_env.LD_LIBRARY_PATH then
|
|
cmd_env.LD_LIBRARY_PATH = path
|
|
end
|
|
return cmd_env
|
|
end
|
|
|
|
return {
|
|
default_config = {
|
|
cmd = { 'bqnlsp' },
|
|
filetypes = { 'bqn' },
|
|
root_dir = util.find_git_ancestor,
|
|
single_file_support = true,
|
|
libcbqnPath = nil,
|
|
on_new_config = function(new_config, _)
|
|
if new_config.libcbqnPath then
|
|
new_config.cmd_env = library_path(new_config.libcbqnPath, new_config.cmd_env)
|
|
end
|
|
end,
|
|
},
|
|
docs = {
|
|
description = [[
|
|
https://git.sr.ht/~detegr/bqnlsp
|
|
|
|
|
|
`bqnlsp`, a language server for BQN.
|
|
|
|
The binary depends on the shared library of [CBQN](https://github.com/dzaima/CBQN) `libcbqn.so`.
|
|
If CBQN is installed system-wide (using `sudo make install` in its source directory) and `bqnlsp` errors that it can't find the shared library, update the linker cache by executing `sudo ldconfig`.
|
|
If CBQN has been installed in a non-standard directory or can't be installed globally pass `libcbqnPath = '/path/to/CBQN'` to the setup function.
|
|
This will set the environment variables `LD_LIBRARY_PATH` (Linux) or `DYLD_LIBRARY_PATH` (macOS) to the provided path.
|
|
|
|
]],
|
|
default_config = {
|
|
root_dir = [[util.find_git_ancestor]],
|
|
},
|
|
},
|
|
}
|