VirtualDJ comes in various Languages (English, Spanish, Italian, French, German, Chinese etc). The translated sentences and words of VirtualDJ are included in the language xml files which are installed along VirtualDJ in /Documents/VirtualDJ/Languages Folder.
If you wish to translate VirtualDJ to your language (in case its not one of the available), you can copy the English (or any other) xml language file and save it as YourLanguage.xml at the same /Languages folder and then translate all the sentences you will find in the xml file which are enclosed with <SomeName><SomeName/>
Once the new xml file is created, the Language can be selected from within VirtualDJ Settings (Options->Language)
If you wish to share the Language File that you have created with other VirtualDJ Users, see here how to upload it.
See some Language Files uploaded by users.
Note : Use an Advanced Editor (like Notepad++ ) or an XML Editor and make sure it's set to UTF-8 encoding and not ANSI.
Language Update Tool
Languagediff is a tool to make it easier to update specific language files when english.xml is updated.
- Download languagediff.zip and extract it to Documents\VirtualDJ\languages
- Copy the most recent virtualdj.exe into the languages folder *
- Delete english.xml
- Run languagediff.exe
* Note : Keep in mind that when VirtualDJ is auto-updated, the language files are not. Only a fresh installation updates Language files (among others , like skins, samples, Guides etc).
- If english.xml doesn't exist, it is extracted from virtualdj.exe that you placed in the languages folder.
This ensures you start with the latest version of english.xml
- all other language.xml files are updated, compared to this english.xml
English.xml is also copied to english_xxxx.xml with xxxx being the current version number.
Leave these files in the languages folder so that the diff tool can use them on later english.xml updates to detect changes other than additions and removals.
Now you can edit the language of your choice.
- Search for items with a parameter "update="
For example:<invert_timecode update="Invert timecode control (for 1 timecode source, switch it through available decks, for 2 timecode sources, from 1 to 3, 2 to 4)">Invert timecode control (for 1 timecode source, switch it through available decks, for 2 timecode sources, from 1 to 3, 2 to 4)</invert_timecode>
Write the translation, and remove the update parameter.
- Next, look for deleted="yes"
These items should in most cases be removed from the xml, as they are not used in english.xml anymore.
- When finished, the language file is ready to be submitted for update.