Frameworks/Epics/KF5.0 Release Preparation/l10n
Common tasks
Status | Task | Coordination | |
---|---|---|---|
DONE | Decide where to place Messages.sh. Answer: src/ by default | ||
TO DO | Check the release scripts to ensure they include the .po or .ts files as well as the matching CMake code to build and install them. | <{{{3}}}> |
KI18n-based frameworks
Framework list:
- frameworkintegration
- kactivities
- kcmutils
- kconfigwidgets
- kde4support
- kdesu
- kdoctools (Only if SIMPLE_XSLT is not defined => Should we care?)
- kdeclarative
- kfileaudiopreview
- khtml
- ki18n
- kiconthemes
- kinit
- kio
- kjsembed
- knewstuff
- knotifyconfig
- kparts
- kpty
- kross
- krunner
- kservice
- ktexteditor
- ktextwidgets
- kunitconversion
- kwallet
- kxmlgui
- plasma-framework
Status
Status | Task | Coordination | |
---|---|---|---|
DONE | Add src/Messages.sh scripts | ||
IN PROGRESS | Review existing Messages.sh scripts. Check for wrong names such as catalogs with '4' suffix, or catalogs whose name would clash with an existing KDE4 library. | ||
TO DO | Make sure translations are loaded, meaning TRANSLATION_DOMAIN is set. This could be done as a -D switch by the build system. | <{{{3}}}> | |
TO DO | Integrate translation compilation code | <{{{3}}}> |
Messages.sh files to review:
- kactivities
- kde4support (conflicts with multiple .pot from kde4 kdelibs)
- kio (conflicts with kde4 kpasswdserver.pot)
- krunner
- plasma-framework
- kdesu (conflicts with kde4 kdesud.pot)
Qt-based frameworks
Framework list:
- kauth
- kbookmarks
- kcodecs
- kcompletion
- kcoreaddons
- kcrash
- kdbusaddons
- kdesignerplugin
- kdnssd
- kglobalaccel
- kitemviews
- kjobwidgets
- knotifications
- kwidgetsaddons
- kwindowsystem
- solid
- sonnet
Status
Status | Task | Coordination | |
---|---|---|---|
DONE | Define the way to extract translations for Qt-based frameworks. | ||
DONE | Investigate whether it is possible to have Qt-based frameworks automatically load their transitions. Answer: yes, via a Qt macro. | ||
DONE | Add src/Messages.sh script | ||
DONE | Check QObject::tr is correctly used | ||
DONE | Define the way to integrate compilation of translations in build system. Done: new function added to ECM: ecm_create_qm_from_po_files() | ||
DONE | Integrate translation compilation code | ||
DONE | Update framework template | ||
DONE | Extract strings from .ui files | ||
DONE | solid: fix string extraction: it uses $XGETTEXT and $XGETTEXT_QT | ||
TO DO | kcoreaddons: check src/mimetypes/XmlMessages.sh. Check it still works and add a "5" suffix to the .po file | <{{{3}}}> | |
TO DO | Make generation of the qm loader independent from availability of po/ directory, so that one can test translations without rebuilding | <{{{3}}}> | |
TO DO | kwidgetsaddons: Check data for KCharSelectData is marked as translatable. See FIXME in the code | <{{{3}}}> | |
IN PROGRESS | l10n-kde4: Modify scripts/autogen.sh to create different CMake code depending on whether the .po file must be compiled into a .qm or into a .mo. A .po which must be compiled into a .qm has a "X-Qt-Contexts: true" entry in the .po metadata. | ||
IN PROGRESS | Figure out the best way to handle plural forms: right now Qt requires the creation of a plural-only .qm file for english. |