A Rust-based Language Server for the yaml file, providing hover documentation and code completion support for the file.
# Get the Rust toolchain: https://www.rust-lang.org/tools/install
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
$ cargo build --release
$ file target/release/pioneer
target/release/pioneer: Mach-O 64-bit executable arm64The pioneer server provides integration with various IDEs.
Below are instructions for integrating the LSP into VSCode and IntelliJ Based IDEs.
To integrate the LSP server into an IDE, you need to create an IDE extension and bundle the language server with it
Note
You don't have to bundle the LSP server within the plugin itself. Instead, you can place the server binary in a separate location (e.g., in your $PATH) and configure the extension to use it from there. This approach can be more convenient during development.
Note
The extension has been set to support all VSCode versions after 1.75.0.
You can change the engines field in package.json to support earlier versions.
- Language Server Binary
- Node.js 20+ (LTS)
- Copy the
pioneerbinary into theclient/vscodefolder. - Navigate to the
client/vscodedirectory and install the dependencies by runningnpm install. - Run the command
npx @vscode/vsce packageto package the extension. - This will generate the extension as a
.vsixfile.
# Copy the language server in extesion folder
$ cp target/release/pioneer client/vscode
$ cd client/vscode
# Installing the dependencies
$ npm install
# Create the extension
$ npx @vscode/vsce package
# The extension will generated in the same directory
$ ls
extension.js package-lock.json package.json pioneer-x.x.x.vsix To install the VSIX file as an extension
- Go to the Extensions view (
Cmd ⌘ + Shift + Xon macOS,Ctrl + Alt + Son Windows/Linux) - Click Views and More Actions...
- Select Install from VSIX...
OR
In your terminal, run the following command:
# If you use VS Code
code --install-extension pioneer-x.x.x.vsix
# If you use VS Code Insiders
code-insiders --install-extension pioneer-x.x.x.vsixNote
The plugin is compatible with all IntelliJ-based IDEs starting from version 2023.3.2 and later
- Language Server Binary
- Java 17 or higher
- Copy the
pioneerbinary into theclient/IntelliJfolder. - Navigate to the
client/IntelliJdirectory. - Run
./gradlew buildPluginto generate the plugin jar. - A
.jarfile will be generated in thebuild/libsfolder.
# Get the Language Server in the plugin directory
$ cp target/release/pioneer client/IntelliJ
# Navigate to the plugin directory
$ cd client/IntelliJ
# Build the plugin jar
$ ./gradlew buildPlugin
# Output jar present in build/libs folder
$ ls build/libs
instrumented-Pioneer-x.x.x.jar Pioneer-x.x.x.jarTo install the generated .jar plugin file in IntelliJ/GoLand
- Open IntelliJ and navigate to Settings (
cmd ⌘ + ,on macOS,Ctrl+Alt+Son Windows/Linux) and go to Plugins. - Click the gear icon (⚙️) and select Install Plugin from Disk.
- Select the
.jarfile generated and click OK.
