Releases: rvanbekkum/vsc-xliff-sync
1.5.0
Changes
- New command
xliffSync.buildWithTranslations
which first builds the project in the currently open workspace/project folder, and directly afterwards synchronizes all .xlf translation files in the workspace/project folder. - New setting
xliffSync.defaultLanguages
that can be used to specify the languages that should automatically be used for the translation file generation. - New setting
xliffSync.buildCommandToExecute
that specifies the build command to execute for thexliffSync.buildWithTranslations
command
Thank You
- FlorianNoeverGOB for your pull request to add the
xliffSync.buildWithTranslations
command (Pull Request #122)
1.4.0
Changes
- New setting
xliffSync.useSelfClosingTags
that can be used to specify whether to use self-closing tags in the XLIFF target translation files. (GitHub issue #97) - Added
LICENSE
file. - Updated
README
with additional references and Contributors section.
Thank You
1.3.0: Merge pull request #105 from rvanbekkum/develop
1.2.0: Merge pull request #92 from rvanbekkum/develop
Changes
- Fixed "Open Externally" no longer working after Visual Studio Code update 1.57.0. This may be a work-around that will be reverted later on. (GitHub issue #89)
- Patch "equivalent languages" feature not allowing to override default value but instead merging the setting values (this was not intended). (GitHub issue #87)
1.1.0: Merge pull request #84 from rvanbekkum/develop
1.0.0: Merge pull request #80 from rvanbekkum/develop
Changes
-
Optimized syncing through a preprocessing step that builds up unit maps. The existing implementation approaches O(n^2) while this optimization implemented brings it down to O(n) (with n being the number of translation units). This optimization was already applied earlier in the PowerShell version (see ps-xliff-sync). The new setting
xliffSync.unitMaps
can be used to change whether and to which extent these maps should be used (Default:"All"
). (GitHub issue #31) -
New setting
xliffSync.preserveTargetChildNodes
that can be used to specify whether child nodes specific to the translation target file should be preserved while syncing. Currently this setting will preservealt-trans
nodes and custom nodes for XLIFF 1.2 files. (Default:false
) (GitHub issue #60) -
The extension can now handle units with child nodes (e.g., placeholder tags like
<x/>
) in the target node. (GitHub issue #67) -
New settings
xliffSync.equivalentLanguages
andxliffSync.equivalentLanguagesEnabled
that can be used to specify equivalent languages. You can specify pairs of master language and slave language-pattern (RegEx) in thexliffSync.equivalentLanguages
setting to have the extension copy to contents of the master language's translation file to the translation files of its slave languages. This way you only need to enter the translations for the master language, so that after you sync. again the slave languages will get the same translations, and you don't need to go through all languages files that would get the same translations. For example, oftennl-NL
andnl-BE
would simply get the same translations, so this way you could specify thatnl-BE
should take over all the translations ofnl-NL
. (GitHub issue #74)-
The default value for
xliffSync.equivalentLanguagesEnabled
isfalse
. -
The default value for
xliffSync.equivalentLanguages
is{ "de-DE": "de-.*", "en-US": "en-.*", "es-ES": "es-.*", "fr-FR": "fr-.*", "nl-NL": "nl-.*" }
You can freely customize this, e.g., adding
"en-GB"
as a master language for"(en-AU)|(en-NZ)"
and changing"en-US"
to be a master language for"en-CA"
if you do have differences betweenen-US
anden-GB
in your translations:{ "de-DE": "de-.*", "en-GB": "(en-AU)|(en-NZ)", "en-US": "en-CA", "es-ES": "es-.*", "fr-FR": "fr-.*", "nl-NL": "nl-.*" }
-
-
New setting
xliffSync.keepEditorOpenAfterSync
that can be used to specify whether XLIFF files should be open in the editor after syncing. (Default:true
) -
The technical validation rules now also check that placeholders of the form
#1
match. (GitHub issue #73)
0.7.0: Merge pull request #72 from rvanbekkum/develop
Changes
- Activate extension when any of the extension's commands are invoked.
- New setting
xliffSync.matchingOriginalOnly
that can be used to specify whether to sync. only to files where theoriginal
attribute of thefile
-node of an XLIFF file matches that of the base file (Default:true
). (GitHub issue #51 + (GitHub issue #66)) - New setting
xliffSync.clearTranslationAfterSourceTextChange
that can be used to specify whether the translation for trans-units should be cleared during syncing if a change in the source text is detected (instead of marking it as needs-work) (Default:false
). (GitHub issue #64) - Fix: Do not add state to (new) target nodes in XLIFF 2.0 files. (GitHub issue #57)
- Added more details about files and workspace to error messages. (GitHub issue #65)
0.6.0
Changes
- New setting
xliffSync.addNeedsWorkTranslationNote
that can be used to change whether an "XLIFF Sync" note should be added to trans-units that are being marked as needs-work by the extension (which are added to explain what was detected) (Default:true
). - New setting
xliffSync.openExternallyAfterEvent
that can be used to specify whether translation files should be opened automatically with the default XLIFF editor after an event takes place. By default, files will not be opened externally automatically (Default:[]
).
You can set files to be opened externally automatically after:- Checking translations
- Detecting problems
- Synchronizing translation files
0.5.1: Merge pull request #55 from rvanbekkum/feature/53-fix-basefile-setting
Changes
- Fix: Do not add
xliffSync.baseFile
setting if there is only a single matching file. - Account for whitespace in missing translation decoration
0.5.0: Merge pull request #52 from rvanbekkum/feature/50-xlf2-states
Changes
- Better XLIFF 2.0 support:
state
attribute onsegment
nodes instead of target nodes.state
andsubState
used:needs-translation
->initial
with no sub-stateneeds-adaptation
->translated
with sub-state configurable with settingxliffSync.needsWorkTranslationSubstate
.translated
->translated
with no sub-state.
- Let
xliffSync.fileType
=xlf2
work with file-extensionxlf
. - Fix: function
findXliffSyncNoteIndex
should check for the "category" attribute instead of the "from" attribute. - Fix: function
tryDeleteXliffSyncNote
should callfindXliffSyncNoteIndex
withnotesParent
as argument instead ofunit
. - Fix: function
setXliffSyncNote
should only add a newnotes
node in XLIFF 2.0 files if it does not exist for a unit. - Fix: function
setXliffSyncNote
should callfindXliffSyncNoteIndex
to check if an XLIFF Sync note already exists. - "Check for Need Work Translations" now considers the
xliffSync.needsWorkTranslationSubstate
sub-state. - Decoration is now also applied on
segment
nodes with thexliffSync.needsWorkTranslationSubstate
sub-state.