Support for capnproto (http://capnproto.org/)
- Syntax Highlighting
- Bracket matching
- Capnp ID generator ( Ctrl+Shift+p -> GenerateCapnpID )
Built specially for @grimpy
clone repo under ~/.vscode/extensions/vscode-capnp.
- Open this folder in VS Code:
- Press F5 — this launches an Extension Development Host window
- In the new window, open any .capnp file and verify:
- Syntax highlighting works (comments with #, keywords, types)
- Bracket matching works
- Ctrl+Shift+P → "Generate Capnp ID" inserts an ID at the top
# Install the packaging tool
npm install -g @vscode/vsce
# Package the extension
vsce package
# Install the .vsix file
code --install-extension vscode-capnp-1.1.0.vsixThen reload VS Code: and test with a .capnp file.
-
Get a Personal Access Token from Azure DevOps:
- Go to https://dev.azure.com/xmonader (create org if needed)
- User Settings → Personal Access Tokens → New Token
- Set scope to Marketplace > Manage
- Copy the token
-
Login and publish:
npm install -g @vscode/vsce
vsce login xmonader # paste your token when prompted
vsce publishThis publishes version 1.1.0 to the marketplace under your existing xmonader publisher.
npm install -g ovsx
ovsx publish vscode-capnp-1.1.0.vsix -p <your-open-vsx-token>Get your token at https://open-vsx.org after signing in with GitHub.
The project includes GitHub Actions workflows for CI/CD:
Runs on every push and pull request:
- Compiles TypeScript
- Runs tests
- Packages the extension
- Uploads the
.vsixas an artifact
Triggers automatically when you create a GitHub release:
- Publishes to VS Code: Marketplace (requires
VSCE_TOKENsecret) - Publishes to Open VSX (requires
OVSX_TOKENsecret)
- Go to Settings → Secrets and variables → Actions
- Add
VSCE_TOKEN- Your VS Code: Marketplace PAT - Add
OVSX_TOKEN- Your Open VSX token
https://github.com/textmate/capnproto.tmbundle (For textmate language grammar)