mirror of
https://github.com/google/gn-language-server.git
synced 2025-12-23 12:26:43 +00:00
140 lines
3.7 KiB
JSON
140 lines
3.7 KiB
JSON
{
|
|
"name": "gn",
|
|
"displayName": "GN Language",
|
|
"description": "Language server for GN, the build configuration language used in Chromium, Fuchsia, and other projects",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/google/gn-language-server"
|
|
},
|
|
"version": "1.9.14",
|
|
"publisher": "Google",
|
|
"engines": {
|
|
"vscode": "^1.82.0"
|
|
},
|
|
"categories": [
|
|
"Programming Languages"
|
|
],
|
|
"main": "./dist/extension.js",
|
|
"activationEvents": [
|
|
"workspaceContains:**/BUILD.gn"
|
|
],
|
|
"contributes": {
|
|
"commands": [
|
|
{
|
|
"command": "gn.openBuildFile",
|
|
"title": "Open the nearest BUILD.gn",
|
|
"category": "GN",
|
|
"icon": "$(go-to-file)"
|
|
}
|
|
],
|
|
"menus": {
|
|
"editor/title/run": [
|
|
{
|
|
"command": "gn.openBuildFile",
|
|
"group": "navigation",
|
|
"when": "gn.inGnWorkspace"
|
|
}
|
|
]
|
|
},
|
|
"languages": [
|
|
{
|
|
"id": "gn",
|
|
"aliases": [
|
|
"GN",
|
|
"gn"
|
|
],
|
|
"extensions": [
|
|
".gni",
|
|
".gn"
|
|
],
|
|
"filenames": [
|
|
".gn"
|
|
],
|
|
"configuration": "./languages/gn.language-configuration.json"
|
|
}
|
|
],
|
|
"grammars": [
|
|
{
|
|
"language": "gn",
|
|
"scopeName": "source.gn",
|
|
"path": "./syntaxes/gn.tmLanguage.json"
|
|
}
|
|
],
|
|
"configuration": {
|
|
"title": "GN",
|
|
"properties": {
|
|
"gn.binaryPath": {
|
|
"type": "string",
|
|
"default": null,
|
|
"description": "Path to the GN binary. If unset, it is auto-detected."
|
|
},
|
|
"gn.backgroundIndexing": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Enables background indexing."
|
|
},
|
|
"gn.errorReporting": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Reports syntax errors."
|
|
},
|
|
"gn.experimental.parallelIndexing": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Enables parallel indexing (experimental)."
|
|
},
|
|
"gn.experimental.targetLens": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Enables code lens for build targets (experimental)."
|
|
},
|
|
"gn.experimental.undefinedVariableAnalysis": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Enables undefined variable analysis (experimental)."
|
|
},
|
|
"gn.experimental.workspaceSymbols": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Enables workspace symbols (experimental)."
|
|
},
|
|
"gn.trace.server": {
|
|
"type": "string",
|
|
"enum": [
|
|
"off",
|
|
"messages",
|
|
"verbose"
|
|
],
|
|
"default": "off",
|
|
"description": "Traces the language server communication."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"scripts": {
|
|
"build": "rm -rf build && npm run build-extension && npm run build-server",
|
|
"build-extension": "webpack",
|
|
"build-server": "cargo build --release && bash -c 'cp ../target/${CARGO_BUILD_TARGET:-.}/release/gn-language-server${APPDATA:+.exe} dist/'",
|
|
"package": "vsce package",
|
|
"lint": "gts lint",
|
|
"fix": "gts fix"
|
|
},
|
|
"dependencies": {
|
|
"vscode-languageclient": "^9.0.1"
|
|
},
|
|
"devDependencies": {
|
|
"@types/mocha": "^10.0.10",
|
|
"@types/node": "20.x",
|
|
"@types/vscode": "^1.82.0",
|
|
"@typescript-eslint/eslint-plugin": "^8.17.0",
|
|
"@typescript-eslint/parser": "^8.17.0",
|
|
"@vscode/vsce": "^3.2.1",
|
|
"eslint": "^8.57.1",
|
|
"gts": "^5.3.1",
|
|
"ovsx": "^0.10.1",
|
|
"ts-loader": "^9.5.1",
|
|
"typescript": "^5.7.2",
|
|
"webpack": "^5.95.0",
|
|
"webpack-cli": "^5.1.4"
|
|
}
|
|
}
|