Skip to main content

Tree-sitter-vhdl

CI Fuzz matrix pypi

A VHDL parser for syntax highlighting.

References

Screenshots

Neovim, using nvim-treesitter and a Catppuccin colour scheme:

Screenshot

Other colour schemes

Neovim, using nvim-treesitter and a Tokyo Night colour scheme:

TokyoNight

Neovim, using nvim-treesitter and a One Dark colour scheme:

OneDark

If you'd like your favourite colour scheme to be listed here, issue a PR with a new screenshot of the screenshot example in the same style and composition as the other screenshots.

History

This version started off as a fork of alemuller/tree-sitter-vhdl, but ended up as a complete rewrite of the parser and highlighting scripts. It has very little in common with the original.

Limitations

This parser uses a simplified grammar, because the full formal grammar in the VHDL standard is highly ambiguous without compiling the entire code-base into a symbol table. In many cases, invalid syntax will parse into a valid tree.

For the same reason, there might be cases where valid syntax does not map to a valid tree. In this case, please log a bug report.

In addition, the following features are not implemented, and are considered outside the scope of this project.

  • IEEE Property Specification Language
  • VHDL Procedural Interface

Neovim Setup Process

This parser has been merged into the official nvim-treesitter, so it should work out of the box after adding it to the list of languages to install.

You can also use tree-sitter-manager instead, in which case it is recommended to configure as follows:

require("tree-sitter-manager").setup({
    ensure_installed = {
        -- ...
        'vhdl',
        -- ...
    },
    languages = {
        vhdl = {
            install_info = {
                url      = 'https://github.com/jpt13653903/tree-sitter-vhdl',
                revision = 'master',
                queries  = 'queries/Neovim',
                use_repo_queries = true,
            },
        },
    },
})

Helix Setup Process

This parser has been merged into the official Helix repo, so it should work out of the box.

Building

  • Follow the instructions here to setup your development environment.
  • Run npm install --save-dev tree-sitter-cli
  • Add node_modules/.bin to your environment path
  • From within the autogen directory, run py gen_token_trie.py (only required after updating the token lists within autogen)
  • Run tree-sitter generate
  • Run tree-sitter test

Contributing

Contributions are welcome. Read Contributing.md for more information.

Metadata

Release files for tree-sitter-vhdl 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tree-sitter-vhdl 2.0.0
File Size Uploaded
tree_sitter_vhdl-2.0.0.tar.gz 400.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for tree-sitter-vhdl 2.0.0
File
tree_sitter_vhdl-2.0.0-cp310-abi3-win_arm64.whl CPython 3.10 abi3 Windows ARM64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_x86_64.whl CPython 3.10 abi3 Linux musl 1.2+ x86-64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_aarch64.whl CPython 3.10 abi3 Linux musl 1.2+ ARM64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 abi3 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_10_9_x86_64.whl CPython 3.10 abi3 macOS 10.9+ x86-64 Details

Total release size: 3.0 MB

Release files / tree_sitter_vhdl-2.0.0.tar.gz

Download URL tree_sitter_vhdl-2.0.0.tar.gz
Size 400.4 kB
Tags Source
SHA-256 checksum
How to use checksums
e230407d28e4ce6ca203c925fc98e8744427541e9024ff73dc7b0edf53e5aa21
BLAKE2b-256 checksum
How to use checksums
943f9cd05e106174eb71d8be154de80b619a58d42cb9a13e0a04137af44c3edf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-win_arm64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-win_arm64.whl
Size 201.0 kB
Tags CPython 3.10 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
d10f4a17d8720be826b0adf62c76524fa0c0e8cfc8e856ecdf880e764e3a2338
BLAKE2b-256 checksum
How to use checksums
38cb2e5f496e32e96523110b0dafa473942770203e8bb658fc848ae7d9513a6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-win_amd64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-win_amd64.whl
Size 201.5 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
cd8d377676ff663657bfecc9f92cb8d263aac2a041356d304345caa2b57725c0
BLAKE2b-256 checksum
How to use checksums
66781db67d801c2cd9be1a2561858df7b9e71efed03b303e3fb99651b29b0b76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_x86_64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_x86_64.whl
Size 433.1 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
406238803ec1a9583908e868ce68d168f0c7ea3f0c67ade3a5566fa05a25c936
BLAKE2b-256 checksum
How to use checksums
18792de5cd8eacac98ffce2a91f44731c5ce48a758675416f37e9f9f664c0828
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_aarch64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-musllinux_1_2_aarch64.whl
Size 451.1 kB
Tags CPython 3.10 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
a4c82eea9d94c473d5015adbb4dd2933a63fb25f0b2dd22658a886cc66c336d7
BLAKE2b-256 checksum
How to use checksums
49efbc40072b6b69f1b26c42958bf4dcde680e02cb7e117d5335bd5e97820f0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 452.1 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
d84d294c5b7e66677a2ee796a0094c74725ec5e4454e738b645fdd8c3a920907
BLAKE2b-256 checksum
How to use checksums
75a8d88924ca0c4b88194642bda8008bf10c940336214cbe306cfbfffee8babb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 435.4 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64 abi3
SHA-256 checksum
How to use checksums
ae47bd937c74a6eab2f9e44d318a48512d75714473194dffa33474167d962676
BLAKE2b-256 checksum
How to use checksums
da77164650ab16b7dd53ac950536d1f6e60e2079fe8f66a7147db4bdacdd6a8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_11_0_arm64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_11_0_arm64.whl
Size 217.4 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
25dae16a104e9cba1e2acd26bd80328d54e2daa064c6e5817e02b674c39ef0eb
BLAKE2b-256 checksum
How to use checksums
3706f8d7d122656a8e9208f2285057090c7b29cfd8dc2ba4ea439b21b590386e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_10_9_x86_64.whl

Download URL tree_sitter_vhdl-2.0.0-cp310-abi3-macosx_10_9_x86_64.whl
Size 203.9 kB
Tags CPython 3.10 abi3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
c0646d423040e4b29332aceb991c1b4ada838026008547f58a401d899b3d5443
BLAKE2b-256 checksum
How to use checksums
51abf7fb3166855635aa3b8ba79bb363858f171bf3208b9c79b100766c0512d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

2.0.3

9 release files

2.0.2

9 release files

2.0.1

9 release files

This release

2.0.0 This release

9 release files

1.5.1

9 release files

1.5.0

9 release files

1.4.0

9 release files

1.3.1

8 release files

1.3.0

8 release files

1.2.5

8 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page