# tree-sitter-embedded-template
[![CI][ci]](https://github.com/tree-sitter/tree-sitter-embedded-template/actions/workflows/ci.yml)
[![discord][discord]](https://discord.gg/w7nTvsVJhm)
[![matrix][matrix]](https://matrix.to/#/#tree-sitter-chat:matrix.org)
[![crates][crates]](https://crates.io/crates/tree-sitter-embedded-template)
[![npm][npm]](https://www.npmjs.com/package/tree-sitter-embedded-template)
[![pypi][pypi]](https://pypi.org/project/tree-sitter-embedded-template)
A [tree-sitter](https://github.com/tree-sitter/tree-sitter) parser for templating languages like [ERB](https://ruby-doc.org/stdlib-2.5.1/libdoc/erb/rdoc/ERB.html) and [EJS](http://ejs.co), in which scripting code can be embedded within text content using the delimiters `<%` and `%>`.
References
- [ERB Documentation](https://ruby-doc.org/stdlib-2.5.1/libdoc/erb/rdoc/ERB.html)
- [EJS Documentation](http://ejs.co/#docs)
- [ETLua Documentation](https://github.com/leafo/etlua)
- [ETA Documentation](https://eta.js.org/docs)
[ci]: https://img.shields.io/github/actions/workflow/status/tree-sitter/tree-sitter-embedded-template/ci.yml?logo=github&label=CI
[discord]: https://img.shields.io/discord/1063097320771698699?logo=discord&label=discord
[matrix]: https://img.shields.io/matrix/tree-sitter-chat%3Amatrix.org?logo=matrix&label=matrix
[npm]: https://img.shields.io/npm/v/tree-sitter-embedded-template?logo=npm
[crates]: https://img.shields.io/crates/v/tree-sitter-embedded-template?logo=rust
[pypi]: https://img.shields.io/pypi/v/tree-sitter-embedded-template?logo=pypi&logoColor=ffd242
Raw data
{
"_id": null,
"home_page": null,
"name": "tree-sitter-embedded-template",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "incremental, parsing, tree-sitter, embedded-template",
"author": null,
"author_email": "Max Brunsfeld <maxbrunsfeld@gmail.com>, Amaan Qureshi <amaanq12@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/fd/a7/77729fefab8b1b5690cfc54328f2f629d1c076d16daf32c96ba39d3a3a3a/tree_sitter_embedded_template-0.25.0.tar.gz",
"platform": null,
"description": "# tree-sitter-embedded-template\n\n[![CI][ci]](https://github.com/tree-sitter/tree-sitter-embedded-template/actions/workflows/ci.yml)\n[![discord][discord]](https://discord.gg/w7nTvsVJhm)\n[![matrix][matrix]](https://matrix.to/#/#tree-sitter-chat:matrix.org)\n[![crates][crates]](https://crates.io/crates/tree-sitter-embedded-template)\n[![npm][npm]](https://www.npmjs.com/package/tree-sitter-embedded-template)\n[![pypi][pypi]](https://pypi.org/project/tree-sitter-embedded-template)\n\nA [tree-sitter](https://github.com/tree-sitter/tree-sitter) parser for templating languages like [ERB](https://ruby-doc.org/stdlib-2.5.1/libdoc/erb/rdoc/ERB.html) and [EJS](http://ejs.co), in which scripting code can be embedded within text content using the delimiters `<%` and `%>`.\n\nReferences\n\n- [ERB Documentation](https://ruby-doc.org/stdlib-2.5.1/libdoc/erb/rdoc/ERB.html)\n- [EJS Documentation](http://ejs.co/#docs)\n- [ETLua Documentation](https://github.com/leafo/etlua)\n- [ETA Documentation](https://eta.js.org/docs)\n\n[ci]: https://img.shields.io/github/actions/workflow/status/tree-sitter/tree-sitter-embedded-template/ci.yml?logo=github&label=CI\n[discord]: https://img.shields.io/discord/1063097320771698699?logo=discord&label=discord\n[matrix]: https://img.shields.io/matrix/tree-sitter-chat%3Amatrix.org?logo=matrix&label=matrix\n[npm]: https://img.shields.io/npm/v/tree-sitter-embedded-template?logo=npm\n[crates]: https://img.shields.io/crates/v/tree-sitter-embedded-template?logo=rust\n[pypi]: https://img.shields.io/pypi/v/tree-sitter-embedded-template?logo=pypi&logoColor=ffd242\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Embedded Template (ERB, EJS) grammar for tree-sitter",
"version": "0.25.0",
"project_urls": {
"Homepage": "https://github.com/tree-sitter/tree-sitter-embedded-template"
},
"split_keywords": [
"incremental",
" parsing",
" tree-sitter",
" embedded-template"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1f9d3e3c8ee0c019d3bace728300a1ca807c03df39e66cc51e9a5e7c9d1e1909",
"md5": "1aa5f01550e938aad8753ec21c582f16",
"sha256": "fa0d06467199aeb33fb3d6fa0665bf9b7d5a32621ffdaf37fd8249f8a8050649"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "1aa5f01550e938aad8753ec21c582f16",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 10266,
"upload_time": "2025-08-29T00:42:44",
"upload_time_iso_8601": "2025-08-29T00:42:44.148760Z",
"url": "https://files.pythonhosted.org/packages/1f/9d/3e3c8ee0c019d3bace728300a1ca807c03df39e66cc51e9a5e7c9d1e1909/tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e8ab6d4e43b736b2a895d13baea3791dc8ce7245bedf4677df9e7deb22e23a2a",
"md5": "79e41d4d97a2e5a888f50da58e1c9448",
"sha256": "fc7aacbc2985a5d7e7fe7334f44dffe24c38fb0a8295c4188a04cf21a3d64a73"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "79e41d4d97a2e5a888f50da58e1c9448",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 10650,
"upload_time": "2025-08-29T00:42:45",
"upload_time_iso_8601": "2025-08-29T00:42:45.147575Z",
"url": "https://files.pythonhosted.org/packages/e8/ab/6d4e43b736b2a895d13baea3791dc8ce7245bedf4677df9e7deb22e23a2a/tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9f97ea3d1ea4b320fe66e0468b9f6602966e544c9fe641882484f9105e50ee0c",
"md5": "00e79592e20a926d00bd8a0f1e19efa5",
"sha256": "a7c88c3dd8b94b3c9efe8ae071ff6b1b936a27ac5f6e651845c3b9631fa4c1c2"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"has_sig": false,
"md5_digest": "00e79592e20a926d00bd8a0f1e19efa5",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 18268,
"upload_time": "2025-08-29T00:42:46",
"upload_time_iso_8601": "2025-08-29T00:42:46.030197Z",
"url": "https://files.pythonhosted.org/packages/9f/97/ea3d1ea4b320fe66e0468b9f6602966e544c9fe641882484f9105e50ee0c/tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "64400f42ca894a8f7c298cf336080046ccc14c10e8f4ea46d455f640193181b2",
"md5": "dafc034f4e07bdfd637bceaa325803ea",
"sha256": "025f7ca84218dcd8455efc901bdbcc2689fb694f3a636c0448e322a23d4bc96b"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "dafc034f4e07bdfd637bceaa325803ea",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 19068,
"upload_time": "2025-08-29T00:42:46",
"upload_time_iso_8601": "2025-08-29T00:42:46.699737Z",
"url": "https://files.pythonhosted.org/packages/64/40/0f42ca894a8f7c298cf336080046ccc14c10e8f4ea46d455f640193181b2/tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d02a0b720bcae7c2dd0a44889c09e800a2f8eb08c496dede9f2b97683506c4c3",
"md5": "9b39b1055080e25dee7a7cf83f03ed41",
"sha256": "b5dc1aef6ffa3fae621fe037d85dd98948b597afba20df29d779c426be813ee5"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_aarch64.whl",
"has_sig": false,
"md5_digest": "9b39b1055080e25dee7a7cf83f03ed41",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 18518,
"upload_time": "2025-08-29T00:42:47",
"upload_time_iso_8601": "2025-08-29T00:42:47.694232Z",
"url": "https://files.pythonhosted.org/packages/d0/2a/0b720bcae7c2dd0a44889c09e800a2f8eb08c496dede9f2b97683506c4c3/tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "148ad745071afa5e8bdf5b381cf84c4dc6be6c79dee6af8e0ff07476c3d8e4aa",
"md5": "0e190a1a7fc2c90d39b391e36a68dab4",
"sha256": "d0a35cfe634c44981a516243bc039874580e02a2990669313730187ce83a5bc6"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "0e190a1a7fc2c90d39b391e36a68dab4",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 18267,
"upload_time": "2025-08-29T00:42:48",
"upload_time_iso_8601": "2025-08-29T00:42:48.635934Z",
"url": "https://files.pythonhosted.org/packages/14/8a/d745071afa5e8bdf5b381cf84c4dc6be6c79dee6af8e0ff07476c3d8e4aa/tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5d74728355e594fca140f793f234fdfec195366b6956b35754d00ea97ca18b21",
"md5": "93d428978da93e3c67d5f5f4f5e65f2f",
"sha256": "3e05a4ac013d54505e75ae48e1a0e9db9aab19949fe15d9f4c7345b11a84a069"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-win_amd64.whl",
"has_sig": false,
"md5_digest": "93d428978da93e3c67d5f5f4f5e65f2f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 13049,
"upload_time": "2025-08-29T00:42:49",
"upload_time_iso_8601": "2025-08-29T00:42:49.589892Z",
"url": "https://files.pythonhosted.org/packages/5d/74/728355e594fca140f793f234fdfec195366b6956b35754d00ea97ca18b21/tree_sitter_embedded_template-0.25.0-cp310-abi3-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d8deafac475e694d0e626b0808f3c86339c349cd15c5163a6a16a53cc11cf892",
"md5": "57d956911fd517847d5379c08e19ead4",
"sha256": "2751d402179ac0e83f2065b249d8fe6df0718153f1636bcb6a02bde3e5730db9"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0-cp310-abi3-win_arm64.whl",
"has_sig": false,
"md5_digest": "57d956911fd517847d5379c08e19ead4",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 11978,
"upload_time": "2025-08-29T00:42:50",
"upload_time_iso_8601": "2025-08-29T00:42:50.226050Z",
"url": "https://files.pythonhosted.org/packages/d8/de/afac475e694d0e626b0808f3c86339c349cd15c5163a6a16a53cc11cf892/tree_sitter_embedded_template-0.25.0-cp310-abi3-win_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fda777729fefab8b1b5690cfc54328f2f629d1c076d16daf32c96ba39d3a3a3a",
"md5": "8bbde11a47b39e4c93490e7708111010",
"sha256": "7d72d5e8a1d1d501a7c90e841b51f1449a90cc240be050e4fb85c22dab991d50"
},
"downloads": -1,
"filename": "tree_sitter_embedded_template-0.25.0.tar.gz",
"has_sig": false,
"md5_digest": "8bbde11a47b39e4c93490e7708111010",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 14114,
"upload_time": "2025-08-29T00:42:51",
"upload_time_iso_8601": "2025-08-29T00:42:51.078315Z",
"url": "https://files.pythonhosted.org/packages/fd/a7/77729fefab8b1b5690cfc54328f2f629d1c076d16daf32c96ba39d3a3a3a/tree_sitter_embedded_template-0.25.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-29 00:42:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tree-sitter",
"github_project": "tree-sitter-embedded-template",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "tree-sitter-embedded-template"
}