KDE Maintainship

من ويكي عربآيز
اذهب إلى: تصفح، ابحث

KDE PO files are all placed in a unique place contrary to Gnome.

Kdelogo.png This is a KDE related article

Scenario

  • Many contributions were committed to Arabeyes' CVS (translate/kde/messages)
  • KDE SVN is updated with modified strings
  • Arabeyes contribution must be committed to KDE SVN
  • The PO files in Arabeyes must be updated
  • Finally Arabeyes translate/kde/messages and KDE trunk/l10n/ar/messages must be exactly the same after the sync


Realisation

Errors should be emailed to the maintainer

KDE files should not be checked with msgfmt -cv -o /dev/null $file

  • Logging in and checking out:
svn checkout https://<username>@svn.kde.org/home/kde/trunk/l10n/ar/messages

The typed password is remembered.

  • Merging Arabeyes translations to KDE new PO files
cd $ARABEYESCVSROOT/translate/kde/messages
for i in `find | grep ".po\$"`; do msgmerge $ARABEYESCVSROOT/translate/kde/messages/$i $KDESVNROOT/trunk/l10n/ar/messages/$i -o $KDESVNROOT/trunk/l10n/ar/messages/$i; done
  • Copy newly added directories and files in Arabeyes CVS to KDE SVN
for i in `find`; do cp -r -i $ARABEYESCVSROOT/translate/kde/messages/$i $KDESVNROOT/trunk/l10n/ar/messages/$i; done #I am not sure of the command

Important: Don't copy CVS configuration files

  • Add newly added directories and files in Arabeyes CVS that were copied to KDE SVN to version control
svn add <new-dirs-and-files>
  • Commit everything
cd $KDESVNROOT/l10n/ar/messages
for i in `find`; do svn commit $i -m '`msgfmt --statistics -o /dev/null $i`'; done

Important: Don't commit the ".svn" directories and their content.

  • Copy KDE SVN to Arabeyes CVS
cd $KDESVNROOT/l10n/ar/messages
for i in `find | grep ".po\$"`; do cp $KDESVNROOT/l10n/ar/messages/$i $ARABEYESCVSROOT/translate/kde/messages/$i; done #overwrites all files
  • Commit Arabeyes CVS changes
cd $ARABEYESCVSROOT/translate/kde/messages
for i in `find | grep ".po\$"`; do cvs commit $i; done # mark as CVS_SILENT and send an email to doc@arabeyes.org with logs.

/trunk/l10n/scripts/ contains many scripts to help translators.


Alternative method

svn checkout https://<username>@svn.kde.org/home/kde/trunk/l10n/templates/messages
svn update templates
cp -r templates $ARABEYESCVSROOT/translate/kde/templates/messages
cd $ARABEYESCVSROOT/translate/kde/messages
for i in `find | grep ".po\$"; do msgmerge $ARABEYESCVSROOT/translate/kde/messages/$i $ARABEYESCVSROOT/translate/kde/templates/messages/$it -o $ARABEYESCVSROOT/translate/kde/messages/$i; done # $it because templates contains POT files

* Then overwrite $KDESVNROOT/l10n/ar/messages with $ARABEYESCVSROOT/translate/kde/messages and commit KDE changes

External links

Using Subversion with KDE

</ltr>