[Bug 1181183] Re: Add support for the Ubuntu SDK apps to dh_translations

Olivier Tilloy olivier.tilloy at canonical.com
Tue May 21 11:43:05 UTC 2013


> Is the i18n.tr() call Ubuntu specific, or does it apply to all QML
> apps? In the latter case, it seems easier to just check if the
> package has any *.qml files, and activate the xgettext call based on
> this?

The i18n.tr() call is specific to the Ubuntu SDK, the generic
translation mechanism exposed by QML uses qsTr() (see http://qt-
project.org/doc/qt-5.0/qtquick/qtquick-internationalization.html). So
the mere presence of QML files is not enough to detect the use of
i18n.tr() (although of course we strongly encourage application
developers to use the Ubuntu SDK, as the Qt translation mechanism
doesn’t integrate with Launchpad translations).


> But I guess that's not generally sufficient, as Ubuntu SDK (or QML
> apps in general) might also have C++ files which use the standard
> _() convention?

Indeed some applications have C++ code, and potentially translatable strings in there.
At the moment the Ubuntu SDK doesn’t have a -dev package that exposes its headers (not sure whether that’s a bug or by design), and as a consequence strings in C++ code have to be translated using plain *gettext() calls, not using UbuntuI18n::tr().

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to pkgbinarymangler in Ubuntu.
https://bugs.launchpad.net/bugs/1181183

Title:
  Add support for the Ubuntu SDK apps to dh_translations

Status in “pkgbinarymangler” package in Ubuntu:
  Incomplete

Bug description:
  dh_translations, when it builds a POT file from the source files, invokes intltool-update, which in turn invokes xgettext to extract the translatable strings from the source files.
  By default, xgettext looks for a set of predefined keywords to identify translatable strings.
  This set of predefined keywords doesn’t include "i18n.tr", which is the function used in QML files that use the Ubuntu SDK.
  As a result, no strings are found, and no POT file is generated.

  Ideally, dh_translations should support passing (arbitrary?) extra
  options to intltool-update/xgettext. Or at least extend the default
  list of keywords to support the apps written with the Ubuntu SDK.

  ProblemType: Bug
  DistroRelease: Ubuntu 13.04
  Package: dh-translations 117
  ProcVersionSignature: Ubuntu 3.8.0-21.32-generic 3.8.8
  Uname: Linux 3.8.0-21-generic x86_64
  NonfreeKernelModules: nvidia wl
  ApportVersion: 2.9.2-0ubuntu8
  Architecture: amd64
  CheckboxSubmission: 2c7995ffdf051a6d0adf7ab2c7be5ba9
  CheckboxSystem: 7e42599bda39ea7ff8b528272b6ef52b
  Date: Fri May 17 12:27:40 2013
  EcryptfsInUse: Yes
  InstallationDate: Installed on 2013-03-26 (51 days ago)
  InstallationMedia: Ubuntu 13.04 "Raring Ringtail" - Alpha amd64+mac (20130326)
  MarkForUpload: True
  PackageArchitecture: all
  SourcePackage: pkgbinarymangler
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/pkgbinarymangler/+bug/1181183/+subscriptions




More information about the foundations-bugs mailing list