{"_id":"tree-sitter-batch","_rev":"15-37fa1c8241725db17f1cede4f7958662","name":"tree-sitter-batch","dist-tags":{"latest":"0.11.1"},"versions":{"0.1.0":{"name":"tree-sitter-batch","version":"0.1.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.1.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"c7ab8e38d0f183e0edeaaa19989c061f9fd0c6ce","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.1.0.tgz","fileCount":16,"integrity":"sha512-Lcv+l9TORVJJ/L8J78xJ31TPRdE0bk/LPNgAsXXPaBGJbt90D8eE8ZFD8IR9QXQAFnQc3R2gHhePtB4UQlEiMA==","signatures":[{"sig":"MEUCIQCFMgLzatX2BuJhg+ewdNWTsnZ0foDJJ09/O0/rDuOotQIgGgI30nOIHMVsX97t3pkY4xo/HGHVp2avvvilfplZ8ec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":262810},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"60f6ab71f0ca35755a9b6217e09602ffd7ffa46a","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"tinovyatkin","email":"tino@vtkn.io"},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"25.8.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"^0.26.6","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":"^0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.1.0_1773187963480_0.9681008372156703","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"tree-sitter-batch","version":"0.2.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.2.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"e7ce2cfbc7f0207efe91ac4c42d51da358ddd2b8","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.2.0.tgz","fileCount":23,"integrity":"sha512-5xJKFsbcdZxx3S2hTPwUBov7TZ5hnFkf1Pdpb3rUQsOcoJFM0tetxY+dIQ1hw7tkUy1hkLYnFYvyEsdPdsiYFg==","signatures":[{"sig":"MEUCIAXO4iVGu7TIC0WTdsI2OWjkdlnnbt/4WSp+vfbpJDLiAiEAj2EVdxi/43dDJupyUVPoV+zfgvwAwuE647qI2Nn+nBk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1147539},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"26f9efdfa9db4b9c80c4901a4697289c201bce07","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.9.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"^0.26.6","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":"^0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.2.0_1773190080142_0.006051266594355287","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"tree-sitter-batch","version":"0.3.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.3.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"957c5ea43737cd9fe0ac7397acfb5578c30cf521","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.3.0.tgz","fileCount":23,"integrity":"sha512-9HNFBPyEmoOcbeHh5ptCaGNX5Oo4qYiZWJQ0ilvRzgtFjSVByFOmIlg7HVAhos+8EI2aQRv99B/t+FgKWoHORA==","signatures":[{"sig":"MEUCIQDGbc58OOQ5HqgH9IWkhkkOQ4Jb+FL5ll4YbeowPcVQngIgBUk8xqw3FpswbVShouWWPtzzLRjx/sJeAHmEcJbTzdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1143749},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"b6b4f3a8ffc7bdb6efcc8b970d7d0a4ef71e17b4","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.9.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.3.0_1773744495726_0.16057626747819276","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"tree-sitter-batch","version":"0.3.1","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.3.1","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"4fa6824253d2830aa90bf5b8bb9a80a696445627","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.3.1.tgz","fileCount":23,"integrity":"sha512-UJljg8G982vvVdgiJ4l3bRdhxetmrwwsv4EQRp5+L5oZuiwQsNRqIpnUVnfl3xJ2PzH3xceSwkEPEV4YntcxTw==","signatures":[{"sig":"MEUCIBDkxm003RHNrTBEMvGC5ah8Mc/lK7Pwse0DoZL6IlHjAiEAhb2lWAurjaPnq+CstLmo1cQMfgfHGPScJEf/G0XgOqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1143749},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"9ed8267ac84d9607f531214835404609a04880b3","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.9.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.3.1_1773756104599_0.9163632169689659","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"tree-sitter-batch","version":"0.3.2","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.3.2","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"1b16b7581d0bffa21b17e247fc8aaa9644aae1a2","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.3.2.tgz","fileCount":23,"integrity":"sha512-rE/MKcUc3Fow0DdFZ2tbYoS6FIvVEw8gyeeDPiqRc5xfzl+Z8r9Pkb8GFDS2E2VXHVckI24o8X4yflyiRTVWdw==","signatures":[{"sig":"MEUCIQCB9OBrfeIfORpwZ5xc8YFzQz+ya7WolobsgY59r551dQIgAzzltJl0UGkPcYo6eMV1W/YFNinZTJb0eEpNgh9e2dA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":797022},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"5e28ad0ae4dcb8ce70a1ff1f53799dd36a2cc849","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.9.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.3.2_1773758617209_0.782922296930662","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"tree-sitter-batch","version":"0.4.1","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.4.1","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"78bd4d702947e24a7ab145b50bfe55f362477a28","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.4.1.tgz","fileCount":23,"integrity":"sha512-QqpbSvXFC1nHNmtTEcnHcb/hM+elcwVuf5VLGv6a5xp+R2hone8k0Jza3hhX32C4jmtOdA2lhY5Xd0LrDV8Ysw==","signatures":[{"sig":"MEYCIQD5dek/z+Nxd/zRQEFopKa2Az94ub0BeFl+iAhSFZ5OxAIhAJwg0++dnxcP+Yoo14C4i3EpmFMDwLj7QQe7REb5WabV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":839423},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"5351a4e5f72e8c0ac702aae8003f0e101cbcf3a5","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.4.1_1775080306424_0.9180283118151225","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"tree-sitter-batch","version":"0.4.2","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.4.2","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"9262ac19a3d5a7d08b6b374e9c84f1196c91ab50","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.4.2.tgz","fileCount":23,"integrity":"sha512-gBragLLy0Z9t8ZNWdEFYPY/PDYvmmYi+KCxLaCxSctKb2P5+fvEhGDwZYKhIpBaHG1iXJZSdEB9Q0Pduuh7abA==","signatures":[{"sig":"MEUCIHhu1ES5TbXFPK5nXebW9VAo0Refj9krqvmN53JMKexUAiEAycMq43G4ed/jsobQQxT+2GGbgteEJi5vOxD7KIP9ceY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":852462},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"8694fbc701ff6e35e3711bf39225860d13079906","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.9.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.0","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.4.2_1775092252977_0.7093770845826806","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"tree-sitter-batch","version":"0.5.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.5.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"411ba9ae0e3e7f610068af87e3d8252069217c72","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.5.0.tgz","fileCount":23,"integrity":"sha512-yZ/yL75/oWxhW5/c/TW/zIzHU++moiE7yO+F5a4q93y9g5VN0Ur/pHJ8pt71rUX6S3tS0F+NmciGcNQDDf0zSQ==","signatures":[{"sig":"MEYCIQDZ33fY/tRpEnXuD0BKj3RW2iRKdxdqBS8jvAZ8ggTIGgIhAIIOTmtb3GOtNXJEMi4u7bWEX66hI+wA8rH6awRkJ68G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":852973},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"c80c70aba0013e47f207c56c7377c1ee71c6cdfc","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.5.0_1775166247402_0.052993806515580166","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"tree-sitter-batch","version":"0.6.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.6.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"dd68a838e70a6fd444fa8d2e45623ae418e1ace5","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.6.0.tgz","fileCount":23,"integrity":"sha512-B/A1QZXU9nd1SFh7BWx7pfngYjv12C35isx02fGTWmiJUOe5QmJsWGRwY/xL7ZnjQEMiMWfuADB9zxjIqnewzw==","signatures":[{"sig":"MEQCIGNUHtOIAN3oieCxxZbC8zj6kN2JfB33yZNeRPOxdQKZAiAfzgoArdnDfYestrhPrGMvch4xXwpoARxQYkAIvz5eeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":871031},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"f3740f5b2f292bdc3e17de1cb3ab7ec7f74fcc7c","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate && tree-sitter-go-types","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.6.0_1776289954150_0.24145232129940775","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"tree-sitter-batch","version":"0.7.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.7.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"d4a9733f596444e73f277af93ec55ab50e32ca76","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.7.0.tgz","fileCount":23,"integrity":"sha512-nubtKzFzUe56fiZOY0FyyOUFUoxQ+o9KCxU4gDG3wzYgDb7lOjyhcJbeTENsO0Mtnnr2VPfQjb/PQ0rwpEysZQ==","signatures":[{"sig":"MEYCIQDzsLWDUA9trIEOvmVgHGOs46E2MLZpLaAlZjRC5pJq1AIhAKjCRe+SGGY6jCzDEBK1mJZOx5JG2eKepbO92+2EifQu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":901629},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"34c1516dc82654d1140f1378ad7cf04dfe68bd4c","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate && tree-sitter-go-types","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.7.0_1776326613976_0.05984977802806646","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"tree-sitter-batch","version":"0.7.2","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.7.2","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"d53a8004d2b88e6c82f8ed51af5c9417cff81651","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.7.2.tgz","fileCount":23,"integrity":"sha512-6YcdmUnzVawUUJIbYelJqLGUE8uUxOD9Q+ba38eApI542xb9ynO+EsRq4DLqjvQWiAi7EOLAWJePYd60Sf2s4Q==","signatures":[{"sig":"MEUCIAuyyiw6rRpDs+ueL1f3CDAtx4Zni0ygCwm4/mOt1aqWAiEA62RJp1fu6ETOuRMaS/YuI9APH/c3Pft3GR9PA0xltP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":899686},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"0a9a39ee31b19f718ae0481458cbbe5155f74149","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate && tree-sitter-go-types","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.7.2_1776586411607_0.15266957400856107","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"tree-sitter-batch","version":"0.8.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.8.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"c409b1b3228cd4faca10c10945d06515da4c8ecc","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.8.0.tgz","fileCount":23,"integrity":"sha512-0Si8QlTWJ3Kht4URXUMfGTSiWb+uKXNDzUO3dJG9EdfInFdRujJJumqQTzw2jMwWYLUkYVS/XOG6Lkvyk7DxSQ==","signatures":[{"sig":"MEUCIGaSCFdpfHpFACz0Hykgv7QOGxT+5m16zlM9CNYNOsitAiEA2+HwBK2+pT/qITJ9IYO7Ik9V/kEyC2biLDuKx3gIysA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1346410},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"e2abb0a2cb0d4856c778a459d13e81f7446fd9c2","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate && tree-sitter-go-types","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.15.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.24.7","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.8.0_1776634951250_0.48888062007465805","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"tree-sitter-batch","version":"0.10.1","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.10.1","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"e3a82294bd0d20d1344d4d2a4c743a8b0f6761da","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.10.1.tgz","fileCount":23,"integrity":"sha512-h/MmlG2KUb5+gljmyWPVi3+eRad4Qz0XTY53kK6YzH+8bEZRRMOfRUyy3AFrOh6Folwdun0Vc3eHAQR6i2i20A==","signatures":[{"sig":"MEUCIQC1lSgYHJA8wMlez0kyxlCnYFDid9EKlNJZ7PCdUqvf/AIgeNJ8nq5EZY3bWoKvgE3Nly23+tSRLNwZu75xgWc48eA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1681342},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"3d9baa112af201d4dff2e98d200c5adc6ec996c9","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate --abi 14 && tree-sitter-go-types","prestart":"tree-sitter build --wasm"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"overrides":{"eslint-plugin-jsdoc":"^62.9.0"},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","globals":"^17.5.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.26.8","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.10.1_1776716964050_0.16286929250885307","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"tree-sitter-batch","version":"0.11.0","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"license":"MIT","_id":"tree-sitter-batch@0.11.0","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"dist":{"shasum":"6cee7633e4f9280fe68c1a107e0b0eb1cf979f42","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.11.0.tgz","fileCount":23,"integrity":"sha512-Op/VJnTy7hckeYAxH/4yQ5XDX/gnuoi2AT6cAGWFHuVfp0dnRHEbiyIMRjUsRf+BEQQhGBkV3DjTjG3gDXqXqg==","signatures":[{"sig":"MEUCIAkZOGDpsl5jJ+8jRH0Hg5yj5hJx94cFAPlzKdMES8udAiEAgzDt7csME01zmd1DgPXjOuDiwS1Aa4x4UW4+PMMrvS0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2459783},"main":"bindings/node","type":"module","types":"bindings/node","gitHead":"ae63b7377d22054b0126d24c39e6d31a8ad43e67","scripts":{"lint":"eslint grammar.js","test":"node --test bindings/node/*_test.js","start":"tree-sitter playground","install":"node-gyp-build","generate":"tree-sitter generate --abi 14 && tree-sitter-go-types","prestart":"tree-sitter build --wasm","typecheck":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"overrides":{"eslint-plugin-jsdoc":"^62.9.0"},"repository":{"url":"git+https://github.com/wharflab/tree-sitter-batch.git","type":"git"},"_npmVersion":"11.11.0","description":"A Windows Batch/CMD grammar for tree-sitter","directories":{},"_nodeVersion":"24.14.1","dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","globals":"^17.5.0","typescript":"^6.0.3","prebuildify":"^6.0.1","tree-sitter-cli":"0.26.8","tree-sitter-go-types":"^0.1.0","eslint-config-treesitter":"^1.0.2"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-batch_0.11.0_1776727890862_0.9077044201806299","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"tree-sitter-batch","version":"0.11.1","description":"A Windows Batch/CMD grammar for tree-sitter","type":"module","repository":{"type":"git","url":"git+https://github.com/wharflab/tree-sitter-batch.git"},"license":"MIT","main":"bindings/node","types":"bindings/node","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"dependencies":{"node-addon-api":"^8.5.0","node-gyp-build":"^4.8.4"},"devDependencies":{"eslint":"^10.2.0","eslint-config-treesitter":"^1.0.2","globals":"^17.5.0","prebuildify":"^6.0.1","tree-sitter-cli":"0.26.8","tree-sitter-go-types":"^0.1.0","typescript":"^6.0.3"},"overrides":{"eslint-plugin-jsdoc":"^62.9.0"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"scripts":{"install":"node-gyp-build","prestart":"tree-sitter build --wasm","start":"tree-sitter playground","generate":"tree-sitter generate --abi 14 && tree-sitter-go-types","lint":"eslint grammar.js","typecheck":"tsc --noEmit -p tsconfig.json","test":"node --test bindings/node/*_test.js"},"gitHead":"b5ebbfd167ee4bf8b8ff39d883f9db031a6898f4","_id":"tree-sitter-batch@0.11.1","bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"homepage":"https://github.com/wharflab/tree-sitter-batch#readme","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-teQFEBJz1tb8A4WlqdkEpFXlGVR4++Un7RIUdBKALf8wcDW90wOf/stdS4rjcOFTYFPcQYZdrc4Q6XcXAF3OMA==","shasum":"019f01a98a1132cf4c1385f37979bd768269cb9e","tarball":"https://registry.npmjs.org/tree-sitter-batch/-/tree-sitter-batch-0.11.1.tgz","fileCount":23,"unpackedSize":2447058,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-batch@0.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBdJtKEt9/UaRzRFZkRAizvZhpfvDm1vCCeOYpGl1rtsAiBWHOG71BnlJoNuZSrtSux55xL9zGho6Oc8irnBcmjfcw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5635b266-3b1c-4eb4-b97a-6cdb61f4838a"}},"directories":{},"maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tree-sitter-batch_0.11.1_1776771722153_0.345551703069799"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-11T00:12:43.479Z","modified":"2026-04-21T11:42:02.606Z","0.1.0":"2026-03-11T00:12:43.644Z","0.2.0":"2026-03-11T00:48:00.358Z","0.3.0":"2026-03-17T10:48:15.888Z","0.3.1":"2026-03-17T14:01:44.804Z","0.3.2":"2026-03-17T14:43:37.472Z","0.4.1":"2026-04-01T21:51:46.658Z","0.4.2":"2026-04-02T01:10:53.160Z","0.5.0":"2026-04-02T21:44:07.629Z","0.6.0":"2026-04-15T21:52:34.353Z","0.7.0":"2026-04-16T08:03:34.212Z","0.7.2":"2026-04-19T08:13:31.755Z","0.8.0":"2026-04-19T21:42:31.446Z","0.10.1":"2026-04-20T20:29:24.331Z","0.11.0":"2026-04-20T23:31:31.070Z","0.11.1":"2026-04-21T11:42:02.348Z"},"bugs":{"url":"https://github.com/wharflab/tree-sitter-batch/issues"},"license":"MIT","homepage":"https://github.com/wharflab/tree-sitter-batch#readme","keywords":["incremental","parsing","tree-sitter","batch","cmd","bat"],"repository":{"type":"git","url":"git+https://github.com/wharflab/tree-sitter-batch.git"},"description":"A Windows Batch/CMD grammar for tree-sitter","maintainers":[{"name":"tinovyatkin","email":"tino@vtkn.io"}],"readme":"# tree-sitter-batch\n\nWindows Batch/CMD grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter).\n\nParses `.bat` and `.cmd` files into a concrete syntax tree for syntax highlighting, code navigation, and analysis.\n\n## Features\n\n- **Control flow** &mdash; `IF`/`ELSE` (EXIST, DEFINED, ERRORLEVEL, comparison with NOT), `FOR` (/D /R /L /F), `GOTO`, `CALL`, `EXIT /B`\n- **Variables** &mdash; `SET` (plain, `/A` arithmetic, `/P` prompt, display-only without `=`), `%VAR%`, `!VAR!`, `%%i`, `%~dp0`, `%VAR:old=new%`, subscripted delayed expansion `!ARR[%%i]!`, for-variable modifiers `%%~dpnxf` `%%~zS` `%%~$PATH:F`, escaped forms `%%VAR%%` `%%%%i`\n- **Echo** &mdash; free-form text with literal `(` `)` `!` `%`, inline strings, and variable references\n- **Operators** &mdash; pipes `|`, redirects `>` `>>` `<` `2>` `2>&1` (fds 0-9, including variable handles `>&%FD%` / `<&%FD%`), conditional `&&` `||`, separator `&`\n- **Line continuation** &mdash; trailing caret `^` joins the current line with the next (e.g. `\"%JAVACMD%\" ^` followed by indented arguments)\n- **Commands** &mdash; bare names, variable references as command, and quoted paths (`\"C:\\path\\app.exe\" args`, `call \"%SCRIPT%\" %*`)\n- **Structure** &mdash; labels `:name`, comments `REM` `::`, parenthesized blocks (including `@(...)`), `@ECHO OFF`, macro invocations, DosTips idioms `(call,)` / `(call;)` / `(call)` for ERRORLEVEL manipulation\n- **Scope** &mdash; `SETLOCAL`/`ENDLOCAL` with `ENABLEDELAYEDEXPANSION`\n- **Polyglot headers** &mdash; tolerates batch/PowerShell `<# ... #>` header lines and batch/VBScript lines marked with a trailing `'VBS` so SysToolsLib-style dual-language scripts parse cleanly\n- **Case-insensitive** &mdash; all keywords match regardless of casing\n\n## Example\n\n```batch\n@echo off\nREM Build script\nsetlocal enabledelayedexpansion\n\nset \"PROJECT=MyApp\"\nset /a VERSION=1\n\nif not exist \"dist\" (\n  mkdir dist\n)\n\nfor %%f in (src\\*.txt) do (\n  copy \"%%f\" \"dist\\\"\n)\n\nif %ERRORLEVEL% == 0 (\n  echo Build successful\n) else (\n  echo Build failed\n  exit /b 1\n)\n\nexit /b 0\n```\n\nParsed tree:\n\n```\n(program\n  (echo_off)\n  (comment)\n  (setlocal_stmt)\n  (variable_assignment\n    (set_keyword) (variable_name) (assignment_value))\n  (variable_assignment\n    (set_keyword) (arithmetic_assignment (set_option) (arithmetic_expression)))\n  (if_stmt\n    (string)\n    (parenthesized\n      (cmd (command_name) (argument_list (argument_value)))))\n  (for_stmt\n    (for_variable)\n    (for_set (for_set_literal))\n    (parenthesized\n      (cmd (command_name) (argument_list (string) (string)))))\n  (if_stmt\n    (variable_reference)\n    (comparison_op)\n    (argument_value)\n    (parenthesized\n      (cmd (command_name) (argument_list (argument_value) (argument_value))))\n    (else_clause\n      (parenthesized\n        (cmd (command_name) (argument_list (argument_value) (argument_value)))\n        (exit_stmt (integer)))))\n  (exit_stmt (integer)))\n```\n\n## Installation\n\n### npm\n\n```sh\nnpm install tree-sitter-batch\n```\n\n### Cargo\n\n```sh\ncargo add tree-sitter-batch\n```\n\n### PyPI\n\n```sh\npip install tree-sitter-batch\n```\n\n### Go\n\n```go\nimport tree_sitter_batch \"github.com/wharflab/tree-sitter-batch/bindings/go\"\n```\n\nThe root package also exports the bundled `queries/highlights.scm` via `go:embed`:\n\n```go\nimport batch \"github.com/wharflab/tree-sitter-batch\"\n\nlang := batch.GetLanguage()\nquery, _ := batch.GetHighlightsQuery()\n// or access the raw .scm source:\n// raw := batch.HighlightsQuery\n```\n\n## Usage\n\n### Node.js\n\n```javascript\nimport Parser from \"tree-sitter\";\nimport Batch from \"tree-sitter-batch\";\n\nconst parser = new Parser();\nparser.setLanguage(Batch);\n\nconst tree = parser.parse(`@echo off\\necho Hello World\\n`);\nconsole.log(tree.rootNode.toString());\n```\n\n### Rust\n\n```rust\nlet mut parser = tree_sitter::Parser::new();\nlet language = tree_sitter_batch::LANGUAGE;\nparser.set_language(&language.into()).unwrap();\n\nlet tree = parser.parse(\"@echo off\\necho Hello\\n\", None).unwrap();\nprintln!(\"{}\", tree.root_node().to_sexp());\n```\n\n### Python\n\n```python\nfrom tree_sitter import Language, Parser\nimport tree_sitter_batch\n\nparser = Parser(Language(tree_sitter_batch.language()))\ntree = parser.parse(b\"@echo off\\necho Hello\\n\")\nprint(tree.root_node.sexp())\n```\n\n## Syntax Highlighting\n\nThe grammar ships with a `queries/highlights.scm` file for use in editors that support tree-sitter highlighting (Neovim, Helix, Zed, etc.).\n\n## References\n\n- Grammar informed by [Blinter](https://github.com/tboy1337/Blinter) batch file linter (159 rules)\n- [SS64 CMD reference](https://ss64.com/nt/)\n- [Microsoft CMD documentation](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/windows-commands)\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}