Transifex Guide

This discussion has a more recent version.

Transifex


Transifex is a proprietary, web-based translation platform that helps developers and marketers create digital content across multiple languages.  Creators of this content can invite teams of translators to assist in the translation of various parts of their product.


How To Use Transifex   


Once you are a part of the Vanilla Forums project, you’ll be dropped into the Dashboard, which gives you an overview of the project as a whole. 


aK2fGhjf5ZgT7zX5ussKkIXbDn7NMB4lC2MJXKgvNTt-MCGyqnFf4jztT64C0aEI5WtSzLDLKxlT9CiehRFU33cJijw-muv-nW87oB4uUjLNJ5h_Qe6kwZDg9_RLyKGpEf0n2Jt7=s0


For this walkthrough today, we will be searching for and correcting a French translation. On the left hand side, hit the ‘Languages’ tab and then scroll down until you see ‘French’ then click there. 


ablbwri1LC9yRAxFIu-wBbQ3MYnUmWmNvpf7hK8owi6v_jFLS6F5SEzlHikThA_FUCVvgXgzD0KYNKNADMHrFidBoy0M6ZKJ2GYgrFmhNW-lhwPGGarLbuOeL--O-yQ0wPiA8jtc=s0


The next screen shows us how the translation work has been broken down.


SBvavQokctrGiy1ZTrefCz8CYtB5DXDzF1tcYh-I5tYOC7pxptY9xXweNd-maN5w6F7CYQYT7BZYZoeMU-Nut3hdIZCbgLm4L5xoYvQ4VKAwbdZ9UkXB6Hd30Hg-NomeTfFKHag8=s0


As you can see, ‘site_core’ is where most of the translation strings are going to be found. Both ‘dash_core’ and ‘dash_text’ refer to things that you would find in the Dashboard for a forum.  The ‘site_core’ section is everything else.  Go ahead and click there.  

Unless you are going to be working in an offline environment, it is typically easiest to simply view the strings online. Click on the link there, as well.  


6PUMVU3jwPq4OJFvBFWTsK64fDsaNiGhVJJwExZ-9HHjByMbTsjiNurWrpJQQ2-fJK-g2C0iLC15VWFKYh7BNG32we8pqtPe6xuLIgH7Cb4IL128rmLIr4jchYhWaYgEfsPYgk_F=s0


In the example today, we are searching for the string that comes up when a user tries to follow a link to a comment that has been deleted.  In English, it will look like this: 


AyC5d0LFMkRV-M-9Nqu6wUhfW0YQlZDMdcukHAvc1lUcUkDy5ckQUxBUOditNff5yLHdTbnhVvycOosi2mE7H9FaDmj7cMd3q3NqnXrorjcUwAQNl29wIxoUvTJOtpAgWYPwP20k=s0


The bad French translation that we will be fixing currently shows as the following: 


c3aFoQMEzNq1qi_9DRwlZcj2hFh2vcbYyWYl2oQtzXh_pJFfCodKIc-TvTmhy6iOLJHPZbQEUR6Oxpl1jICSqHc1sBgJ6l7M2ht-51L9_6g1SmdSEr7if4Q4eQt3pclbvgDeIKQF=s0

 

To start things off, we need to find the right strings in the ‘site_core’ database. 


1KsjwXmkPw-Wgsl8kAERHk-kGw9e2pE8-KqVrCheZPeQXRSLiT4qslphbjDs0KVWyy-J6LFxsP12Xr0_KzdRUWXsUxlCK42CPFwFmv7Jjt0oOEzh4kESsbs107E77_s6IqCTAAuZ=s0


Initially, this is probably the most intimidating aspect of using Transifex, but the learning curve isn’t nearly as steep as it looks, and once you do a string or two, you’ll start to see the pattern of how things are listed and then it becomes a lot easier to navigate.  


What you’ll find is that rarely is a string all together in one piece.  For instance, if we search for the first part of our example “Comment not found” (capitalization does matter), it comes back with nothing:


AvHtH5ultvv4_5oyD21xFA3DppfFqQXW6EcAAzRZgXQ9JtC6vZFiMzi_5LBM3cE4WkJCxvbY5haJjX3me2Iosx3Sf0gaXCLppeFP0Bx9lKqfRKkIED32a7TpGmHRJ2NJVZTl9vpB=s0


All those words do exist in this database, however, just not as a single string. If we shorten what we’re looking for down to just ‘Comment,’ we get this:


Hb7GQIW5DMSh2BkfcPfJdTWJ97g_gMDIdEzqHDI6rxhxEQwI5JzoEQ0ypDiwoEuzhDg42GmdMpm8dDFo37ZiHDbbXgd3JYniak00IfEhkh-5sPLgEGLuRNAvBJ4ofV8C500f47tN=s0


Now we have just about every iteration of comment that Transifex can find in the database, and we can target the one we need and make the necessary change.  


As stated before, capitalization is important here so it’s pretty easy to pinpoint the exact string we need based on the original error message “Comment not found.”  


2hKw7DqaM7vx-gapoUoRtmlKZi_0Cywv2Y6ffVCMH49o1O2l-ixIPiqLAVidmESkBbVBwfLAG-83s22V__a57dGbMxNsGC7HZvpA57D7LQ54cSVE6ha7eG0QIiR2xZP8RQxCIXJd=s0


Select it now then hit the ‘Start Translating’ button in the upper right hand side of the screen.  


S-5xBGhc0rBSWad-UNw99QRG6z6B5Xldi3VxHME3ZZqvisFCKuVGHQGWAGoGCf7M9ODeM5ohfbtQC2gS5Ry1D8vNpxhdkzd2CqW9_Qs8VuQpcNPBEHuHWK0hLT-CuV8QeTV8FhBf=s0


A few more windows will appear that will assist us in the translation process. The top left window (1) is the current translation, in English.  Underneath it (2), is how that word has been translated in whichever language database you are currently in.  It’s in this window that we will actually type the change we want to make.  The bottom left (3) holds tags and other technical information associated with the word.  You will rarely have to make changes here.  The entire right hand side (4) works as a dictionary of sorts, making suggestions for translations based on what other people have used.  


In this situation, we already know how we need to make the change and it’s as simple as typing it in and hitting ‘Save Changes.’ 


F5QCZ6D7_D1kMgRE482DozNqpg4xKnDjH1h4Q8p80Cx5UWP_Q24UiTr4JVBnqw1Bk_Ke3v-Zvm8T6w3g5CK0i29gNhsXTsgz3NylCTZcyKFfzcUFmt_yLQXSG4fICENv2sg9MiXQ=s0


It’s important not to change the ‘1%s’ in this instance.  That works as a placeholder for the word in other translated strings.   For example:


xzwoMNtzyvJrgdyN2tCM-gI_Dvn0xFDEpGIkD3fG_YRzpt5LnpFibBrC-EXQW2wsWym2mVlTRBSMj2vt3NrROxSYxZ9eO1GAEhptPVMhf4z_X1Iks7itfe-0IxToBRr25w26CiLN=s0


In this example, the ‘1%s’ is where Commentaire would end up on a website using this translation, so the full string would be “Commentaire non trouvé.”  




Once you are satisfied with your translation, you can reach out to your CSM who can help schedule getting the new translations deployed for you.