Logo

SystemVerilog Language Server for Intellij IDEA

Build Version Downloads

This plugin integrates SystemVerilog language servers (LSP) into Intellij IDEA, which enables on-the-fly syntax linting. It supports multiple language servers, including:

  • Verible by ChipAlliance
  • Svls by @dalance
  • Custom LSP (You can specify your own LSP binary)

📦 Requirements

1. Install a SystemVerilog Language Server

Before starting, you need to install a LSP binary, and add it to your PATH environment variable. For example, you can download Verible bianry verible-verilog-ls from its GitHub Release.

2. Intellij IDEA Ultimate

Only Intellij IDEA Ultimate supports LSP, so you cannot use this plugin with the Community version.

Currently, the language server protocol (LSP) support for Jetbrains IDEs is still in beta (View JetBrains' Blog for more details).

3. Third-party SystemVerilog Plugin (Optional but Recommended)

This plugin does NOT include syntax highlighting. So you may need to install another SystemVerilog plugin studio.edaphic.sv from Jetbrains Marketplace.

Although this plugin itself is free, the above third-party plugin and the Intellij IDEA Ultimate version are both paid, so you need to pay for them. You can apply for free licenses for education or open-source proposes.

⚙️ Configuration

Just add the LSP binaries to your PATH environment variable. To specify a LSP, You can set the plugin settings in:

Settings/Preferences > Tools > SystemVerilog Plus.

Settings

Then restart your Intellij IDEA, and see the LSP is activated:

LSP status

Some LSP may need extra configuration files, you can find them in their READMEs.

Verible

Linting on the Fly

Verible linting demo

To custom your linting style, you can create a .rules.verible_lint file in your project root directory. You can find the linting rules in Verible Linter Rule List.

Go to Definition

No configuration is needed. Just "Ctrl/Cmd + Click" on the identifier and the editor will jump to its declaration.

For more details of Verible, please visit:

⚠️ Know Issues

The LSP support by JetBrains is still in beta, so the features of this plugin may not be stable. If you have any problems, please feel free to open an issue on GitHub.

About the Third-party Plugin

Besides, the mentioned SystemVerilog plugin (studio.edaphic.sv ) is no longer maintained, and it is not compatible with the latest version of Intellij IDEA. So we provide a modified version of this plugin on GitHub. You can choose to install this plugin manually:

Settings/Preferences > Plugins > ⚙️ > Install plugin from disk...

They may obey their license (although it is not maintained), so you can choose to use it or not.