From b85af0cdab3a8f852cfc0e8df12660f50a2868c2 Mon Sep 17 00:00:00 2001 From: Andreas Arvidsson Date: Thu, 11 Dec 2025 13:12:41 +0100 Subject: [PATCH 1/2] Re-enable latex and swift for vscode versions >= 1.107.0 --- copy-assets.sh | 2 +- package-lock.json | 4 ++-- package.json | 10 +++++----- src/extension.ts | 25 +++++++++++++------------ 4 files changed, 21 insertions(+), 20 deletions(-) diff --git a/copy-assets.sh b/copy-assets.sh index f18bc94..873346c 100644 --- a/copy-assets.sh +++ b/copy-assets.sh @@ -1 +1 @@ -cp -r node_modules/@cursorless/tree-sitter-wasms/out parsers +cp -r node_modules/@cursorless/tree-sitter-wasms/out/. parsers/ diff --git a/package-lock.json b/package-lock.json index 2f89caa..0ab7292 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "parse-tree", - "version": "0.47.0", + "version": "0.48.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "parse-tree", - "version": "0.47.0", + "version": "0.48.0", "license": "MIT", "dependencies": { "semver": "^7.7.3", diff --git a/package.json b/package.json index d365ccd..138d75c 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "parse-tree", "displayName": "Parse tree", "description": "Access document syntax using tree-sitter", - "version": "0.47.0", + "version": "0.48.0", "publisher": "pokey", "repository": { "type": "git", @@ -89,6 +89,10 @@ "prettier": "prettier --write --list-different .", "lint": "eslint src && prettier --check ." }, + "dependencies": { + "semver": "^7.7.3", + "web-tree-sitter": "^0.25.10" + }, "devDependencies": { "@cursorless/tree-sitter-wasms": "0.7.0", "@eslint/js": "^9.31.0", @@ -102,9 +106,5 @@ "prettier": "^3.6.2", "typescript-eslint": "^8.41.0", "typescript": "^5.9.3" - }, - "dependencies": { - "semver": "^7.7.3", - "web-tree-sitter": "^0.25.10" } } diff --git a/src/extension.ts b/src/extension.ts index bf24f97..4fc5315 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -80,14 +80,15 @@ export function activate(context: vscode.ExtensionContext) { * https://github.com/cursorless-dev/cursorless/issues/2879 * https://github.com/cursorless-dev/vscode-parse-tree/issues/110 */ - const disabledLanguages = semver.gte(vscode.version, "1.98.0") - ? new Set(["latex", "swift"]) - : null; + const disabledLanguages = + semver.lt(vscode.version, "1.107.0") && semver.gte(vscode.version, "1.98.0") + ? new Set(["latex", "swift"]) + : null; const validateGetLanguage = (languageId: string) => { if (disabledLanguages?.has(languageId)) { throw new Error( - `${languageId} is disabled on vscode versions >= 1.98.0. See https://github.com/cursorless-dev/cursorless/issues/2879`, + `${languageId} is disabled on vscode versions 1.98.0 through 1.06.3. See https://github.com/cursorless-dev/cursorless/issues/2879` ); } }; @@ -117,7 +118,7 @@ export function activate(context: vscode.ExtensionContext) { absolute = path.join( context.extensionPath, "parsers", - language.module + ".wasm", + language.module + ".wasm" ); } @@ -186,7 +187,7 @@ export function activate(context: vscode.ExtensionContext) { function updateTree( parser: treeSitter.Parser, - edit: vscode.TextDocumentChangeEvent, + edit: vscode.TextDocumentChangeEvent ) { if (edit.contentChanges.length === 0) { return; @@ -239,7 +240,7 @@ export function activate(context: vscode.ExtensionContext) { async function openIfVisible(document: vscode.TextDocument) { if ( vscode.window.visibleTextEditors.some( - (editor) => editor.document.uri.toString() === document.uri.toString(), + (editor) => editor.document.uri.toString() === document.uri.toString() ) ) { await open(document); @@ -247,12 +248,12 @@ export function activate(context: vscode.ExtensionContext) { } context.subscriptions.push( - vscode.window.onDidChangeVisibleTextEditors(colorAllOpen), + vscode.window.onDidChangeVisibleTextEditors(colorAllOpen) ); context.subscriptions.push(vscode.workspace.onDidChangeTextDocument(edit)); context.subscriptions.push(vscode.workspace.onDidCloseTextDocument(close)); context.subscriptions.push( - vscode.workspace.onDidOpenTextDocument(openIfVisible), + vscode.workspace.onDidOpenTextDocument(openIfVisible) ); // Don't wait for the initial color, it takes too long to inspect the themes and causes VSCode extension host to hang @@ -263,7 +264,7 @@ export function activate(context: vscode.ExtensionContext) { if (ret == null) { const document = vscode.workspace.textDocuments.find( - (textDocument) => textDocument.uri.toString() === uri.toString(), + (textDocument) => textDocument.uri.toString() === uri.toString() ); if (document == null) { @@ -297,7 +298,7 @@ export function activate(context: vscode.ExtensionContext) { */ getLanguage(languageId: string): treeSitter.Language | undefined { console.warn( - "vscode-parse-tree: getLanguage is deprecated, use createQuery(languageId, source) instead.", + "vscode-parse-tree: getLanguage is deprecated, use createQuery(languageId, source) instead." ); validateGetLanguage(languageId); return languages[languageId]?.parser?.language ?? undefined; @@ -305,7 +306,7 @@ export function activate(context: vscode.ExtensionContext) { createQuery( languageId: string, - source: string, + source: string ): treeSitter.Query | undefined { const language = languages[languageId]?.parser?.language; if (language == null) { From 3969781dede195634ee5ff6850697cb277933a88 Mon Sep 17 00:00:00 2001 From: Andreas Arvidsson Date: Thu, 11 Dec 2025 13:16:39 +0100 Subject: [PATCH 2/2] Ran prettier --- src/extension.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/extension.ts b/src/extension.ts index 4fc5315..67325b4 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -88,7 +88,7 @@ export function activate(context: vscode.ExtensionContext) { const validateGetLanguage = (languageId: string) => { if (disabledLanguages?.has(languageId)) { throw new Error( - `${languageId} is disabled on vscode versions 1.98.0 through 1.06.3. See https://github.com/cursorless-dev/cursorless/issues/2879` + `${languageId} is disabled on vscode versions 1.98.0 through 1.06.3. See https://github.com/cursorless-dev/cursorless/issues/2879`, ); } }; @@ -118,7 +118,7 @@ export function activate(context: vscode.ExtensionContext) { absolute = path.join( context.extensionPath, "parsers", - language.module + ".wasm" + language.module + ".wasm", ); } @@ -187,7 +187,7 @@ export function activate(context: vscode.ExtensionContext) { function updateTree( parser: treeSitter.Parser, - edit: vscode.TextDocumentChangeEvent + edit: vscode.TextDocumentChangeEvent, ) { if (edit.contentChanges.length === 0) { return; @@ -240,7 +240,7 @@ export function activate(context: vscode.ExtensionContext) { async function openIfVisible(document: vscode.TextDocument) { if ( vscode.window.visibleTextEditors.some( - (editor) => editor.document.uri.toString() === document.uri.toString() + (editor) => editor.document.uri.toString() === document.uri.toString(), ) ) { await open(document); @@ -248,12 +248,12 @@ export function activate(context: vscode.ExtensionContext) { } context.subscriptions.push( - vscode.window.onDidChangeVisibleTextEditors(colorAllOpen) + vscode.window.onDidChangeVisibleTextEditors(colorAllOpen), ); context.subscriptions.push(vscode.workspace.onDidChangeTextDocument(edit)); context.subscriptions.push(vscode.workspace.onDidCloseTextDocument(close)); context.subscriptions.push( - vscode.workspace.onDidOpenTextDocument(openIfVisible) + vscode.workspace.onDidOpenTextDocument(openIfVisible), ); // Don't wait for the initial color, it takes too long to inspect the themes and causes VSCode extension host to hang @@ -264,7 +264,7 @@ export function activate(context: vscode.ExtensionContext) { if (ret == null) { const document = vscode.workspace.textDocuments.find( - (textDocument) => textDocument.uri.toString() === uri.toString() + (textDocument) => textDocument.uri.toString() === uri.toString(), ); if (document == null) { @@ -298,7 +298,7 @@ export function activate(context: vscode.ExtensionContext) { */ getLanguage(languageId: string): treeSitter.Language | undefined { console.warn( - "vscode-parse-tree: getLanguage is deprecated, use createQuery(languageId, source) instead." + "vscode-parse-tree: getLanguage is deprecated, use createQuery(languageId, source) instead.", ); validateGetLanguage(languageId); return languages[languageId]?.parser?.language ?? undefined; @@ -306,7 +306,7 @@ export function activate(context: vscode.ExtensionContext) { createQuery( languageId: string, - source: string + source: string, ): treeSitter.Query | undefined { const language = languages[languageId]?.parser?.language; if (language == null) {