Added support for optionally using LSP for c-like languages
Added support for optionally using LSP for c-like languages.
Also bumped c++ version to 20 for the Juci++ project (to allow support for newer API like std::set::contains).
Reasons for adding this support:
- While the libclang tooling is awesome, I think it would be interesting for the user to be able to pick LS if they prefer
- There are more than 1 LSs for c-like languages (clangd, ccls). The user may benifit for advancements in these which have not yet been pulled into libclang (are there such features ?). The user would also not need to update the IDE to get these advancements, instead they can choose to only update the LS tool.
- This is specially useful currently as Juci++ does not have a packaged release
- In case the user is happy with the built-in functionality, they can choose to stay on it.
To be able to use the LSP comfortably, there is definitely an update needed for better syntax highlighting. I see there already is a planned enhancement for it. I will start work on that next.
Edited by Shivang Gangadia