{"_id":"tree-sitter-ipython","_rev":"6-623ed0c7ef2c259d5fa9cbb42b596a76","name":"tree-sitter-ipython","dist-tags":{"latest":"1.1.2"},"versions":{"0.0.1":{"name":"tree-sitter-ipython","version":"0.0.1","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"license":"MIT","_id":"tree-sitter-ipython@0.0.1","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"dist":{"shasum":"66f744110e885644e99f3d9140a2d3c0c5cbe9ae","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-0.0.1.tgz","fileCount":19,"integrity":"sha512-bgWGtJgHCOm09J1lOmGNWoSO+vqjJC2P/2YwV55vo/9eEWFtFw11zFwp7fcvR9s1d60yNoUh+3I1vF31bKa4lg==","signatures":[{"sig":"MEYCIQCK89xIPe0HHLiSTd7+4xtmLzFV9I2XOGbaG6lYnMKsfAIhALiTHu+W+svAWXi4OC19Q7mUPrMmnGvbOBR4eDWBomcT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4268277},"main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","default":"./bindings/node/index.js","require":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"gitHead":"3843aba4042efc4a2795d5d99a5d3d6950f2845d","scripts":{"test":"tree-sitter test","build":"tree-sitter generate && node-gyp rebuild","install":"node-gyp-build","generate":"tree-sitter generate","prebuild":"prebuildify --napi --strip"},"_npmUser":{"name":"abir-taheer","email":"abir@taheer.me"},"repository":{"url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git","type":"git"},"_npmVersion":"10.8.2","description":"IPython grammar for tree-sitter (extends Python with magic support)","directories":{},"_nodeVersion":"20.18.3","dependencies":{"node-addon-api":">=7.0.0","node-gyp-build":">=4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"prebuildify":">=6.0.0","tree-sitter-cli":">=0.22.0","tree-sitter-python":">=0.21.0"},"peerDependencies":{"tree-sitter":">=0.21.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-ipython_0.0.1_1768456906896_0.29243410987923224","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"tree-sitter-ipython","version":"1.0.0","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"license":"MIT","_id":"tree-sitter-ipython@1.0.0","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"dist":{"shasum":"af9a11b4787980cc7cace810abe8348e50182cc0","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-1.0.0.tgz","fileCount":24,"integrity":"sha512-LP1+guES9//qYWFSv8GLEOKDSHqnib/jITF9Pz1LeSnb00mTZRtGNBCtvo7Be6VPm228APn/GgJsXilozWtGZg==","signatures":[{"sig":"MEYCIQCgJtaeRbPfD0Aq/35S0KGiwhh9o41uuv3tBAJIu6kqOwIhAKcG+se9WmccWMzk6Y/EFjUZW5Sdnv/Bt/c/q/4G8MjP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-ipython@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7084589},"main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","default":"./bindings/node/index.js","require":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"gitHead":"bf7c644b9d0fb79cd2bb143e98b8f9cd291a6bf8","scripts":{"test":"tree-sitter test","build":"tree-sitter generate && node-gyp rebuild","install":"node-gyp-build","generate":"tree-sitter generate","prebuild":"prebuildify --napi --strip"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:09bde065-a592-4767-8f7e-a7b7d9aa24f7"}},"repository":{"url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git","type":"git"},"_npmVersion":"11.7.0","description":"IPython grammar for tree-sitter (extends Python with magic support)","directories":{},"_nodeVersion":"22.21.1","dependencies":{"node-addon-api":">=7.0.0","node-gyp-build":">=4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"prebuildify":">=6.0.0","tree-sitter-cli":">=0.22.0","tree-sitter-python":">=0.21.0"},"peerDependencies":{"tree-sitter":">=0.21.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-ipython_1.0.0_1768458160954_0.45400791215568637","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"tree-sitter-ipython","version":"1.0.1","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"license":"MIT","_id":"tree-sitter-ipython@1.0.1","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"dist":{"shasum":"948ec1cda45d54d71868482b7d7c8902c1754003","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-1.0.1.tgz","fileCount":24,"integrity":"sha512-RRqAvumFmHA3C61dRpq7DHMtfSeZEo/gzf3ESnQabAYuebJuYLrfDEY2H5BjClZQ5E+PGgG494VgGnotrZfa0g==","signatures":[{"sig":"MEYCIQD9Y30tG8f65SuTUMnj5mDNLo+pa9kb3Sj+/Eb1YufjcAIhAIRyazSJs/D8v9xMz3dzV18s8XeBEyY/2MCEqaNlDs0S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-ipython@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7084589},"main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","default":"./bindings/node/index.js","require":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"gitHead":"6aa75072738ec19817c5c42ef187afc8bf4e5b01","scripts":{"test":"tree-sitter test","build":"tree-sitter generate && node-gyp rebuild","install":"node-gyp-build","generate":"tree-sitter generate","prebuild":"prebuildify --napi --strip"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:09bde065-a592-4767-8f7e-a7b7d9aa24f7"}},"repository":{"url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git","type":"git"},"_npmVersion":"11.7.0","description":"IPython grammar for tree-sitter (extends Python with magic support)","directories":{},"_nodeVersion":"24.12.0","dependencies":{"node-addon-api":">=7.0.0","node-gyp-build":">=4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"prebuildify":">=6.0.0","tree-sitter-cli":">=0.22.0","tree-sitter-python":">=0.21.0"},"peerDependencies":{"tree-sitter":">=0.21.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-ipython_1.0.1_1768458477115_0.8486936764212154","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"tree-sitter-ipython","version":"1.1.0","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"license":"MIT","_id":"tree-sitter-ipython@1.1.0","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"dist":{"shasum":"0e48578ada3bf07c2cd4741d5f4416ac1d9a4fbe","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-1.1.0.tgz","fileCount":24,"integrity":"sha512-izkUHUwhvjKBZm5V43VeUUEjBcZJL0OKxrLOeWTpl428WogjcVIsRoKguK3kDg46tuJcS7PXkaKdJo0nsgjwIg==","signatures":[{"sig":"MEUCICeuZdDZJGXbB4OYkcW77nIpA2zgNFGjI2e77QjR9XT3AiEAmI0NYZo0DlCahD4oqMEVKivGO9fp+Ajlfb/WbwK4iEQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-ipython@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7080772},"main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","default":"./bindings/node/index.js","require":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"gitHead":"bae0ece5b8c58b6ea0b30bcc7046da03f615c0d6","scripts":{"test":"tree-sitter test && node --test test/","build":"tree-sitter generate && node-gyp rebuild","install":"node-gyp-build","generate":"tree-sitter generate","prebuild":"prebuildify --napi --strip","test:binding":"node --test test/","test:grammar":"tree-sitter test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:09bde065-a592-4767-8f7e-a7b7d9aa24f7"}},"repository":{"url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git","type":"git"},"_npmVersion":"11.7.0","description":"IPython grammar for tree-sitter (extends Python with magic support)","directories":{},"_nodeVersion":"24.12.0","dependencies":{"node-addon-api":">=7.0.0","node-gyp-build":">=4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"prebuildify":">=6.0.0","tree-sitter":"^0.22.4","tree-sitter-cli":">=0.22.0","tree-sitter-python":">=0.21.0"},"peerDependencies":{"tree-sitter":">=0.21.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-ipython_1.1.0_1768460569192_0.3703108150977166","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"tree-sitter-ipython","version":"1.1.1","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"license":"MIT","_id":"tree-sitter-ipython@1.1.1","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"dist":{"shasum":"a616b72c141612abde5239c2c32e8b2c8461324c","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-1.1.1.tgz","fileCount":24,"integrity":"sha512-MDhp+qHpjy2Kn1kamo0X14A/VHsczzw21cL0Zr+sE0F8sUdo4f1Xd97f4Exq5416fhHGtHyzNpJiK2nGSmEKwg==","signatures":[{"sig":"MEUCIG2bWsD4UyYMzOHY58jh7WfBoVBIp2laNf2d2zGdZGNIAiEAgR53VfX3aDvIRBnphy1hIRdknQyB7VNLf+243ibnzLM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-ipython@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7080934},"main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","default":"./bindings/node/index.js","require":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"gitHead":"b191e593b205dac8c5291866da4d640f1f7558a7","scripts":{"test":"tree-sitter test && node --test test/","build":"tree-sitter generate && node-gyp rebuild","install":"node-gyp-build","generate":"tree-sitter generate","prebuild":"prebuildify --napi --strip","test:binding":"node --test test/","test:grammar":"tree-sitter test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:09bde065-a592-4767-8f7e-a7b7d9aa24f7"}},"repository":{"url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git","type":"git"},"_npmVersion":"11.7.0","description":"IPython grammar for tree-sitter (extends Python with magic support)","directories":{},"_nodeVersion":"24.12.0","dependencies":{"node-addon-api":"^8.2.2","node-gyp-build":"^4.8.2"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"^3.8.0","prebuildify":"^6.0.1","tree-sitter":"^0.25.0","tree-sitter-cli":"^0.24.4","tree-sitter-python":"^0.25.0"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/tree-sitter-ipython_1.1.1_1768464988417_0.38563795890100727","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"tree-sitter-ipython","version":"1.1.2","description":"IPython grammar for tree-sitter (extends Python with magic support)","main":"bindings/node","types":"bindings/node","exports":{".":{"types":"./bindings/node/index.d.ts","require":"./bindings/node/index.js","default":"./bindings/node/index.js"},"./grammar":"./grammar.js","./package.json":"./package.json"},"keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"repository":{"type":"git","url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git"},"license":"MIT","dependencies":{"node-addon-api":"^8.2.2","node-gyp-build":"^4.8.2"},"devDependencies":{"prebuildify":"^6.0.1","prettier":"^3.8.0","tree-sitter":"^0.25.0","tree-sitter-cli":"^0.24.4","tree-sitter-python":"^0.25.0"},"peerDependencies":{"tree-sitter":">=0.25.0"},"peerDependenciesMeta":{"tree-sitter":{"optional":true}},"scripts":{"install":"node-gyp-build","build":"tree-sitter generate && node-gyp rebuild","generate":"tree-sitter generate","test":"tree-sitter test && node --test test/","test:grammar":"tree-sitter test","test:binding":"node --test test/","prebuild":"prebuildify --napi --strip"},"gitHead":"a6c65459880b9299a2e5d10ae259a683bce326e8","_id":"tree-sitter-ipython@1.1.2","bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","_nodeVersion":"24.12.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-vZ3depVqO1o0kSLfj2rfjtnVJJeHqGJ1QpogIgio9us0yZoBGo9UjWssfSEvhlmP9cPz8W7WIn8G3Xun9W01OA==","shasum":"d675270930cbc187b8ef541f282176e51ae2b1f5","tarball":"https://registry.npmjs.org/tree-sitter-ipython/-/tree-sitter-ipython-1.1.2.tgz","fileCount":24,"unpackedSize":7080934,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/tree-sitter-ipython@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIB6ZOun0EifdLwULM4P05lp9EOHnbQZ3BRGP/hcvuLtaAiEAyWH/Lxkw5jLW5CnfUs9zQ/N/ORFG4FvFSZTTNcVvxkk="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:09bde065-a592-4767-8f7e-a7b7d9aa24f7"}},"directories":{},"maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tree-sitter-ipython_1.1.2_1768465454429_0.10757554481145148"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-15T06:01:46.895Z","modified":"2026-01-15T08:24:14.937Z","0.0.1":"2026-01-15T06:01:47.112Z","1.0.0":"2026-01-15T06:22:41.270Z","1.0.1":"2026-01-15T06:27:57.347Z","1.1.0":"2026-01-15T07:02:49.433Z","1.1.1":"2026-01-15T08:16:28.619Z","1.1.2":"2026-01-15T08:24:14.647Z"},"bugs":{"url":"https://github.com/abir-taheer/tree-sitter-ipython/issues"},"license":"MIT","homepage":"https://github.com/abir-taheer/tree-sitter-ipython#readme","keywords":["incremental","parsing","parser","tree-sitter","ipython","jupyter","python","magic"],"repository":{"type":"git","url":"git+https://github.com/abir-taheer/tree-sitter-ipython.git"},"description":"IPython grammar for tree-sitter (extends Python with magic support)","maintainers":[{"name":"abir-taheer","email":"abir@taheer.me"}],"readme":"# tree-sitter-ipython\n\nA tree-sitter grammar for IPython/Jupyter that extends tree-sitter-python to support magic commands and shell escapes.\n\n## Features\n\n- **Line Magics** (`%`): `%matplotlib inline`, `%timeit x = 1`, `%pwd`\n- **Cell Magics** (`%%`): `%%time`, `%%bash`, `%%writefile test.py`\n- **Shell Escapes** (`!`): `!pip install pandas`, `!ls -la`\n- Full Python syntax support (inherited from tree-sitter-python)\n\n## Installation\n\n```bash\nnpm install tree-sitter-ipython\n```\n\n## Usage\n\n```javascript\nconst Parser = require(\"tree-sitter\");\nconst IPython = require(\"tree-sitter-ipython\");\n\nconst parser = new Parser();\nparser.setLanguage(IPython);\n\nconst code = `\n%matplotlib inline\nimport pandas as pd\n!pip install numpy\n%%time\nx = sum(range(1000))\n`;\n\nconst tree = parser.parse(code);\nconsole.log(tree.rootNode.toString());\n```\n\n## Node Types\n\n### Line Magic\n\n```\n(line_magic\n  (magic_operator)      ; the % symbol\n  name: (magic_name)    ; command name like \"matplotlib\"\n  arguments: (magic_arguments))  ; optional arguments like \"inline\"\n```\n\n### Cell Magic\n\n```\n(cell_magic\n  (cell_magic_operator) ; the %% symbol\n  name: (magic_name)    ; command name like \"time\"\n  arguments: (magic_arguments))  ; optional arguments\n```\n\n### Shell Escape\n\n```\n(shell_escape\n  (shell_operator)      ; the ! symbol\n  command: (shell_content))  ; the shell command\n```\n\n## Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Generate parser\nnpm run generate\n\n# Build native module\nnpm run build\n\n# Run tests\nnpm test\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}