Inspired by the lack of editor support in existing Verilog extensions for VSCode, this repository contains a powerful, hand-written Verilog language server and an extension to use it with VSCode.
To use the extension, simply open the workspace containing your Verilog project. Assuming the project is opened in Trusted mode, the extension should be able to instantly provide feedback.
This Language Server works for Verilog files.
Current Features:
- Completions
- Go To Definition for modules
- Token Highlighting
- Warning Diagnostics
- Error Diagnostics
Roadmap Features:
- Go To Definition for variables
- Find all References
- Error-tolerant parser
- Improved Completions
If you want to contribute, you can get started by following the below steps:
- Clone this repository
- Run
npm install
inclient/
. This installs all necessary npm modules. - Open the repo in VS Code
- Switch to the Run and Debug View in the Sidebar (shortcut: Ctrl+Shift+D)
- Select
VLS
from the drop down- This will launch both the Extension Development Host in debug mode, and the language server in Golang Debugger
- Set breakpoints any source file in
server/
orclient/
, debug to your pleasure!
- Press ▷ to run the launch config (shortcut: F5)
tsc watch
is started automatically on folder open- To reload changes you made to the extension, simply run Reload Window in the Extension Development Host
- In the Extension Development Host, open a Verilog Document
- You should now be able to use the extension and see the autocomplete functionality