summaryrefslogtreecommitdiffstats
path: root/po/README
diff options
context:
space:
mode:
authorSlávek Banko <[email protected]>2020-06-28 10:38:53 +0200
committerSlávek Banko <[email protected]>2020-06-28 10:38:53 +0200
commit8dfa8ebe8d0a0590cf2c74f7ccdd86dac4d30908 (patch)
tree96af22866023b40ada0b80aee25a272292f8e38b /po/README
parente1df226b3fce5c38caa723a358553c37e154369b (diff)
downloadkdiff3-8dfa8ebe8d0a0590cf2c74f7ccdd86dac4d30908.tar.gz
kdiff3-8dfa8ebe8d0a0590cf2c74f7ccdd86dac4d30908.zip
Remove the original translation directory layout.
Signed-off-by: Slávek Banko <[email protected]>
Diffstat (limited to 'po/README')
-rw-r--r--po/README133
1 files changed, 0 insertions, 133 deletions
diff --git a/po/README b/po/README
deleted file mode 100644
index 7a55918..0000000
--- a/po/README
+++ /dev/null
@@ -1,133 +0,0 @@
-README for KDiff3-Internationalisation (i18n)
-=============================================
-Author: Joachim Eibl 2004
-
-This text is for you, if you might want to help translating KDiff3 or just want
-to learn how this i18n-thing works.
-
-grep "Language-Team" *.po
-
-az Azerbaijani <[email protected]>
-ca LANGUAGE <[email protected]>
-da Danish <[email protected]>
-de Deutsch <[email protected]>
-en_GB British English <[email protected]>
-es espaniol <[email protected]>
-et Estonian <[email protected]>
-fr French <[email protected]>
-hu Hungarian <[email protected]>
-it Italian <[email protected]>
-nl Nederlands <[email protected]>
-pl Polish
-pt_BR Brazilian Portuguese <[email protected]>
-pt Portuguese <[email protected]>
-ro Romanian <[email protected]>
-ru Russian <[email protected]>
-sr Serbian
-sv Svenska <[email protected]>
-tr Türkçe <[email protected]>
-zh_CN zh_CN <[email protected]>
-
-
-Thanks to all translators!
-
-
-The program was written with English as main language. But to allow automatic
-translation of messages, every translatable text in the program was written as
-i18n("translatable").
-
-i18n() is a translator-function. If a translation table exists, at runtime the
-function looks for the given string in that table and returns the translation.
-
-The translation-table is created in 3 steps:
-1. First a template-translation table kdiff3.pot should be created: Usually via
- xgettext --keyword=i18n --keyword=I18N_NOOP -C -o ../po/kdiff3.pot *.cpp *.h
-
- It contains all translatable strings of the program, but no translations.
- (xgettext is usually part of package gettext-devel)
-
-2. Translators create a translation for a specific language. Because we don't want
- to modify the template now, we'll create a copy for each language.
- e.g.: cp kdiff3.pot de.po
- Using KBabel we can comfortably edit the translated strings.
- e.g.: kbabel de.po
-
-3. The last step is to create a fast lookup-table (*.gmo) from the po-file via
- msgfmt, but this happens automatically during the build process.
- (If a new po-file was added: make -f Makefile.cvs; configure; make)
-
-Before starting to translate make sure nobody else is already doing it. It would
-be a pity, if your precious time is wasted. Look at http://i18n.kde.org/, send a
-message to the translation team coordinator for your language, and tell them that
-you want to translate KDiff3. He'll inform you if you should proceed. Also read
-the other docs on that site.
-
-============
-
-The following is for my own memory and for those who really want to learn dirty tricks and details:
-
-The KDE-i18n team stores their results in SVN. But I would like to have an independent
-copy of all translations in the po-directory of the source package. Actually it's just
-copying and renaming, but simplified with these commands:
-
-
-First fetch all available translations from the SVN-repository (access via websvn and wget)
- wget http://websvn.kde.org/*checkout*/trunk/l10n/subdirs
- for i in `cat subdirs`; do wget http://websvn.kde.org/*checkout*/trunk/l10n/$i/messages/extragear-utils/kdiff3.po -O $i.po; done
-
-
-This was the explanation for translations within KDE.
-But KDiff3 can also be compiled and run without KDE:
-
-Since Qt was used for KDiff3, the first part is quite the same: Only the fast lookup-table
-(*.qm-files) must be created with $TQTDIR/bin/msg2tqm (instead of msgfmt). ($TQTDIR/tools/msg2tqm)
-
-Still one detail isn't right: Some strings are not translated, because under KDE their
-translation is within KDE-libs or within Qt. But the translations are available:
-
-For Qt-strings in $TQTDIR/translations (already as .qm-files)
-
-For KDE-libs in the SVN-repository, where we can reuse the previous trick to get
-all tdelibs*.po-files:
-
- for i in `cat subdirs`; do wget http://websvn.kde.org/*checkout*/trunk/l10n/$i/messages/tdelibs/tdelibs.po -O tdelibs_$i.po; done
-
-Finally the program must only read the correct translation tables:
-
- QTranslator kdiff3Translator( 0 );
- kdiff3Translator.load( QString("kdiff3_")+QTextCodec::locale(), translationDir );
- app.installTranslator( &kdiff3Translator );
-
- QTranslator qtTranslator( 0 );
- qtTranslator.load( QString("qt_")+QTextCodec::locale(), translationDir );
- app.installTranslator( &qtTranslator );
-
- QTranslator tdelibsTranslator( 0 );
- tdelibsTranslator.load( QString("tdelibs_")+QTextCodec::locale(), translationDir );
- app.installTranslator( &tdelibsTranslator );
-
-This should do the job, if the translation-tables can be found.
-The difficult part is: Where to search for the files, because this depends on
-where the program was installed. (I didn't solve this puzzle yet.)
-
-Because it's too much effort to copy all tdelibs*.po-files along: Here is a little info
-about how to extract only the needed strings and to create the qm-files.
-
-1. Only src/kreplacements/kreplacements.cpp contains strings, that were not covered by
- the normal translations. Hence a special pot-file is needed.
- xgettext --keyword=i18n --keyword=I18N_NOOP -C ../src/kreplacements/kreplacements.cpp -o kreplacements.pot
- (xgettext is usually part of package gettext-devel)
-
-2. Take only needed strings and translations from tdelibs*.po:
- msgmerge --no-fuzzy-matching tdelibs_de.po kreplacements.pot >kreplacements_de.po
-
-3. Concatenate the normal de.po and kreplacements_de.po:
- msgcat --use-first de.po kreplacements_de.po >kdiff3_de.po
-
-4. Finally create the fast lookup table:
- $TQTDIR/bin/msg2tqm kdiff3_de.po kdiff3_de.qm
-
-5. The intermediate files can then be deleted.
-
-The script createqm does steps 2-5 for languages where a kdiff3.po-translation exists.