aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/lspconfig/server_configurations/uiua.lua31
1 files changed, 31 insertions, 0 deletions
diff --git a/lua/lspconfig/server_configurations/uiua.lua b/lua/lspconfig/server_configurations/uiua.lua
new file mode 100644
index 00000000..b102f8c3
--- /dev/null
+++ b/lua/lspconfig/server_configurations/uiua.lua
@@ -0,0 +1,31 @@
+local util = require 'lspconfig.util'
+
+return {
+ default_config = {
+ cmd = { 'uiua', 'lsp' },
+ filetypes = { 'uiua' },
+ root_dir = function(fname)
+ return util.root_pattern('main.ua', '.fmt.ua')(fname) or util.find_git_ancestor(fname)
+ end,
+ },
+ docs = {
+ description = [[
+https://github.com/uiua-lang/uiua/
+
+The builtin language server of the Uiua interpreter.
+
+The Uiua interpreter can be installed with `cargo install uiua`
+]],
+ default_config = {
+ cmd = { 'uiua', 'lsp' },
+ filetypes = { 'uiua' },
+ root_dir = [[
+ root_pattern(
+ 'main.ua',
+ 'fmt.ua',
+ '.git'
+ )
+ ]],
+ },
+ },
+}