Tools for the D7CX movement and helping Drupal 7 and modules get translated

Moshe Weitzman recently started the D7CX movement to rally people to get Drupal 7 contributed modules upgraded and released on time for the Drupal 7 release. This would be a great boon to the Drupal 7 release, which shapes up to be a huge improvement over Drupal 6 already. He also suggests a contributed module release manager who can help with (among other things) ensuring that tools are available to help people upgrade.

Me being the guy, who maintains modules important for the translation of Drupal interfaces, such as l10n_client, potx and l10n_server, I looked at this movement from my angle. While my modules are not among the highly popular top 40 modules Moshe highlights, these tools are used to translate them and reach many parts of the globe. So in part on Acquia sponsored time and my free time, I went ahead and ported both the Localization client and Translation template extractor to Drupal 7. Both had their own challenges. The client port is just a direct functionality port, so does not include real string context support yet (a feature new to Drupal 7). The template extractor however got full context support to match what Drupal 7 supports currently. It also got its coder_review integration updated. Both modules now have their 7.x-1.x development snapshots downloadable.

Thanks to these updates, I hope people working on the D7CX movement will not be in the dark about localization API changes and usage limitations of the new API. You can run the template extractor on your code or run the code review from Coder review to get error reports when the localization API was not properly used. While Coder review includes some rules on its own to test for some common errors, only using the actual tool translators use can tell you all the errors you can make while writing your code.

Future plans include backporting the Drupal 7 parsing support from the template extractor to Drupal 6 (which would be easy except a little API change required), so when integrated with the localization server, contexts would be properly stored. Which would require an update to the localization server too. The goal is to have a Localization server system which can be used to translate Drupal 7 core and modules, so translators can work on their part before the release too. Also, the localization client would pass on the context information too to the server, so people can keep using that to translate and share their work right away.

People keen on magic names can just refer to this effort as D7TX, the translator experience ;) Have fun using these tools, and as always report bugs and provide patches please!


tstoeckler's picture

Your link to the Coder module is broken.

While I'm at it: How far are the plans to have a central translation server on the infrastructure for the Drupal 7 release? That would really boost the contribution rate, I think. (I, for one, could contribute then, too ;) )

Gábor Hojtsy's picture

Thanks, link fixed.

The central server is hopefully not far. We have the Drupal instance set up and are developing code to do the data sync and then see how parsing of projects and releases run there.

Gartenheinz's picture

Hi Gabor, in the past I worked with Drupal 5 + 6. As I had many problems at that time with the system I began to work with Typo3 and other open source systems. Now I am thiniking about to return back to Drupal. Can you confirm that the handling with the actual version is much better than the older versions? Have you any experiences with the functionality of the translation modul or heard about it? (The missing translations were in the past also a problem for not native English speaker like me) It would be great to get some further input from you. Thanks in advance!!

Gábor Hojtsy's picture

Different people have different needs. Those who worked with the modules helped shape them to the form as they are today. If you did not find them suitable for you and did not attempt to collaborate on making them better for your needs, then it could be that they were not magically fixed for your needs. Only you can decide based on your own needs whether the tools became better for your goals.

Add new comment