|
| Setting | Default | Description |
|---|---|---|
xliffAutoSync.syncCommand |
xliffSync.buildWithTranslations |
Command that syncs the XLIFF translation files |
xliffAutoSync.commitAfterSync |
always |
Commit the synced translation files after a commit made in VS Code (always / never). The manual command always commits |
xliffAutoSync.pushAfterCommit |
never |
Push the branch after the translation commit (always / never). Only branches that track an upstream branch are pushed |
🧠 Requirements
- XLIFF Sync by Rob van Bekkum (installed automatically as a dependency)
- Git, with VS Code's built-in Git extension enabled
Notes
- Only commits made through VS Code's Git integration (Source Control view, Git commands, other extensions using the Git API) trigger the sync. Commits made in a terminal or another Git client don't.
- All modified XLIFF files are included in the translation commit, not only the ones changed by the sync.
- Nothing is synced or committed while non-XLIFF files are staged, a merge has unresolved conflicts or a rebase is in progress.
- With
git.untrackedChangesset tohidden, new XLIFF files are invisible to VS Code and therefore not committed.
🧩 Repository
GitHub: Florian-Noever/xliff-auto-sync
Bug reports and feature requests are welcome via Issues.
🛠️ Developer Notes
Build Commands
# Type-check, lint and bundle the extension (out/extension.js)
npm run compile
# Compile in watch mode: esbuild + tsc in parallel (default build task)
npm run watch
# Run the unit and integration tests in a VS Code instance
npm test
# Package the extension as a .vsix
npm run package
CI & Releases
CI runs on every push and pull request through the shared workflows of Florian-Noever/Florian-Noever. It runs the integration tests in VS Code and packs a preview VSIX.
To release, bump the version with npm version x.y.z --no-git-tag-version and publish a GitHub release vx.y.z from a commit whose CI is green. The publish workflow builds and tests the tag, attaches the VSIX to the release and publishes it to the Visual Studio Marketplace.
📜 License
Licensed under the MIT License.