From dae020787e5b29290e5cbd564fb5cdc4d29a0324 Mon Sep 17 00:00:00 2001 From: Joel Spadin <joelspadin@gmail.com> Date: Sun, 23 Apr 2023 16:55:01 -0500 Subject: [PATCH] docs: Update tree-sitter Updated web-tree-sitter and the devicetree grammar. web-tree-sitter now supports a custom function to locate its .wasm file, so performing a string replace is no longer necessary to get it to work with Docusaurus' Webpack configuration. We now check when tree-sitter is locating its .wasm file and provide the Webpack-adjusted URL. --- docs/package-lock.json | 14 ++++---- docs/package.json | 2 +- .../docusaurus-tree-sitter-plugin/index.js | 30 ------------------ docs/src/keymap-upgrade.js | 15 ++++++++- docs/static/tree-sitter-devicetree.wasm | Bin 34601 -> 40229 bytes 5 files changed, 22 insertions(+), 39 deletions(-) diff --git a/docs/package-lock.json b/docs/package-lock.json index 6f2ab304..3183a51c 100644 --- a/docs/package-lock.json +++ b/docs/package-lock.json @@ -21,7 +21,7 @@ "react-copy-to-clipboard": "^5.0.3", "react-dom": "^17.0.2", "react-toastify": "^7.0.4", - "web-tree-sitter": "^0.19.4" + "web-tree-sitter": "^0.20.8" }, "devDependencies": { "@docusaurus/module-type-aliases": "^2.4.0", @@ -15391,9 +15391,9 @@ } }, "node_modules/web-tree-sitter": { - "version": "0.19.4", - "resolved": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.19.4.tgz", - "integrity": "sha512-8G0xBj05hqZybCqBtW7RPZ/hWEtP3DiLTauQzGJZuZYfVRgw7qj7iaZ+8djNqJ4VPrdOO+pS2dR1JsTbsLxdYg==" + "version": "0.20.8", + "resolved": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.20.8.tgz", + "integrity": "sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==" }, "node_modules/webidl-conversions": { "version": "3.0.1", @@ -27040,9 +27040,9 @@ "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" }, "web-tree-sitter": { - "version": "0.19.4", - "resolved": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.19.4.tgz", - "integrity": "sha512-8G0xBj05hqZybCqBtW7RPZ/hWEtP3DiLTauQzGJZuZYfVRgw7qj7iaZ+8djNqJ4VPrdOO+pS2dR1JsTbsLxdYg==" + "version": "0.20.8", + "resolved": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.20.8.tgz", + "integrity": "sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==" }, "webidl-conversions": { "version": "3.0.1", diff --git a/docs/package.json b/docs/package.json index 44274bec..15d5aa38 100644 --- a/docs/package.json +++ b/docs/package.json @@ -28,7 +28,7 @@ "react-copy-to-clipboard": "^5.0.3", "react-dom": "^17.0.2", "react-toastify": "^7.0.4", - "web-tree-sitter": "^0.19.4" + "web-tree-sitter": "^0.20.8" }, "browserslist": { "production": [ diff --git a/docs/src/docusaurus-tree-sitter-plugin/index.js b/docs/src/docusaurus-tree-sitter-plugin/index.js index e782aea8..a6952ce7 100644 --- a/docs/src/docusaurus-tree-sitter-plugin/index.js +++ b/docs/src/docusaurus-tree-sitter-plugin/index.js @@ -16,36 +16,6 @@ module.exports = function () { test: /web-tree-sitter/, loader: "null-loader", }); - } else { - // The way web-tree-sitter loads tree-sitter.wasm isn't something that - // Docusaurus/Webpack identify as an asset. There is currently no way to - // set location of the file other than patching web-tree-sitter. - // (see https://github.com/tree-sitter/tree-sitter/issues/559) - rules.push({ - test: /tree-sitter\.js$/, - loader: "string-replace-loader", - options: { - multiple: [ - // Replace the path to tree-sitter.wasm with a "new URL()" to clue - // Webpack in that it is an asset. - { - search: '"tree-sitter.wasm"', - replace: '(new URL("tree-sitter.wasm", import.meta.url)).href', - strict: true, - }, - // Webpack replaces "new URL()" with the full URL to the asset, but - // web-tree-sitter will still add a prefix to it unless there is a - // Module.locateFile() function. - { - search: "var Module=void 0!==Module?Module:{};", - replace: `var Module = { - locateFile: (path, prefix) => path.startsWith('http') ? path : prefix + path, - };`, - strict: true, - }, - ], - }, - }); } return { diff --git a/docs/src/keymap-upgrade.js b/docs/src/keymap-upgrade.js index 19a5d8e3..788ab31a 100644 --- a/docs/src/keymap-upgrade.js +++ b/docs/src/keymap-upgrade.js @@ -2,10 +2,23 @@ import Parser from "web-tree-sitter"; import { Codes, Behaviors } from "./data/keymap-upgrade"; +const TREE_SITTER_WASM_URL = new URL( + "/node_modules/web-tree-sitter/tree-sitter.wasm", + import.meta.url +); + let Devicetree; export async function initParser() { - await Parser.init(); + await Parser.init({ + locateFile: (path, prefix) => { + // When locating tree-sitter.wasm, use a path that Webpack can map to the correct URL. + if (path == "tree-sitter.wasm") { + return TREE_SITTER_WASM_URL.href; + } + return prefix + path; + }, + }); Devicetree = await Parser.Language.load("/tree-sitter-devicetree.wasm"); } diff --git a/docs/static/tree-sitter-devicetree.wasm b/docs/static/tree-sitter-devicetree.wasm index fbcb0f18a70a75cc57c24aa7ae0a4b00aad5a95b..cce5ac9656c93720f1840dd7d89cb23b19d6e66b 100644 GIT binary patch literal 40229 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 J66B|X{s#)Tb{_x$ literal 34601 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 VuYJt0y<C+DK+`giHX6m3{2$rOR&D?Q