Comments (5)
I would also like to see this implemented. I love to use this with vim so far and haven't seen similar tool that compiles the sources on save. Or have I missed something?
from hdl_checker.
Had never heard about LSP before to be honest :)
The LSP defines quite a lot of interesting things, hdlcc could possibly implement the Diagnostics interface, but I need to check if/how LSP supports configuration (like the path to the hdlcc config file) and if the protocol requires servers to send results as you type (i.e., without having to save the file; should be doable, just a bit more work really).
@kazooiebombchu if hdlcc can locate a compiler to use, it should compile the sources you save and its dependencies using a hidden folder as workspace. You can always use those results if you need, although if you're actually running simulations, I'd recommend VUnit :)
from hdl_checker.
AFAIK LSP supports sending both file diff and whole file. Simpler servers implement only whole-file mode on file save, anything more is optional.
LSP supports passing path to configuration file or top directory. This is called rootUri.
This is how such configuration looks like for another plugin working with vim-lsp:
https://github.com/prabirshrestha/vim-lsp/wiki/Servers-VHDL
from hdl_checker.
LSP support should be working on the lsp_support branch - at least seems to work fine with w0rp/ale, but still need to update the readme with changes. The Vim side of things is on a similar state, except it still need proper testing.
(took a while to get this properly working, had other stuff going on)
from hdl_checker.
Forgot to close this. LSP has been integrated into master. Will update the readme with info on how to use it soon.
from hdl_checker.
Related Issues (20)
- [feature] use shtab
- [feature] format code
- [feature] create a .gitignore in .hdl_checker
- [BUG] vscode-plugin: hdl_checker-script.py is being executed after vscode-close -> overloads CPU HOT 1
- [feature] Include modelsim's vsim for linter
- not support Python 3.12
- No module named 'six' on attempted launch HOT 2
- Add support for .f file lists HOT 1
- [Question] Managing component dependencies and more HOT 1
- [Question] LSP hover information and dependencies navigation functionalities HOT 1
- pygls.features no longer exists HOT 2
- Error on Ubuntu 16.04 with Python 3.5 HOT 1
- New Files not being added to the Project
- Verilog/System Verilog support in Emacs lsp-mode HOT 2
- Empty Range for Diagnostics HOT 5
- NeoVim Native LSP Configuration errors HOT 2
- [Doc] Use pip3 instead of pip in instructions HOT 1
- No compiler flags applied even though hdl_checker.config exists
- hdl_checker appears as not running HOT 1
- Remove typing dependency
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hdl_checker.