mirror of
https://github.com/WhatsApp/erlang-language-platform.git
synced 2025-12-23 12:26:48 +00:00
Summary: As title Reviewed By: VLanvin Differential Revision: D56627885 fbshipit-source-id: 3988345f2eea8fa0ae9f342a4b4adafeb6516e4f
238 lines
7.4 KiB
JSON
238 lines
7.4 KiB
JSON
{
|
|
"name": "erlang-language-platform",
|
|
"description": "Erlang language server",
|
|
"author": "Meta Platforms, Inc",
|
|
"license": "Apache2",
|
|
"version": "0.23.0",
|
|
"icon": "images/elp-logo-color.png",
|
|
"homepage": "https://whatsapp.github.io/erlang-language-platform/",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/WhatsApp/erlang-language-platform"
|
|
},
|
|
"publisher": "erlang-language-platform",
|
|
"categories": [
|
|
"Debuggers",
|
|
"Formatters",
|
|
"Linters",
|
|
"Programming Languages",
|
|
"Snippets",
|
|
"Testing"
|
|
],
|
|
"keywords": [
|
|
"elp"
|
|
],
|
|
"engines": {
|
|
"vscode": "^1.75.0"
|
|
},
|
|
"activationEvents": [
|
|
"onLanguage:erlang"
|
|
],
|
|
"main": "./client/out/extension",
|
|
"contributes": {
|
|
"languages": [
|
|
{
|
|
"id": "erlang",
|
|
"aliases": [
|
|
"Erlang"
|
|
],
|
|
"extensions": [
|
|
".erl",
|
|
".hrl",
|
|
".app.src",
|
|
".app",
|
|
".escript",
|
|
"rebar.config",
|
|
"rebar.lock",
|
|
"rebar.config.script",
|
|
"sys.config",
|
|
"sys.config.src",
|
|
"sys.ct.config",
|
|
"sys.shell.config",
|
|
".yrl",
|
|
".xrl"
|
|
],
|
|
"configuration": "./language-configuration.json"
|
|
}
|
|
],
|
|
"grammars": [
|
|
{
|
|
"language": "erlang",
|
|
"scopeName": "source.erlang",
|
|
"path": "./third-party/grammar/Erlang.plist"
|
|
}
|
|
],
|
|
"configuration": {
|
|
"type": "object",
|
|
"title": "Erlang Language Platform",
|
|
"properties": {
|
|
"elpClient.serverPath": {
|
|
"type": "string",
|
|
"description": "The path to the ELP executable. If empty, uses the binary included in the extension",
|
|
"default": ""
|
|
},
|
|
"elpClient.serverArgs": {
|
|
"type": "string",
|
|
"description": "The arguments to invoke the language server with",
|
|
"default": "server"
|
|
},
|
|
"elp.ai.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Enable support for AI-based completions.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.diagnostics.disabled": {
|
|
"default": [],
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"markdownDescription": "List of ELP diagnostics to disable.",
|
|
"type": "array",
|
|
"uniqueItems": true
|
|
},
|
|
"elp.diagnostics.enableExperimental": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show experimental ELP diagnostics that might\nhave more false positives than usual.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.diagnostics.enableOtp": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to report diagnostics for OTP files.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.eqwalizer.all": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to report Eqwalizer diagnostics for the whole project and not only for opened files.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.eqwalizer.chunkSize": {
|
|
"default": 100,
|
|
"markdownDescription": "Chunk size to use for project-wide eqwalization.",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"elp.eqwalizer.maxTasks": {
|
|
"default": 32,
|
|
"markdownDescription": "Maximum number of tasks to run in parallel for project-wide eqwalization.",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"elp.hoverActions.docLinks.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show Hover Actions of type 'docs'. Only applies when\n`#elp.hoverActions.enable#` is set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.hoverActions.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show Hover Actions.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.inlayHints.parameterHints.enable": {
|
|
"default": true,
|
|
"markdownDescription": "Whether to show function parameter name inlay hints at the call\nsite.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.debug.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show the `Debug` lenses. Only applies when\n`#elp.lens.enable#` is set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show Code Lenses in Erlang files.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.links.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show the `Link` lenses. Only applies when\n`#elp.lens.enable#` is set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.run.coverage.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Display code coverage information when running tests via the\nCode Lenses. Only applies when `#elp.lens.enabled` and\n`#elp.lens.run.enable#` are set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.run.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show the `Run` lenses. Only applies when\n`#elp.lens.enable#` is set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.lens.run.interactive.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Whether to show the `Run Interactive` lenses. Only applies when\n`#elp.lens.enable#` is set.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.log": {
|
|
"default": "error",
|
|
"markdownDescription": "Configure LSP-based logging using env_logger syntax.",
|
|
"type": "string"
|
|
},
|
|
"elp.signatureHelp.enable": {
|
|
"default": true,
|
|
"markdownDescription": "Whether to show Signature Help.",
|
|
"type": "boolean"
|
|
},
|
|
"elp.typesOnHover.enable": {
|
|
"default": false,
|
|
"markdownDescription": "Display types when hovering over expressions.",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"semanticTokenTypes": [],
|
|
"semanticTokenModifiers": [
|
|
{
|
|
"id": "bound",
|
|
"description": "Style for bound variables in patterns"
|
|
},
|
|
{
|
|
"id": "exported_function",
|
|
"description": "Style for exported function declaration names"
|
|
},
|
|
{
|
|
"id": "deprecated_function",
|
|
"description": "Style for deprecated function declaration names"
|
|
}
|
|
],
|
|
"semanticTokenScopes": [
|
|
{
|
|
"language": "erlang",
|
|
"scopes": {
|
|
"function": [
|
|
"entity.name.function.erlang"
|
|
],
|
|
"variable": [
|
|
"variable.other.erlang"
|
|
],
|
|
"*.bound": [
|
|
"markup.underline"
|
|
],
|
|
"*.exported_function": [
|
|
"markup.underline"
|
|
],
|
|
"*.deprecated_function": [
|
|
"markup.strikethrough"
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"vscode:prepublish": "npm run compile",
|
|
"compile": "tsc -b",
|
|
"watch": "tsc -b -w",
|
|
"lint": "eslint ./client/src --ext .ts,.tsx",
|
|
"postinstall": "cd client && npm install && cd ..",
|
|
"test": "sh ./scripts/e2e.sh",
|
|
"package": "vsce package -o erlang-language-platform.vsix"
|
|
},
|
|
"devDependencies": {
|
|
"@types/mocha": "^9.1.0",
|
|
"@types/node": "^16.11.7",
|
|
"@typescript-eslint/eslint-plugin": "^5.54.0",
|
|
"@typescript-eslint/parser": "^5.54.0",
|
|
"eslint": "^8.35.0",
|
|
"mocha": "^9.2.1",
|
|
"typescript": "^5.0.2"
|
|
}
|
|
}
|