Skip to content

Releases: rvanbekkum/vsc-xliff-sync

1.5.0

26 Aug 15:32
Compare
Choose a tag to compare

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 the xliffSync.buildWithTranslations command

Thank You

  • FlorianNoeverGOB for your pull request to add the xliffSync.buildWithTranslations command (Pull Request #122)

1.4.0

30 Dec 13:40
Compare
Choose a tag to compare

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

  • warlof for your pull request (Pull Request #110) which adds the xliffSync.useSelfClosingTags setting.
  • eclipses for reporting GitHub issue #97.

1.3.0: Merge pull request #105 from rvanbekkum/develop

19 May 17:34
6db79b7
Compare
Choose a tag to compare

Changes

  • New setting xliffSync.parseFromDeveloperNoteTrimCharacters that can be used to specify the characters to trim from the translations parsed from the developer notes. (GitHub issue #100)
  • Included needs-l10n to be considered as a needs-work state. (GitHub issue #102)

1.2.0: Merge pull request #92 from rvanbekkum/develop

21 Jun 18:52
00d9b47
Compare
Choose a tag to compare

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

26 Feb 16:45
9348b27
Compare
Choose a tag to compare

Changes

  • Fixed new unit nodes getting state="translated" with no translation. Bug due to changes for GitHub issue #67. (GitHub issue #81)

1.0.0: Merge pull request #80 from rvanbekkum/develop

21 Feb 15:28
93966bf
Compare
Choose a tag to compare

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 preserve alt-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 and xliffSync.equivalentLanguagesEnabled that can be used to specify equivalent languages. You can specify pairs of master language and slave language-pattern (RegEx) in the xliffSync.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, often nl-NL and nl-BE would simply get the same translations, so this way you could specify that nl-BE should take over all the translations of nl-NL. (GitHub issue #74)

    • The default value for xliffSync.equivalentLanguagesEnabled is false.

    • 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 between en-US and en-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

04 Feb 22:18
9d4e48f
Compare
Choose a tag to compare

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 the original attribute of the file-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

26 Nov 22:01
567462a
Compare
Choose a tag to compare

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

03 Sep 20:18
c0c879f
Compare
Choose a tag to compare

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

08 Aug 12:32
5444d08
Compare
Choose a tag to compare

Changes

  • Better XLIFF 2.0 support:
    • state attribute on segment nodes instead of target nodes.
    • state and subState used:
      • needs-translation -> initial with no sub-state
      • needs-adaptation -> translated with sub-state configurable with setting xliffSync.needsWorkTranslationSubstate.
      • translated -> translated with no sub-state.
    • Let xliffSync.fileType = xlf2 work with file-extension xlf.
    • Fix: function findXliffSyncNoteIndex should check for the "category" attribute instead of the "from" attribute.
    • Fix: function tryDeleteXliffSyncNote should call findXliffSyncNoteIndex with notesParent as argument instead of unit.
    • Fix: function setXliffSyncNote should only add a new notes node in XLIFF 2.0 files if it does not exist for a unit.
    • Fix: function setXliffSyncNote should call findXliffSyncNoteIndex 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 the xliffSync.needsWorkTranslationSubstate sub-state.