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

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.1
File Size Uploaded
tree_sitter_vhdl-2.0.1.tar.gz 403.7 kB Details

Built distributions (wheels)

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

Download URL tree_sitter_vhdl-2.0.1.tar.gz
Size 403.7 kB
Tags Source
SHA-256 checksum
How to use checksums
6ef787edfaf1c8d151de44706c1ef9e600e720806986c3eaea24cf30d835984d
BLAKE2b-256 checksum
How to use checksums
94953cd657691c145c0ab3fe21e8d836831fe5d5538de772e5af8185d455c4ec
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.1-cp310-abi3-win_arm64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-win_arm64.whl
Size 202.8 kB
Tags CPython 3.10 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
2cc0158cdf5b1176092c865ea26667a2a0ae466cd31a66d9a5f2186f02974068
BLAKE2b-256 checksum
How to use checksums
97d0079a70308ea7e03b1548fa2aa136eec1321f9951dafff819ea9b2619ab48
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.1-cp310-abi3-win_amd64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-win_amd64.whl
Size 203.4 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
e0fe0c861f5404a41758ff4a89e0b37bd3dcfa658547888736916a07a3474f85
BLAKE2b-256 checksum
How to use checksums
f48e8dc2ecfa7b3634cd5425b717e44c87033c43a0cb702e38fcf7a18e0e8ff6
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.1-cp310-abi3-musllinux_1_2_x86_64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-musllinux_1_2_x86_64.whl
Size 435.4 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
78a27af6925cdd8dab11d851d7b9c1ef68aed4d8ae454cf57bef12b38ae8ad3f
BLAKE2b-256 checksum
How to use checksums
27cc5420eae3b3cc22e869c56a1664f19d183291b7a40794dea15d39bff7e15a
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.1-cp310-abi3-musllinux_1_2_aarch64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-musllinux_1_2_aarch64.whl
Size 453.4 kB
Tags CPython 3.10 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
031193e08a550c4cb5a6d5cd10273349f944618e6723af78d4a79ec42ea81e75
BLAKE2b-256 checksum
How to use checksums
0612342ab805b8e1323b85f0e7d4a721a972dbc56d30429c075a901f2aeb33f4
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.1-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

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

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 437.3 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
f0e3b02968c862f29b0ce4b7015bd17924c61dd693d8fe7e9d5158a98d6ed3bc
BLAKE2b-256 checksum
How to use checksums
64560af0f1dbea1e2ff710b951b35d04cfecaff25d1c5e4c4c14da792ea8173c
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.1-cp310-abi3-macosx_11_0_arm64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-macosx_11_0_arm64.whl
Size 219.5 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6684b24ee8f76b79957fb1a713ce49055c44c5d35ecd10bffffa6792efe2bb25
BLAKE2b-256 checksum
How to use checksums
8e0d291975bfa36077f9b9ee37dc923d3772f46c2d71f9df9160874750b93ae9
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.1-cp310-abi3-macosx_10_9_x86_64.whl

Download URL tree_sitter_vhdl-2.0.1-cp310-abi3-macosx_10_9_x86_64.whl
Size 206.0 kB
Tags CPython 3.10 abi3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1b7b91c96fd43c74b6a828f6a72959af6b1cab44cab96402e092ca80b518fd21
BLAKE2b-256 checksum
How to use checksums
8544d5fa7f47ae33d52e1d466f7d608853fc511c2a31d071e4067c3a001b6809
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

This release

2.0.1 This release

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