diff --git a/elixir-language-configuration.json b/elixir-language-configuration.json new file mode 100644 index 0000000..659c337 --- /dev/null +++ b/elixir-language-configuration.json @@ -0,0 +1,75 @@ +{ + "comments": { + "lineComment": "#" + }, + "brackets": [ + ["{", "}"], + ["[", "]"], + ["(", ")"], + ["<<", ">>"] + ], + "surroundingPairs": [ + ["{", "}"], + ["[", "]"], + ["(", ")"], + ["<", ">"], + ["'", "'"], + ["\"", "\""] + ], + "autoClosingPairs": [ + { "open": "'", "close": "'", "notIn": ["string", "comment"] }, + { "open": "\"", "close": "\"", "notIn": ["comment"] }, + { "open": "~B\"", "close": "\"" }, + { "open": "~C\"", "close": "\"" }, + { "open": "~D\"", "close": "\"" }, + { "open": "~E\"", "close": "\"" }, + { "open": "~F\"", "close": "\"" }, + { "open": "~H\"", "close": "\"" }, + { "open": "~L\"", "close": "\"" }, + { "open": "~N\"", "close": "\"" }, + { "open": "~R\"", "close": "\"" }, + { "open": "~S\"", "close": "\"" }, + { "open": "~T\"", "close": "\"" }, + { "open": "~U\"", "close": "\"" }, + { "open": "~b\"", "close": "\"" }, + { "open": "~c\"", "close": "\"" }, + { "open": "~e\"", "close": "\"" }, + { "open": "~r\"", "close": "\"" }, + { "open": "~s\"", "close": "\"" }, + { "open": "~w\"", "close": "\"" }, + { "open": "\"\"\"", "close": "\"\"\"" }, + { "open": "~B\"\"\"", "close": "\"\"\"" }, + { "open": "~C\"\"\"", "close": "\"\"\"" }, + { "open": "~D\"\"\"", "close": "\"\"\"" }, + { "open": "~E\"\"\"", "close": "\"\"\"" }, + { "open": "~F\"\"\"", "close": "\"\"\"" }, + { "open": "~H\"\"\"", "close": "\"\"\"" }, + { "open": "~L\"\"\"", "close": "\"\"\"" }, + { "open": "~N\"\"\"", "close": "\"\"\"" }, + { "open": "~R\"\"\"", "close": "\"\"\"" }, + { "open": "~S\"\"\"", "close": "\"\"\"" }, + { "open": "~T\"\"\"", "close": "\"\"\"" }, + { "open": "~U\"\"\"", "close": "\"\"\"" }, + { "open": "~b\"\"\"", "close": "\"\"\"" }, + { "open": "~c\"\"\"", "close": "\"\"\"" }, + { "open": "~e\"\"\"", "close": "\"\"\"" }, + { "open": "~r\"\"\"", "close": "\"\"\"" }, + { "open": "~s\"\"\"", "close": "\"\"\"" }, + { "open": "~w\"\"\"", "close": "\"\"\"" }, + { "open": "`", "close": "`", "notIn": ["string", "comment"] }, + { "open": "(", "close": ")" }, + { "open": "{", "close": "}" }, + { "open": "[", "close": "]" }, + { "open": "<<", "close": ">>" } + ], + "indentationRules": { + "increaseIndentPattern": "(after|else|catch|rescue|fn|^.*(do|<\\-|\\->|\\{|\\[|\\=))\\s*$", + "decreaseIndentPattern": "^\\s*((\\}|\\])\\s*$|(after|else|catch|rescue|end)\\b)" + }, + "folding": { + "markers": { + "start": "^\\s*(@(moduledoc|typedoc|doc)\\b\\s+(~S)?\"\"\")|(#\\s*region\\b)", + "end": "^\\s+(\"\"\")|(#\\s*endregion\\b)" + } + } +} diff --git a/package.json b/package.json index af1c9f4..92f439c 100644 --- a/package.json +++ b/package.json @@ -116,7 +116,8 @@ "extensions": [ ".ex", ".exs" - ] + ], + "configuration": "./elixir-language-configuration.json" } ], "commands": [],