The extension highlights OpenQASM (a TextMate grammar) and starts `wai-quantum lsp` (path, extra arguments, generator inputs and shots in its settings). Its lenses and palette commands run Run, Plan, Critique, Shortcuts and Receipt through the server, and each answer goes to an output panel; a receipt can be saved as JSON. When the command line is missing it says so, with the install commands of the command line's README, and offers the setting for its path. It builds to one bundled file and packages to a .vsix with the pinned packaging tool; it is not published. editors/ holds a configuration for three kinds of editor: one configured in Lua (the server through the built-in configuration or the lspconfig plugin, the grammar through the tree-sitter plugin, and a command for each of the server's commands), one configured by languages.toml (the server, the formatter and the grammar, with its queries in that editor's capture names), and one with WebAssembly extensions described by extension.toml (a small extension that finds and starts the server, built for wasm32-wasip2; every locked crate is at least two weeks old). test/check.mjs (79 checks) holds the manifest to the server's commands, the highlighting token by token, the missing-binary message to the README, every configuration to its syntax and to the server and the grammar, the query copies to the grammar's, and the package to exactly the extension's files. Co-Authored-By: Claude Opus 5.5 <[email protected]>
34 lines
740 B
JSON
34 lines
740 B
JSON
{
|
|
"comments": {
|
|
"lineComment": "//",
|
|
"blockComment": ["/*", "*/"]
|
|
},
|
|
"brackets": [
|
|
["{", "}"],
|
|
["[", "]"],
|
|
["(", ")"]
|
|
],
|
|
"autoClosingPairs": [
|
|
{ "open": "{", "close": "}" },
|
|
{ "open": "[", "close": "]" },
|
|
{ "open": "(", "close": ")" },
|
|
{ "open": "\"", "close": "\"", "notIn": ["string", "comment"] },
|
|
{ "open": "/*", "close": " */", "notIn": ["string"] }
|
|
],
|
|
"surroundingPairs": [
|
|
["{", "}"],
|
|
["[", "]"],
|
|
["(", ")"],
|
|
["\"", "\""]
|
|
],
|
|
"folding": {
|
|
"markers": {
|
|
"start": "^\\s*//\\s*@lock\\b",
|
|
"end": "^\\s*//\\s*@unlock\\b"
|
|
}
|
|
},
|
|
"indentationRules": {
|
|
"increaseIndentPattern": "^.*\\{[^}\"']*$",
|
|
"decreaseIndentPattern": "^\\s*\\}"
|
|
}
|
|
}
|