I have released the Tinderbox Action Code LSP , a VS Code extension.
I built this extension as a winter holiday project.
It was built using “vibe coding” with Gemini Cli and Antigravity. The language is automatically detected when the file extension is .tbxc.
It should function similarly to a standard LSP. For the hover information, I am using Mark Anderson’s excellent “A Tinderbox Reference File”,and I would like to express my sincere thanks to @mwra.
It might still have some bugs, but it currently supports features like checking for missing semicolons and smart quotes. Please feel free to give it a try.
I have pushed several major updates up to the latest version (v0.3.2). Here are the key new features and improvements:
Full Export Code Support (.tbxe): The extension now fully supports Tinderbox Export Code. It provides rich autocomplete, hover documentation, and robust parsing for Export Tags (^...^), gracefully handling nested structures and complex strings within tags.
Token-Based Parsing Engine: The core parser was upgraded from simple regex scanning to a robust token-based state machine. This massively improves the accuracy of Signature Help, Hover documentation, and context-aware variable scoping—especially for complex method chains and nested parentheses.
Workspace Symbols: You can now use Cmd/Ctrl+T to search for user-defined functions and variables across all open documents in your workspace.
Code Actions (Refactoring): Added a Quick Fix (Cmd+. or Ctrl+.) to easily “Extract to variable” from a selected expression.
Enhanced Snippets & Semantic Tokens: Added specialized control flow snippets for Tinderbox (e.g., each, if blocks) and introduced distinct syntax coloring for read-only system attributes.
You can find the extension on the VS Code Marketplace and the source code on GitHub:
Thank you so much for the kind invitation, and please accept my apologies for the late reply.
Regarding the meetup demo, to be honest, I am not very confident in my English skills and I tend to be a bit shy when it comes to public speaking. It feels a bit too much for me at this time.
I hope I will be able to do it someday…
Thank you for your understanding.