mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-09-24 21:50:14 +01:00
This PR adds a new command to the Carbon VSCode extension "carbon: Restart language server" which acts similar to clangd / bazel extensions. While not useful during regular working of the extension this helps when LSP either crashes or the toolchain is updated. In order to support graceful restart, I needed to add a Call handler for "shutdown" which is noop for now. Lsp clients always call shutdown before sending exit. --------- Co-authored-by: jonmeow <jperkins@google.com>
83 lines
2.1 KiB
JSON
83 lines
2.1 KiB
JSON
{
|
|
"name": "carbon-vscode",
|
|
"displayName": "Carbon Language",
|
|
"version": "0.0.5",
|
|
"publisher": "carbon-lang",
|
|
"description": "Carbon language support for Visual Studio Code.",
|
|
"repository": {
|
|
"url": "https://github.com/carbon-language/carbon-lang"
|
|
},
|
|
"engines": {
|
|
"vscode": "^1.90.0"
|
|
},
|
|
"categories": [
|
|
"Programming Languages"
|
|
],
|
|
"icon": "images/icon.png",
|
|
"activationEvents": [],
|
|
"main": "./dist/extension.js",
|
|
"contributes": {
|
|
"languages": [
|
|
{
|
|
"id": "carbon",
|
|
"aliases": [
|
|
"Carbon"
|
|
],
|
|
"extensions": [
|
|
".carbon"
|
|
],
|
|
"configuration": "./language-configuration.json"
|
|
}
|
|
],
|
|
"grammars": [
|
|
{
|
|
"language": "carbon",
|
|
"scopeName": "source.carbon",
|
|
"path": "./carbon.tmLanguage.json"
|
|
}
|
|
],
|
|
"configuration": {
|
|
"type": "object",
|
|
"title": "Carbon Language",
|
|
"properties": {
|
|
"carbon.carbonPath": {
|
|
"type": "string",
|
|
"description": "The path to the 'carbon' binary.",
|
|
"default": "./bazel-bin/toolchain/carbon"
|
|
}
|
|
}
|
|
},
|
|
"commands": [
|
|
{
|
|
"command": "carbon.lsp.restart",
|
|
"title": "carbon: Restart language server"
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"vscode:prepublish": "npm run package",
|
|
"compile": "npm run check-types && npm run lint && node esbuild.js",
|
|
"watch": "npm-run-all -p watch:*",
|
|
"watch:esbuild": "node esbuild.js --watch",
|
|
"watch:tsc": "tsc --noEmit --watch --project tsconfig.json",
|
|
"package": "npm run check-types && npm run lint && node esbuild.js --production",
|
|
"compile-tests": "tsc -p . --outDir out",
|
|
"check-types": "tsc --noEmit",
|
|
"lint": "eslint"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.13.0",
|
|
"@stylistic/eslint-plugin": "^2.9.0",
|
|
"@types/node": "^20",
|
|
"@types/vscode": "^1.73.0",
|
|
"@vscode/vsce": "^2.27.0",
|
|
"esbuild": "^0.24.0",
|
|
"eslint": "^9.13.0",
|
|
"typescript": "^5.7.2",
|
|
"typescript-eslint": "^8.16.0"
|
|
},
|
|
"dependencies": {
|
|
"vscode-languageclient": "^9.0.1"
|
|
}
|
|
}
|