A language server implementing the Language Server Protocol for Vala and Genie programming languages.
Vala Language Server is an implementation of the Language Server Protocol (LSP) for the Vala and Genie programming languages. It provides advanced code intelligence features such as autocompletion, error checking, and navigation directly within code editors, making development in Vala and Genie more efficient and accessible.
Developers working with Vala or Genie, particularly those building GNOME applications or system software, who use modern code editors like VS Code, Vim, or GNOME Builder.
It offers a standardized, editor-agnostic way to get rich language features without editor-specific plugins, leveraging the Vala compiler (libvala) for accurate analysis and supporting multiple build systems.
Code Intelligence for Vala & Genie
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages libvala for real-time diagnostics and context-aware completions, ensuring compiler-level accuracy as it depends on libvala >= 0.48.12.
Implements the Language Server Protocol for integration with VS Code, Vim, GNOME Builder, and more, making features accessible across diverse coding environments as listed in the Editors section.
Supports Meson, compile_commands.json, and Vala scripts with shebangs, allowing it to work with various project setups without being locked to a single build tool.
Includes code actions for quick fixes, renaming, and snippets to implement abstract methods and properties, speeding up development workflows as highlighted in the features list.
Lacks support for CMake and Autotools, as admitted in the features list with unchecked boxes, limiting its use in projects reliant on these popular build systems.
Windows installation requires MSYS2 via pacman, which is less straightforward than native Linux package managers and may deter developers on that platform.
Some editors like Kate can silently fail when Meson is not in the path without user notification, as warned in the README, leading to potential confusion and debugging efforts.