Nathan (GDQuest)
banner
gdquest.bsky.social
Nathan (GDQuest)
@gdquest.bsky.social
Become a game developer with the Godot game engine!
Hundreds of free tutorials and open-source demos: http://gdquest.com
It'll be the new front page of gdquest.com. It's a website, we're just making most of the technology that powers it from scratch to minimize tech debt, improve accessibility, end user performance (make the pages more lightweight, faster to load), and build performance
Learn to Make Games · GDQuest
Learn the techniques used by professionals to create games and beautiful sprites with Free, Open Source Software.
gdquest.com
November 15, 2025 at 12:27 PM
Thank you very much for the kind words!
October 25, 2025 at 6:17 PM
Currently the Godot addon can update the formatter to the latest version, but there is nothing built into the formatter itself for that.
September 30, 2025 at 7:51 AM
By making an external program with this rust technology, we already have a more reliable, fast formatter for the community right now that we can use in production with less work and maintenance though (much more accessible to contributors to collab on too).
September 29, 2025 at 2:05 PM
You can use this with Nvim, no problem. And sure for the LSP, I'm all for it; that's just outside of our control.

See github.com/godotengine/..., a project GDQuest sponsored, a built-in formatter that does provide LSP support. It lays down a lot of code to build upon/reuse but needs work.
Add script formatter, comment parsing in parser, and editor settings by RolandMarchand · Pull Request #76211 · godotengine/godot
This PR builds upon and finalizes the work done in godotengine/godot/pull/55835. This PR introduces a GDScript formatter in Godot's script editor. Users can access it through Edit/Format Code, ...
github.com
September 29, 2025 at 2:05 PM
No, this is an add-on which unfortunately has no access to the language server. But it's compatible with all code editors and we have configuration info for multiple code editors here: www.gdquest.com/library/gdsc...

VSCode setup guide coming soon.
GDScript Formatter: The fast formatter for Godot 4 | GDQuest Library
Learn how to install and use GDScript Formatter, a fast-running formatter for GDScript in Godot 4. Format and reorder your code according to the official style guide.
www.gdquest.com
September 29, 2025 at 8:57 AM
If you'd like to help contribute this, here's the source code: github.com/GDQuest/GDSc...

The Godot add-on is in the addons/ folder.
GitHub - GDQuest/GDScript-formatter: A fast code formatter for GDScript and Godot 4, written in Rust
A fast code formatter for GDScript and Godot 4, written in Rust - GDQuest/GDScript-formatter
github.com
September 29, 2025 at 8:54 AM
Yes, it's bound to a predefined shortcut by default, or can run automatically on save. Now a limitation of Godot is that you cannot integrate an add-on with the editor shortcuts yet. So we'd have to code something custom to allow you to change the shortcut.
September 29, 2025 at 8:54 AM
Saw that, thanks much!
September 27, 2025 at 6:48 PM
Note that this could certainly be addressed in GDFormat. In part I didn't want to weigh on the open source project of a busy dev. with our unique use cases. Then initially this was just a quick test but well it ends up helping with speed + helps improve GDScript support in 3rd parties so here we are
September 27, 2025 at 9:43 AM
We use them in our curriculum to always pull in up-to-date code and use the source code files as a source of truth. They go through a custom parser that picks up the regions + main code definitions and hides the gdquest markup from the output.
September 27, 2025 at 9:38 AM
The main thing is lots of custom code regions, typically delineated with comments, at all kinds of indent levels, sometimes dedented compared to the function, sometimes indented with the code, that get hit by vertical spacing rules.
September 27, 2025 at 9:38 AM
Then I asked the team about having an option in Godot to use an external formatter. For auto-install, they recommended building an add-on.

An option to give a path to the external formatter could be added but not all other features, so now I think we might as well just have the addon.
September 27, 2025 at 9:27 AM
A Rust program like this would not make it into the engine. For a built-in formatter we sponsored this instead a few years back: github.com/godotengine/...

But it's a ton more work and the core team hasn't had the bandwidth to closely follow up on or pick it back up.
Add script formatter, comment parsing in parser, and editor settings by RolandMarchand · Pull Request #76211 · godotengine/godot
This PR builds upon and finalizes the work done in godotengine/godot/pull/55835. This PR introduces a GDScript formatter in Godot's script editor. Users can access it through Edit/Format Code, ...
github.com
September 27, 2025 at 9:27 AM
At the same time, there is this rust technology that makes building and maintaining a code formatter much easier. So I went with that, initially just to try, and within maybe 15-20h of work we had a formatter that handled almost all our code. We could also have features like code reordering.
September 27, 2025 at 9:22 AM
As far as formatting goes, it aims to follow the official style guide in both cases.

At GDQuest, we have special markup in our code that wouldn't work well with GDFormat in ways that are not super easy to address.
September 27, 2025 at 9:22 AM
The most noticeable difference is speed: it's around 10x faster on a modern computer (with room to make it faster in the future).

Yes, there is a VSCode extension already by a contributor: marketplace.visualstudio.com/items?itemNa...
godot-format - Visual Studio Marketplace
Extension for Visual Studio Code - A formatter for Godot/GDScript using GDQuest's gdscript formatter
marketplace.visualstudio.com
September 27, 2025 at 9:22 AM
Right now the config is through the command line - it's mainly tabs vs spaces for indentation. If there's more configuration you rely on in your work or the editorconfig format, don't hesitate to open an issue.

Note the formatter doesn't support line length and auto-wrapping at the moment.
September 24, 2025 at 12:05 PM
There are multiple people interested in contributing, so if we document potential refactors and improvements, these can be picked up by fellow devs if I can't get to it personally.
September 23, 2025 at 2:03 PM
The top priority is making sure the formatter itself is reliable but anything we can easily change or improve along the way or even just note down for later is really welcome.
September 23, 2025 at 2:03 PM
Thanks! I have nearly no prior experience in Rust so any feedback an experience rust dev has on the code is most welcome.
September 23, 2025 at 2:03 PM