A big thank you to the developers of the vscode-go extension for Go. Their work was a huge help in creating this extension for the Gno language, as I adapted their ideas and structure to fit this new context. Thank you for your contribution to open source and for the inspiration!
- Visual Studio Code 1.75 or newer (or editors compatible with VS Code 1.75+ APIs)
- Go 1.21 or newer and Gno.
Welcome! 👋🏻
Whether you are new to Gno or an experienced Gno developer, we hope this
extension fits your needs and enhances your development experience.
-
Install the [VS Code Gno extension].
-
Open any Gno file or gno.mod file to automatically activate the extension. The Gno status bar appears in the bottom right corner of the window and displays your Go version.
-
The extension depends on
go
,gno
,gnopls
(the Gno language server), and optional tools depending on your settings. Ifgnopls
is missing, the extension will try to install it. The ⚡ sign next to the Gno version indicates the language server is running, and you are ready to gno.go
is required for automatic installation of missing tools.
You are ready to Gno :-) 🎉🎉🎉
- Explore more features of the VS Code Gno extension.
- View the settings documentation to customize the extension.
- View the tools documentation for a complete list of tools the VS Code Gno extension depends on. You can install additional tools and update them by using "Gno: Install/Update Tools".
- file an issue for problems with the extension.
- Start a GitHub discussion.
- Explore Gno language resources on docs.gno.land.
If you are new to Gno, this article provides
the overview on Gno code organization and basic gno
commands.
- IntelliSense - Results appear for symbols as you type.
- Code navigation - Jump to or peek at a symbol's declaration.
- Code editing - Support for saved snippets, formatting and code organization, and automatic organization of imports.
- Enhanced support for testing
See the full feature breakdown for more details.
(Code completion and Signature Help)
In addition to integrated editing features, the extension provides several
commands for working with Gno files. You can access any of these by opening the
Command Palette (Ctrl+Shift+P
on Linux/Windows and Cmd+Shift+P
on Mac), and
then typing in the command name. See the
full list of commands provided by this
extension.
The Gno extension relies on tools
like gnopls
for its core functionalities and they have their own release
policy and schedule. We test only against the latest versions of these tools.
We welcome your contributions and thank you for working to improve the Gno development experience in VS Code. If you would like to help work on the VS Code Gno extension, see our contribution guide to learn how to build and run the VS Code Gno extension locally and contribute to the project.