GitHub Actions
GitHub Actions LSP support for Zed.
How to install
With Forge Super installed, the button above opens the app on this extension, where you press Install. Nothing is installed until you do.
You can also open the Extensions panel in the app and search for GitHub Actions. The extension's id is github-actions.
Don't have Forge Super yet? Download it here.
README
From the extension's repository, written by its authors and not by Mentenaz. See the source.
zed-github-actions
GitHub Actions LSP support for Zed. As this repository uses code based on some official Zed extensions (e.g Svelte and Astro), this repository is under the same license as those. To develop this extension, see the Developing Extensions section of the Zed docs.
- Tree-sitter: zed-industries/tree-sitter-yaml
- Language Server: actions/languageservices
- Language Server (binary): lttb/gh-actions-language-server
[!NOTE] The LSP provided by the official NPM package
@actions/languageserverdoes not include a binary (see issue #56), so this repository uses a third-party NPM package to install it viagh-actions-language-server.
Configuring
Filetype settings
This extension by default does not have any file associations built-in, as Zed doesn't support glob patterns at the extension-level to recognize a language within a specific directory. Instead, you can edit your Zed settings file (settings.json) with:
{
// ...
"file_types": {
"GitHub Actions": [
".github/workflows/*.yml",
".github/workflows/*.yaml"
]
}
}
This extension avoids conflicting with the built-in YAML support for Zed by following how other Zed extensions for specific YAML files resolve this issue, including the Ansible extension and Docker Compose extension.
LSP settings
You can configure the LSP settings in Zed with:
{
// ...
"lsp": {
"github-actions-language-server": {
"initialization_options": {
// ...
}
}
}
}
Default settings
The default settings (initialization_options) set by the extension is shown below:
{
"sessionToken": ""
}
A session token is a GitHub PAT (Personal Access Token). This is not required, but when specified allows accessing more information from github.com.
- Classic PATs will need access to
repoandworkflowscopes. - Fine-grained PATs, which can either be given access to:
- "Public repositories"
- "All repositories"/"Only select repositories" with repository permissions to
Workflows
License
Licensed under Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0).
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.