aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lua/lspconfig/configs/alloy_ls.lua17
1 files changed, 17 insertions, 0 deletions
diff --git a/lua/lspconfig/configs/alloy_ls.lua b/lua/lspconfig/configs/alloy_ls.lua
new file mode 100644
index 00000000..4a9a06e2
--- /dev/null
+++ b/lua/lspconfig/configs/alloy_ls.lua
@@ -0,0 +1,17 @@
+return {
+ default_config = {
+ cmd = { 'alloy', 'lsp' },
+ filetypes = { 'alloy' },
+ root_dir = function(fname)
+ return vim.fs.dirname(vim.fs.find('.git', { path = fname, upward = true })[1])
+ end,
+ single_file_support = true,
+ },
+ docs = {
+ description = [[
+https://github.com/AlloyTools/org.alloytools.alloy
+
+Alloy is a formal specification language for describing structures and a tool for exploring them.
+]],
+ },
+}