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.2

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.2
File Size Uploaded
tree_sitter_vhdl-2.0.2.tar.gz 405.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for tree-sitter-vhdl 2.0.2
File
tree_sitter_vhdl-2.0.2-cp310-abi3-win_arm64.whl CPython 3.10 abi3 Windows ARM64 Details
tree_sitter_vhdl-2.0.2-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
tree_sitter_vhdl-2.0.2-cp310-abi3-musllinux_1_2_x86_64.whl CPython 3.10 abi3 Linux musl 1.2+ x86-64 Details
tree_sitter_vhdl-2.0.2-cp310-abi3-musllinux_1_2_aarch64.whl CPython 3.10 abi3 Linux musl 1.2+ ARM64 Details
tree_sitter_vhdl-2.0.2-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.2-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.2-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
tree_sitter_vhdl-2.0.2-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.2.tar.gz

Download URL tree_sitter_vhdl-2.0.2.tar.gz
Size 405.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e922a413be5a42a13fa63a1a013b09bbb2ad1b9a60c1d5c9f0661530e1fb9904
BLAKE2b-256 checksum
How to use checksums
9444fea2489544aa2d384ad6a1be738e237da423d951c7639aa677397326ff43
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.2-cp310-abi3-win_arm64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-win_arm64.whl
Size 203.5 kB
Tags CPython 3.10 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
ddb6b1da58205ad13bf9f950088ce980d6a482c570a9eb0e4f100febf010458b
BLAKE2b-256 checksum
How to use checksums
ffface72453b502a685c3e2ce75b0f113bf16d2b464a94e5c42148806b3f57ea
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.2-cp310-abi3-win_amd64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-win_amd64.whl
Size 204.0 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
000808b8d5a15c956a531ea4888eea3602b78daa099e44570cb60b61a94be09f
BLAKE2b-256 checksum
How to use checksums
6c50af61acae9e8c77a53f706496172c4ef998a91a021f32efcdba13185beb26
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.2-cp310-abi3-musllinux_1_2_x86_64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-musllinux_1_2_x86_64.whl
Size 436.0 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
a1fc059e7837ab89e7f4d084bc2d387ba9bb7d22ba2ad4b0cd060720a180a420
BLAKE2b-256 checksum
How to use checksums
e23fb2ba5b62ab8cc8ffe1ea5964f8f5eb097497100b06a58f3eebbf8866e0f4
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.2-cp310-abi3-musllinux_1_2_aarch64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-musllinux_1_2_aarch64.whl
Size 453.9 kB
Tags CPython 3.10 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
98695078150b3e58fb8bff1191da9d9086e5e50ad5b9756a796a93f20d50509a
BLAKE2b-256 checksum
How to use checksums
9c2e690408cab2d71c317ac5c61731d734e08c22aa77dcf16550776a4ec26efa
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.2-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 454.2 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
ceb9fe1e6505ea1b5c336723532943e55a561965bbec53d22d4535e4533285b7
BLAKE2b-256 checksum
How to use checksums
e9d0a13e37425f01915d3ae375dde4ecfa861b94a6c018a137a0cf45b237b49c
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.2-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 437.8 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
ae55f6c4974e1fe6b277fd2e6164b91c2599d32d7a160c31fa165e5bcb4e9cc6
BLAKE2b-256 checksum
How to use checksums
8ec6ae9c93c0a9810759590f544ea2a20600ddeea45d96b2d594d24b08dbea5e
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.2-cp310-abi3-macosx_11_0_arm64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-macosx_11_0_arm64.whl
Size 220.1 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c48494276a24a32f05f9340d9782d7faba5154c309707bdc29ceda2fe9ab23a0
BLAKE2b-256 checksum
How to use checksums
4eaddfab9357b26663d0a235f708b9c90c539a1874a378d2323682e2beb30439
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.2-cp310-abi3-macosx_10_9_x86_64.whl

Download URL tree_sitter_vhdl-2.0.2-cp310-abi3-macosx_10_9_x86_64.whl
Size 206.7 kB
Tags CPython 3.10 abi3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
46762e2baeb1e9be09a065b1cde3fe04d61f34240153e8acdde5dd910e51bec1
BLAKE2b-256 checksum
How to use checksums
ac5f8ba94f72ef461c44654b844aa2e21d15c1911ecc701f41941cc57a22e379
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

This release

2.0.2 This release

9 release files

2.0.1

9 release files

2.0.0

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