aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/mason-registry/index.lua1
-rw-r--r--lua/mason-registry/raku-navigator/init.lua22
-rw-r--r--lua/mason/mappings/language.lua1
3 files changed, 24 insertions, 0 deletions
diff --git a/lua/mason-registry/index.lua b/lua/mason-registry/index.lua
index 1af8af07..ff845d55 100644
--- a/lua/mason-registry/index.lua
+++ b/lua/mason-registry/index.lua
@@ -182,6 +182,7 @@ return {
["python-lsp-server"] = "mason-registry.python-lsp-server",
["quick-lint-js"] = "mason-registry.quick-lint-js",
["r-languageserver"] = "mason-registry.r-languageserver",
+ ["raku-navigator"] = "mason-registry.raku-navigator",
["reason-language-server"] = "mason-registry.reason-language-server",
["remark-cli"] = "mason-registry.remark-cli",
["remark-language-server"] = "mason-registry.remark-language-server",
diff --git a/lua/mason-registry/raku-navigator/init.lua b/lua/mason-registry/raku-navigator/init.lua
new file mode 100644
index 00000000..3c9cb3e1
--- /dev/null
+++ b/lua/mason-registry/raku-navigator/init.lua
@@ -0,0 +1,22 @@
+local Pkg = require "mason-core.package"
+local git = require "mason-core.managers.git"
+local path = require "mason-core.path"
+
+return Pkg.new {
+ name = "raku-navigator",
+ desc = [[Raku Language Server that includes Raku critic and code navigation]],
+ homepage = "https://github.com/bscan/RakuNavigator",
+ languages = { Pkg.Lang.Raku },
+ categories = { Pkg.Cat.LSP },
+ ---@async
+ ---@param ctx InstallContext
+ install = function(ctx)
+ git.clone({ "https://github.com/bscan/RakuNavigator" }).with_receipt()
+ ctx.spawn.npm { "install" }
+ ctx.spawn.npm { "run", "compile" }
+ ctx:link_bin(
+ "raku-navigator",
+ ctx:write_node_exec_wrapper("raku-navigator", path.concat { "server", "out", "server.js" })
+ )
+ end,
+}
diff --git a/lua/mason/mappings/language.lua b/lua/mason/mappings/language.lua
index fdd32f9c..b0b72ad5 100644
--- a/lua/mason/mappings/language.lua
+++ b/lua/mason/mappings/language.lua
@@ -97,6 +97,7 @@ return {
purescript = { "purescript-language-server" },
python = { "autoflake", "autopep8", "black", "blue", "debugpy", "flake8", "isort", "jedi-language-server", "mypy", "pydocstyle", "pylama", "pylint", "pyproject-flake8", "pyre", "pyright", "python-lsp-server", "reorder-python-imports", "rstcheck", "ruff", "ruff-lsp", "semgrep", "sourcery", "usort", "vulture", "yapf" },
r = { "r-languageserver" },
+ raku = { "raku-navigator" },
reason = { "reason-language-server" },
rescript = { "rescript-lsp" },
["robot framework"] = { "robotframework-lsp" },