This plugin integrates SystemVerilog language servers (LSP) into Intellij IDEA, which enables on-the-fly syntax linting. It supports multiple language servers, including:
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.
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).
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.
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.
Then restart your Intellij IDEA, and see the LSP is activated:
Some LSP may need extra configuration files, you can find them in their READMEs.
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.
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:
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.
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.