June 9, 2006

How do I translate BlogBridge?

Filed under: Development — Aleksey Gureiev on 9:32 am

General Information

Currently BlogBridge comes in two languages that we personally maintain: English and Russian. However, we encourage and support everyone who wishes to contribute the translation in any other language. By doing so, you help your fellow citizens not knowing any of the two standard languages to enjoy our product.

You can become a maintainer of the translation and provide the updates as we add new features, or you can provide only up-to-date version and let someone else update it later. Both ways hold immense value to us and our users, so don’t worry if you don’t have time for continued support. Help us by doing that you really can and enjoy what you do!

What is translatable?

  • every message (except new functions in weekly builds)
  • command names
  • help screens
  • tool tips
  • everything else

How to translate?

We are constantly looking for ways to make the translation of the application easier and accessible. This document describes an improved and simplified way of translation compared to what it was before, requiring to download and install BlogBridge from the source code.

With the powerful plug-in architecture you now can package a translation as an external plug-in package and attach it to the application to get the language you want. Yes, it’s that easy.

Now…

How to create a translation?

  1. Find blogbridge.jar that belongs to the BlogBridge application on your disk
  2. Copy blogbridge.jar to blogbridge.zip and extract these two files:
    • Action.properties — commands, help strings, tool-tips
    • Strings.properties — dialog boxes, alerts, other text messages
  3. Now download and start Attesoro (http://attesoro.org/download.html) translation tool.
  4. Open the Action.properties file you extracted in the step 2 with Attesoro and create a new locale with Edit / Locale / New… (choose your language and the country)
  5. Select it in the tree in the top-left corner of the screen. You can see that all keys in the list below became blue, which means that none of them have translation for the selected language / locale. Your goal now is to walk through as many “.label”, “.helptext” and “.tooltip” keys as you can / wish and provide the translation to the messages they show in English.
  6. After you finished with Actions, save the results and continue with Strings.properties. The keys in that bundle have no suffixes and you can translate as many of them as you like.

Remember:

  • In command labels, you can use ampersand (&) to indicate a character to underline
  • If you need a “…” character, use “\u2026″ instead of three periods
  • Note that sometimes it isn’t clear how a message should be translated and what the correct tense is. In this case you’d better find where it’s shown in the application and see how it would sound naturally.
  • Keep in mind that some terms “feed”, “reading list”, “guide” may need no translation. If your language has no equivalents, it’s better to leave the original spelling for them.

When you save your work in Attesoro, it creates new files with the same name, but with language suffixes (like Actions_ru.properties for Russian). These are the files you will need to distribute.

How to see the results?

So you have your translations in two files “Action_xx_yy.properties” and “Strings_xx_yy.properties”. Now you can check the results in BlogBridge. For this:

  1. Find the working folder of BlogBridge (/.bb/final or /.bb/weekly depending on the version you use)
  2. Create “mytranslation” under the “plugins” folder there.
  3. Copy your translation files inside the new folder.
  4. Create the “package.xml” with the following contents:
    <package name="<language> Translation"
        description="Translates BlogBridge into <language>"
        version="1.0"
        author="<your name>"
        email="<your address>">
    
        <actions bundle="Action_xx_yy"
            type="Commands in <language>"/>
        <strings bundle="Strings_xx_yy"
            type="Text messages in <language>"/>
    </package>
    

    Note: You need to replace <language>, <your name>, <your address> and bundle names with your specific values.

  5. Now you can start BlogBridge, open the Plug-ins manager, tick your plug-in package and restart to make it active.
  6. Upon restart, you should see the changes in text messages.

Note: Once you enabled the plug-in, you need to restart BlogBridge only once every time you change something in the translation files to let the application grab the changes.

What and where to send?

At this stage you have two translation files, the package.xml file and complete satisfaction with the results. Now how to prepare the package for distribution:

  1. Check that package.xml has all info about you and the package.
  2. Check the spelling of your translation. I know, I know, but I still find many errors in my spelling there in the files.
  3. Create a ZIP archive with your translation. There should be just three files, no folders, no other stuff. It’s the easiest way to make it, believe me.
  4. Try your new package by placing it in the “plugins” folder. Don’t forget to move the “mytranslation” folder out of the “plugins” to let BB find the right package.

Are you satisfied with the results? Send this ZIP package to us for review and publication!

  • del.icio.us
  • digg
  • Netscape
  • Reddit
  • Slashdot
  • StumbleUpon
  • Furl

25 Comments »

  1. is there an easier way to translate?

    Comment by xorms — July 14, 2006 @ 11:05 pm

  2. What’s the hardest part to you? Perhaps we could automate something, but generally all steps are necessary.

    Comment by Aleksey Gureev — July 15, 2006 @ 3:53 am

  3. I have some questions and suggestions.

    * It would be good to be able to select different language for BlogBridge client then one used by system.

    * What about other properties files found in same directory with Action.properties and Strings.properties? Do they need to be translated?

    * You where saying that Java can’t handle national characters and bundle file should be converted to ASCII, but isn’t it should be stored in unicode?

    Comment by edufin — August 8, 2006 @ 10:46 am

  4. Hi edufin,

    Thanks for you questions and suggestions! Let me comment your points.

    * It would be good to be able to select different language for BlogBridge client then one used by system.

    Why one whould need this? I assume that there are lots of multi-lingual users, but I also assume that they have the preferred language set as default on their system.

    * What about other properties files found in same directory with Action.properties and Strings.properties? Do they need to be translated?

    No, they don’t need to be translated. The strings in other resource files (if any) are invisible to the user.

    * You where saying that Java can’t handle national characters and bundle file should be converted to ASCII, but isn’t it should be stored in unicode?

    Correct. They are stored in Unicode, but not directly in UTF, but encoded in ASCII, like this:

    \u041f\u043e\u043b\u043d\u043e

    which is Russian translation of ‘Full’.

    I noticed that I didn’t mention that IntelliJ IDEA shows translated property files transparently, which means that you type the text in the native language and it automagically encodes the text in proper ASCII-unicode. (just a tip)

    Comment by Aleksey Gureev — August 8, 2006 @ 2:42 pm

  5. I still want to return to the possibility to select different language. Reason I’m asking it is that for example in Finland when you buy new computer, it comes with preinstalled finnish version of Windows. While I’m using finnish version of Windows, I still prefer to use softwares in english. Of cause there isn’t finnish translation available for BlogBridge yet, but still it would be good to be able to switch languages or at least be able to change it in properties file.

    Comment by edufin — August 9, 2006 @ 8:55 am

  6. Makes sense, though the priority isn’t very high (sorry). I’m entering the ticket in our issues tracker and probably it will be picked up during the next cosmetic changes round. Thanks for the suggestion and details!

    Comment by Aleksey Gureev — August 9, 2006 @ 9:11 am

  7. any other ways of translating

    Comment by bob gardner — February 27, 2007 @ 10:21 am

  8. Well, not at the moment. What looks unclear / tricky? Maybe we could figure out some way that works better for *you*?

    Thanks for your interest!

    Comment by Aleksey Gureev — February 27, 2007 @ 10:44 am

  9. Next week I will be preparing an updated translation tutorial which is basing on our new plugins framework. The process is expected to be greatly simplified.

    Comment by Aleksey Gureev — June 14, 2007 @ 2:25 am

  10. This translation page is updated now. Please give me your questions and start sending the contributions already. ;)

    Comment by Aleksey Gureev — July 6, 2007 @ 11:52 am

  11. I don’t understand the question.

    Comment by Aleksey Gureev — July 9, 2007 @ 7:49 am

  12. Thanks for the translation.

    Comment by Andy Samberg — November 19, 2007 @ 8:11 am

  13. Great idea attempting to toranslate it into other languages. If it could only be easier.

    Comment by JW — December 29, 2007 @ 6:48 am

  14. I really appreciate this post; it has helped me out quite a bit.

    Comment by Vladlena Nyzhnik — April 26, 2008 @ 11:38 am

  15. I like your feeds reader a lot, cause it interpret correctly Atom feeds in my language (Spanish). I would like to translate to spanish your program.

    Could I collaborate?

    Tnank you

    Comment by Rafael — June 5, 2008 @ 8:31 am

  16. Rafael, you are always welcome. Please read the explanations on this page and let us (support@blogbridge.com) know if you have any questions. We are very open and ready to provide any help.

    Thank you!

    Comment by Aleksey Gureiev — June 5, 2008 @ 8:42 am

  17. I am working on a german translation. Anybody else?

    Comment by Klaus Ondrich — September 29, 2008 @ 5:22 am

  18. I’m still working on a french translation

    Anyone else ?

    Comment by Robert Jobin — December 22, 2008 @ 12:27 pm

  19. I’m using BlogBridge for security reasons and rely on receiving posts from various blogs to ensure we are up-to-date in our server env at our main site in Switzerland. So far your product is a real mean way of being informed. Cool.
    Our clients here in Switzerland (this includes my PC) are installed using the English version of Windows. Then a German overlay is installed to provide the normal users with the German menues and stuff.
    Being a techie I prefer to use everything in English. Reason: All error messages and solutions are normally documented in English. Any my second native language is English (Born and bred in U.K.).
    With the newest release of BlogBridge the interface has switched to German which I find pretty ugly. I have the same opinion as the Finnish guy further up: Would be cool to be able to swith the language back to English.

    Cheers,

    John

    Comment by John — January 8, 2009 @ 7:12 am

  20. John, we received more feedback on this and are going to have “Always use English” flag in advanced options in the next BB version (6.6).

    For the discussion and the workaround, please refer to the forum page: http://forum.blogbridge.com/viewtopic.php?id=1398

    Thanks for the feedback!

    Comment by Aleksey Gureiev — January 8, 2009 @ 8:05 am

  21. @Robert Jobin

    I am actually!

    As you didn’t submitted your blog/site nor your email I hope you will see this message to be coordinate.

    Contact me through my blog please!

    See you

    Comment by Valentin Jacquemin — February 19, 2009 @ 5:25 pm

  22. “Very informative post - I hope there’s even more.

    I’m also interested, what is the theme have you installed on this site? It’s amazing and I’d love to know where I can get a copy.”

    Comment by ffxi gil — February 26, 2009 @ 6:52 pm

  23. I found this program complete and very useful, so I want to help for translate it in italian.
    How can I send you my work?
    How you keep me updated?
    please let meknow
    regards
    danilo

    Comment by Danilo — August 29, 2009 @ 1:51 am

  24. Is blog bridge only a translation tool or does it do anything more too? because there are a lot of translation tools available but they do not provide any service than translation

    Comment by mitchell ness jackets — January 17, 2010 @ 12:30 am

  25. Is it a translation tool? can i use it to translate web-sites? we plan to translate our web-site translation studio into many languages, will the tool manage unicodes?

    Comment by Hanna Sles — November 16, 2010 @ 4:58 am

RSS feed for comments on this post.

Leave a comment

Powered by WordPress