Canonical Voices

Posts tagged with 'translations'

David Planella

As part of the Ubuntu App Developer Week, I just ran a live on-air session on how to internationalize your Ubuntu apps. Some of the participants on the live chat asked me if I could share the slides somewhere online.

So here they are for your viewing pleasure :) If you’ve got any questions on i18n or in Ubuntu app development in general, feel free to ask in the comments or ping me (dpm) on IRC.

The video

The slides

Enjoy!

The post Internationalizing your apps at the Ubuntu App Developer Week appeared first on David Planella.

Read more
David Planella

Human Touch-700px

It’s going to be one of the most exciting years in the history of Ubuntu. We’re seeing innovation and stunning work across the board, and a huge momentum and interest from OEMs and carriers to ship a phone with Ubuntu, with already a confirmed partner.

With our favourite OS expanding to yet another order of magnitude, every contribution is becoming even more important. And with phones shipping all over the globe, multilingual support and Ubuntu translators are going to be one of the keys to Ubuntu’s success.

In the same way you’ve helped us bring an excellent localized experience to the desktop throughout the years, we now need your help ensuring the phone reaches that level of excellence too. Once more, you can bring Ubuntu on phones to millions in their language.

To make it easier to focus on the most important parts, here’s a summary of the main Ubuntu components that can be translated in Launchpad, our collaborative translation tool.

And if you’re new to translating Ubuntu, you can also help! Check out our Translations Quickstart guide >

Unity and scopes

Unity is essentially Ubuntu’s UI, and version 8 is what is currently running on the phone and will ultimately run on all form factors once we achieve full convergence.

By translating Unity, the most visible user interface parts will appear in your language. Scopes are also part of Unity, and enable bringing content to users in a natural and organized way. The Click Update Manager is launched in the Applications scope when you install a new app.

Indicators

Indicators are another Unity technology that enables quick access to system settings that you access every day, such as networking, location, sound, etc., as well as the messaging menu. Translating indicators will localize their menus when you swipe from the top edge.

Core and system apps

You can think of core and system apps as being the same thing: a set the essential apps every user would expect preinstalled on their devices. Translating core apps, you’ll make it possible to have a richer localized experience with clock, camera, weather, calculator and more.

Testing translations

With the addition of multiple supported form factors, testing is important not only to ensure that translations are correct, but also that they fit in UI components of different widths. So please double-check that long texts fit in in the smaller factors such as the phone.

Translation testing on a running phone or on the emulator deserves an article of its own, so please stay tuned for the next update coming soon.

Happy translating!

Image: Human touch, by David Planella, under a CC BY-SA 2.0 license

The post Make Ubuntu speak your language appeared first on David Planella.

Read more
pitti

You can now start translating Ubuntu Saucy on Launchpad.

Read more
David Planella

qreator-square

We’re preparing a new release of Qreator, the QR code creator for Ubuntu, to be published in the next few days.

This release adds a few new strings and quite a bunch of new features, including a new design, new QR codes, and the ability to edit the QR codes you create.

Kudos to everyone who has contributed translations in the past: thanks to you the development release Qreator is already fully translated in 10 languages. There are other 26 languages that are nearly completed and are only missing the newly-added strings. A very special mention goes also to the unstoppable Stefan Schwarzburg, whose contributions have been invaluable in putting the upcoming release together.

If you find it useful, please help translating and making it available in your language here:

Translate Qreator!

To get more context for the translation, you can also install the preview package. It’s for Ubuntu 13.04 only, but if someone needs an older version, let me know and I can create it too.

Thanks!

The post Upcoming Qreator release – call for translations appeared first on David Planella.

Read more
David Planella

I’m thrilled to announce the availability of the Ubuntu 12.04 Online Tour for local community teams to localize and use on their websites. The tour has been the result of the stunning work done by Ant Dillon from the Canonical Web Design Team and should provide a web-based first impression of Ubuntu to new users, now in their language.

It’s a great opportunity to showcase Ubuntu to your local community to celebrate release day tomorrow.

Where is it?

How can I use it for my LoCo website?

First of all, you’ll need to get set up with the right tools before you start.

Getting set up:

  • Bazaar revision control system Install bzr
  • Polib library Install polib
  • Terminal. You’ll need to run the commands below on a terminal. Simply press Ctrl+Alt+T to fire up a new terminal console.

If you’ve already translated the tour in Launchpad, you can build a localized version in 3 easy steps:

1. Get the code:

bzr branch lp:ubuntu-online-tour/12.04

2. Build the localized tour:

cd 12.04
cd translate-html/bin
./translate-html -t

3. Deploy the tour:

  • This will vary depending on your setup, so simply make sure you copy the chromeless, css, img, js, pie and videos folders along with the videoplayer.swf file to your site. In addition, you will need the en folder and the folder for your language created in the previous step.

If you haven’t finished the translation for your language in Launchpad, you will need to complete the corresponding PO file before you run step 2. Just ask on the Ubuntu translators mailing list or on Launchpad in case you need help or are not familiar with PO files.

For any issues, suggestions or enhancement, use the Online Tour’s Launchpad project to report bugs or submit improvements.

Enjoy!

The post Get the Ubuntu Online Tour on your LoCo site appeared first on David Planella.

Read more
David Planella


If you follow the Ubuntu channels, and unless you’ve been living under a rock, you’ll have noticed that this coming weekend we’re organizing the Ubuntu Global Jam, a worldwide event where Ubuntu local community teams (LoCos) join in a get-together fest to have some fun while improving Ubuntu.

As we’re ramping up to a Long Term Support release, this is a particularly important UGJ and we need all hands on deck to ensure that it does not only meet, but exceeds the high quality standard of previous Ubuntu LTS releases. This is another article in the series of blog posts showcasing the events our community is organizing, brought to you by Rafael Carreras, from the Ubuntu Catalan LoCo team.

Tell us a bit about your LoCo team

Our LoCo is language-oriented, and by language I mean Catalan (a Romanic one), not Perl or Python. In fact, the Catalan LoCo Team was the first language-oriented LoCo to be approved back in 2007. We manage our day-to-day in three mailing lists: technical doubts, team work and translations and do IRC meetings twice a month. We organise Ubuntu Global Jam events every 6 months (with some minor absences) and of course great release parties every 6 months along with some other little ones in between.

What kind of event are you organizing for this Ubuntu Global Jam?

As always, we will translate some new packages, discuss translation items, a bug triage session, some install release work and even evangelization to some passing people, as we organise UGJ this time in a civic centre.

Is this the first UGJ event you’re organizing?

No, it’s not, we are running UGJs since the first one and I think we only missed last one.

How do you think UGJ events help the Ubuntu community and Ubuntu?

It’s a great opportunity for meeting people you only know by email or chat. Also, as we sit down together, there is little room for procrastination. Well, more or less, anyway.

Why do you think Jono Bacon always features pictures of the Catalan team when announcing the UGJ? Are we the most good-looking LoCo?

Yeah, definitely. It must be that.

Join the party by registering your event at the Ubuntu LoCo Portal!

p1010458 by Alex Muntada

The post Ubuntu Global Jam events: jamming Catalan style appeared first on David Planella.

Read more
Daniel Holbach

We have achieved a huge milestone in the development community. For years we wanted translatable packaging and development documentation. It’s there. If you head to http://developer.ubuntu.com/packaging/ you can see the following:


The Ubuntu Packaging Guide (Spanish) – would you like to learn how to package or become an Ubuntu Developer? Here’s a comprehensive, topic-base guide that explores and describes the main concepts of packaging. It is available as


This is absolutely awesome. From now on we will be able to add languages and have up-to-date Packaging and Development docs available whenever they are complete enough.

This work was brought to you by many people who worked very hard to get all the bits right, both on the packaging, integration, beautification and translations sides. You all know who you are. Be proud of your work. This will ease the steps of many people into helping out with Ubuntu!

As always this is ongoing work and the great thing is, you can help out:

This makes me a very happy man and it’s great we finally got there. Now let’s get all the other translations up to scratch! :-D

Read more
David Planella

I am pleased to announce that our current development release, Ubuntu Precise, is now open for translation:

Translate Ubuntu!

Translate Ubuntu Oneiric!

Some additional information that will be useful for translators:

  • Translation schedule. Remember that according to the release schedule translatable messages might be subject to change until the User Interface Freeze on the week of the 23rd of February.
  • Language packs. During the development cycle, language packs containing translations will be released twice per week except for the freeze periods. This will allow users and translators to quickly see and test the results of translations.
  • Test and report bugs. If you notice any issues (e.g. untranslated strings or applications), do check with the translation team for your language first. If you think it is a genuine bug, please report it.
  • Learn more. Learn how to start translating Ubuntu and enable millions to use it in their language.

Ubuntu 12.04 will be a Long Term Support release, so let’s rally around translations to provide the best translated OS around and go over the mark of nearly 40 languages in which Ubuntu is fully translated!

open image by loop_oh – License: CC by-nd 2.0

Read more
David Planella

Unless you’ve been living under a rock, you’ll have noticed that this coming weekend we’re organizing the Ubuntu Global Jam, a worldwide event where Ubuntu local community teams (LoCos) join in a get-together fest to have some fun while improving Ubuntu. As we’re ramping up to a Long Term Support release, this is a particularly important UGJ and we need every hand on deck to ensure it not only meets but exceeds the standard of previous Ubuntu LTS releases. This is another article in the series of blog posts showcasing the events our community is organizing, brought to you by Andrej Znidarsic, from the Ubuntu Slovenian LoCo team.

Tell us a bit about your LoCo team

The Slovenian Ubuntu LoCo team was founded in 2005 and we try to spread Ubuntu mainly by translation work and help and support to Slovenian Ubuntu users who don’t have the means (either language or technical knowledger barrier) to solve problems themselves. Slovenian has been among the top translated languages for a while, which is quite impressive considering there are only 2 million native speakers and we don’t have a big pool to get translators from. We operate an IRC channel, website, forum, Facebook, Twitter and Google+ page. Offline we meet at monthly Ubuntu hours and we do Global Jams :)

What kind of event are you organizing for the upcoming Ubuntu Global Jam (UGJ)?

We are mostly going to focus on translations. This has traditionally been our strong point, as we exceeded 90% translation of Ubuntu about 2 years ago. Now we are focusing on translation quality and consistency. This time we want to put extra polish into translation for the LTS. In addition to that, a couple of people will focus on creating videos explaining how to perform basic tasks in Ubuntu (installing Ubuntu, Installing/removing software, Unity “tricks”…) and how to contribute to Ubuntu (how to start translating in Launchpad, how to report a bug, common translation mistakes in Slovenian). We will also be testdriving Ubuntu 12.04 LTS and report bugs we find on the way. More info can be found in our Ubuntu Global Jam announcement (in Slovenian only).

Is this the first UGJ event you’re organizing?

Nope. We have already organized 3 Ubuntu Global Jams. The first one was online only and the last two have been organized offline. We are quite lucky to have Kiberpipa, which has kindly been providing us a great venue with a lot of space and internet access. So we mostly need to do marketing of the event, coordinate transport and grab some pizzas :).

How do you think UGJ events help the Ubuntu community and Ubuntu?

The results of previous UGJs have typically meant about 4000-5000 translated messages for us which is amazing for one day. Good translation coverage helps to grow Ubuntu usage in Slovenia. We have also managed to report a couple of bugs which improved overall quality. More importantly, in average about 15 people attend our global jam, so we meet and hang out with people we usually only see online. This vastly improves team cohesiveness. In addition there are always some newcomers, which is fantastic for community growth. Also, it’s fun :).

The post Upcoming Ubuntu Global Jam events: here’s how the Slovenian team rolls appeared first on David Planella.

Read more
David Planella

Just a heads up that in about 50 minutes, and as part of the Ubuntu Open Week, I’ll be talking again, this time about how to contribute translating Ubuntu.

So if you’re either interested in learning how to do it, or if you want to ask any questions, join me on IRC in the #ubuntu-classroom channel on Freenode.

See you there!

The post Upcoming Ubuntu Open Week session – how to contribute translating Ubuntu appeared first on David Planella.

Read more
Michael Hall

Hello Unity is now open for translations!

Please help me make this technology showcase is available to application developers in your native language.  Translations are done through Launchpad, and will be built into the Hello Unity package.

Read more
pitti

Suppose you install Ubuntu and select a language other than English (it’s known to happen!). This will install the general and the GNOME language packs, translated LibreOffice help, and so on. Now, install a KDE package or GIMP. You’ll notice that the new application is not translated and has no help available for your language. The next time you open the language selector from control-center it would tell you that you miss some language support and offer to install it, but this has been pretty indiscoverable, and we really can do better.

Today’s language-selector upload provides an aptdaemon plugin which automatically marks corresponding language support packages (translated help, dictionaries, spell checker modules, and translations themselves) for installation for any newly installed package, for all languages that are configured on your system.

For example, I have German and English locales on my system, and no KDE packages. Before, installing GIMP got me just that:

$ aptdcon -i gimp
The following NEW package will be installed (1):
gimp

Now it automatically installs the corresponding localized help:


$ aptdcon -i gimp
The following NEW packages will be installed (4):
gimp gimp-help-common gimp-help-de gimp-help-en

I am using aptdcon here as it points out the effect better than software-center doing all this in the background, but both use aptdaemon, so the effect will be the same.

Likewise, installing the first KDE-ish package will automatically install the KDE language packs:


$ aptdcon -i kate
The following NEW packages will be installed (71):
kate kate-data [...] kdelibs5-data [...] language-pack-kde-de language-pack-kde-en [...]

This is now possible because I rewrote the check-language-support logic from scratch; the old code was very slow, hard to read and a nightmare to maintain, and also depended on a lot of data files. The new code is very fast (figuring out all missing language support packages for all installed packages for all available locales takes 8 ms on my system), and has full test coverage.

While the check-language-support program still works (I rewrote it using the new API), it is easier and probably a lot faster to just use the new API now, e. g. in our Ubiquity installer.

Say goodbye to this 2.5 year old bug!

Read more
Matthew Revell

Launchpad translations will be unavailable for around one hour, starting 10.00 UTC, on Tuesday 2011-11-29, to allow us to open the translations for the next Ubuntu release, Precise Pangolin (to be 12.04 LTS).

We tried this last week but hit some problems. Rather than prolong the disruption, we decided to bring translations back online and delay the opening of Precise’s translations until after we’d fixed the issue.

While we’re opening Precise’s translations, Launchpad will not be importing translation files and the web interface for making and reviewing translations will be unavailable. This includes imports for translation uploads, but also imports from Bazaar branches.

Once this is done, imports will resume normally and any backlog should be processed quickly after that.

Read more
Matthew Revell

Launchpad translations will be unavailable for around one hour, starting 10.00 UTC, on Tuesday 2011-11-22.

During this time Launchpad will not be importing translation files and the web interface for making and reviewing translations will be unavailable. This includes imports for translation uploads, but also imports from Bazaar branches.

We are suspending the service temporarily to allow us to set up translations for the next Ubuntu release, Precise Pangolin (to be 12.04 LTS). Once this is done, imports will resume normally and any backlog should be processed quickly after that.

Read more
David

So now it’s the turn for the translations post!

For all of you interested in helping and being part of the effort of making Ubuntu available in any language, here’s a quick list with an overview of the Ubuntu Developer Summit sessions we’ve got in store this week.

Remember you can register your interest in sessions you want to attend or keep up to date with by using the Subscribe link on each session’s blueprint. The links in the list below will take you to the blueprints used to define the specifications for each feature or goal. You can also check out the full UDS schedule.

So, without further ado, here’s the list of translations sessions:

See you all there!


Read more
David

Just a heads up that this week is Ubuntu Open Week!

Ubuntu Open Week is a series of online workshops where you can:

  • Learn about the Ubuntu landscape
  • Talk to some of the key developers from the Ubuntu project
  • Find out about the Community and its relationship with Canonical
  • Participate in an open Q&A with Mark Shuttleworth, the founder of Ubuntu. (*)

I’ll be running two sessions for everyone wanting to learn more about either translating Ubuntu or writing apps for Ubuntu (or both!):

  • WHERE: #ubuntu-classroom IRC channel on the Freenode network
  • WHAT, WHEN:
    • 14:00 UTC How to contribute translating Ubuntu – learn how to translate Ubuntu in your language
    • 16:00 UTC Writing your first Ubuntu app – a very gentle introduction to writing a simple “Ubuntu rocks!” app, and explaining its lifecycle from creation to publication, with tips along the way.

(*) Mark is on vacation this week, but we’ll schedule a separate IRC session with him, stay tuned!


Read more
David

Quoting the Ubuntu philosophy, one of our  core values is to provide the ability for every computer user to use Ubuntu in their language of choice. This in turn is made possible by an army of volunteer translators, who throughout the development cycle and beyond, tirelessly put their translation skills to work in an outstanding feat to make a full operating system accessible to millions.

As we’re ramping up to the Ubuntu 11.10 release in a few day’s time, there’s another important milestone for ensuring Ubuntu is available in as many languages as possible: the translations deadline on the 6th of October.

Up until now, and considering the 80% coverage cut-off, Ubuntu 11.10, the Oneiric Ocelot, is translated in 38 languages, lead by the Slovenian team’s heroic effort of becoming the #1 team in the ranking.

Making Oneiric the best translated Ubuntu release ever

Last cycle Ubuntu was fully translated in 43 languages. I think this cycle we should be able to aim for more, and I’m confident that with everyone’s help we could reach the 50 fully translated languages mark.

There are a few languages that are very close to reaching the 80% translation level:

Basque, Latvian, Hebrew, Uyghur, Albanian, Estonian, Bengali, Punjabi

And others which might need an extra push to climb up the 60% to 70% mark to reach 80%:

Serbian Latin, Hindi, Indonesian, Tamil, Thai, Telugu, Slovak, Arabic, Belarusian, Gujarati

So if you speak any of these or other languages, here’s what you can do to help yours reach the 80% level and make it to the list of supported languages:

  1. Go to the Ubuntu 11.10 translation statistics page
  2. Click on your language to find out which packages need attention
  3. Find those packages in the list of Ubuntu translations
  4. Translate them!
    • You’ll want to contact the translation team for your language or check out their documentation to ensure you’re using a consistent terminology
    • They’ll also help you get started with translations and answer your questions

Note: the translations statistics are updated daily at 12:00 UTC.

More on translations

And now for something different

If there is any web guru out there who’d like to lend a hand, help with the CSS and the JS code for the stats page would be greatly appreciated.

One cool thing I’d like to do for instance is for translators to, once they’ve clicked on their language, be able to click on a package that needs attention and be taken to the corresponding Launchpad Translations page. This only needs the corresponding rows in the table to be linkified, which is something I’ve been struggling with and I’m sure would be a five-minute job for an experienced web developer.

So if you want to help translators with your web skills, drop a comment here or feel free to submit a bzr branch. Thanks!

Looking forward to the best translated Ubuntu release ever! :-)


Read more
Martin Pool

Continuing on from our earlier work of sending less but better mail and making it faster to import i18n translation templates: Launchpad will no longer send mail when it successfully imports a template. You can see in the web ui when the template was last imported, and you will still get mail if there’s a problem.

I could hardly put it better than Riddell:

Danilo asked for my reasoning. My reasoning is that pointless e-mails are a pain.

Big pile of junk mail from Verizon

(I hope we’ll eventually have a more structured notification model, that will let you choose to see some notifications by mail and others in the web ui. One step at a time.)

Read more
Jeroen T. Vermeulen

If you use Launchpad’s Translations feature, then as of today, you may notice a new kind of error for uploads in your translations import queue. Look for the “info” icon next to your upload’s status, and click to unfold. The error message says “Can’t auto-approve upload: it’s not clear what template it belongs to.”

Sample

You may find this annoying, and as the person responsible, let me apologize. I hope when I’m done explaining, it won’t seem so bad.

To the right is an example of the error.  Click it to see more.

Where does the error come from? Actually it’s a problem that’s always been there, but instead of telling you about it, we Launchpad developers tried to hide the complexity from you and take care of it all ourselves. And we weren’t keeping up. Some of your uploaded translations would just sit in the queue forever, with status Needs Review, for no clear reason. All that’s changing now is that Launchpad will tell you when this happens, so that you can deal with it without waiting for us.

Why do some translations sit in the queue forever?

Every translation you make in Launchpad has to go into a specific template and language. Usually it’s obvious where you want your translation to go: when you translate in Launchpad’s web UI, you’re already on the page for a specific template and language. If you have upload privileges for the project and language, you can follow the upload link from that same translation page and again it’s obvious which template you’re translating and to what language. If you always upload the same file with exactly the same name and path, new uploads of that file go to the same place as before. But what if you upload a new file from the release-series page, or the translation comes in from a Bazaar branch or an automated build?

Then it’s up to a script we call the Translations Import Queue Gardener. The Gardener periodically scans all waiting uploads—the ones marked Needs Review—and tries more advanced ways of matching them up with known templates and languages. When it finds a match, it approves the upload’s import to the template and language it has found.

One of the Gardener’s most important tools is a template’s ”translation domain.” This is a simple name; no slashes or weird characters allowed. Launchpad figures out a template’s domain when you first import the template, based on its directory path. In principle a template’s domain should identify the template uniquely on the end-user’s system, but Launchpad isn’t as strict about it. It just assumes that the domain name is tied to the template file’s path within a project’s source tree. You probably shouldn’t, but you can give your project two templates with the same domain if you want.

When you upload a translation, the Gardener tries to figure out its translation domain based on the file’s path, just like what happened when the template was created. The Gardener looks for a template with the right domain in the same release series. If it finds one, presto: it’s got the template that the upload is meant for. If not, then the Gardener tries a few other things and if nothing works, simply keeps the upload on the queue.

So the entry doesn’t get imported, but usually the Gardener can’t give any single reason: all it knows is that it tried many ways of matching the file to a template and none of them worked. Maybe it’s an error; maybe it’s just a matter of waiting for the right template to be created.

So what’s changed?

The new error message is about “approval conflicts.” You’ll see it when there is ”more than one” matching template for your upload. This can happen because your project’s directory structure is unusual and Launchpad can’t extract a meaningful domain from it. Or a template’s domain may have been changed, or an old deactivated template is reactivated when a new one has already taken its place.

Whatever the cause, the new error message tells you that this has happened, and what the matching templates are. It’s up to you to decide what needs to be done about it:

  • update one of the templates’ domains, or
  • deactivate an obsolete template, or
  • move a file, or
  • re-upload your file to a specific template, or
  • re-upload your file with a different name, or
  • upload translations as a tarball so that Launchpad sees their full directory paths.

How much you can do, of course, depends on the permisisons you have. Only the project’s owners (and Launchpad’s administrators) can deactivate templates or change their domains. But you can always delete your own uploads if you want to upload your file differently: on the import-queue page, click on Needs Review and select Deleted instead.

Let us know

There’s still plenty more we’d like to do to make imports easier and more efficient, if we can find the time. But I hope this small change will make your life a little easier.

Is this error message working for you? Is it helpful? Are you seeing a lot of these errors, or none at all where you were expecting them? Is the explanation unclear? Do you see something happen for lots of people that we could fix in the same way? Please get in touch:

  • Contact danilos or jtv on IRC, in #launchpad on Freenode.
  • Find or file a bug if it’s broken.

Tips

  • If you want to become more familiar with the translations import queue, check out the global queue to see all uploads in Launchpad. The version you see there is just a copy on a test server, so don’t be afraid to play with it.
  • By the way, did you know about our test servers? We test our changes on staging and qastaging servers before they go live. You can try out most of Launchpad’s features there. Look for the grey “demo” text in the background. They get restored to a fresh copy of the real Launchpad once a week.
  • Tired of creating translations tarballs and uploading them to your project? Automate it all with Bazaar integration.
  • You want Bazaar integration but your code is hosted outside Launchpad and/or in a different revision control system? You can tell Launchpad to mirror a branch from elsewhere. Then you can import translations from the mirrored copy.
  • We like transparency! If you’re interested in the engineering details of this change, it’s all online.
  • Read more
Jonathan Riddell

Bug 83941 “bzr doesn’t speak my tongue” has been closed: bzr core can now be translated. (The qbzr and bzr-explorer guis have been internationalized for a couple of years.) If you want to help bring bzr to those who prefer to work in non-English languages please help translate at Launchpad.

The translation will involve quite a bit of specialist language (what is French for “colocated branch”?) and I expect there are strings yet that need to be added to the translation file. I also need to look at translations for plugins.  Please send issues to either the Bazaar mailing list or as bugs on bzr on Launchpad.

Philippe Lhoste wrote a while ago about the issues of translating DVCS terminology.

Read more