[sawfish: 6/13] Translation improvements.
- From: Christopher Bratusek <chrisb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [sawfish: 6/13] Translation improvements.
- Date: Sat, 9 Oct 2010 13:38:37 +0000 (UTC)
commit 37dbf7023bd962abdb06f5e9a0bbfab59e1dc878
Author: Teika kazura <teika lavabit com>
Date: Sat Oct 9 17:29:14 2010 +0900
Translation improvements.
* po/README is added which is the manual for translators.
* po/update.sh accepts both ja and ja.po.
po/README | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
po/update.sh | 32 +++++++++--------
2 files changed, 128 insertions(+), 15 deletions(-)
---
diff --git a/po/README b/po/README
new file mode 100644
index 0000000..fb68dd5
--- /dev/null
+++ b/po/README
@@ -0,0 +1,111 @@
+Translation howto
+=================
+This README is a manual for Sawfish translators.
+
+Contents:
+* Translation introduction
+* General Workflow
+* Sawfish specific issues
+
+Translation introduction
+========================
+Like other open source, you can help us by translating Sawfish into
+your language. (And if have noticed anything regarding translation,
+please let us know.)
+
+French translation, for example, is stored in
+<sawfish source dir>/po/fr.po. It's your language po file that you edit.
+
+Translation is done by "gettext" software. You don't necessarily need
+it to translate. Po file grammar is explained in gettext doc. For
+technical details consult it.
+
+General Workflow
+================
+
+1. (Optional) Update your language po file.
+2. Edit your po file.
+3. Send it to a GNOME translation team.
+
+Each step is explained below.
+
+Updating a po file
+------------------
+This step is desired, but optional. You need to have gettext
+installed. Or, you can ask us to do it.
+
+If you can, first update sawfish.pot, which is the base of all
+po files:
+
+ $ # download the latest sawfish, and extract it.
+ $ cd <sawfish source>
+ $ ./configure # If it's git source, do instead ./autogen.sh
+ $ make all
+ $ cd po/
+ $ ./make-pot # This updates sawfish.pot
+
+Update your language po file by:
+
+ $ cd <sawfish source>/po/
+ $ ./update.sh zh_CN.po # Or your language po file.
+
+Editing
+-------
+Recommended tools are for example "poedit" and emacs "po-mode". The
+latter is included in the gettext package. Your distributor
+may ship it as a seperate package.
+
+Submission
+----------
+You have to send it to the GNOME translation team of your language.
+They'll review and commit it to the source. The precise procedure
+may depend on languages. (Don't ask them Sawfish specific questions.)
+
+Web:
+First go to the GNOME translation home[1], and check your language
+team. Register there, go to the Sawfish page[2], "reserve for
+translation", and paste your po file.
+
+[1]: http://l10n.gnome.org/
+[2]: http://l10n.gnome.org/module/sawfish/
+
+Email:
+At http://mail.gnome.org , check the mailing-list for your
+language, like gnome-<lang>. If one does not exist, use gnome-i18n.
+
+Thanks!
+
+Sawfish specific issues
+=======================
+For several reasons, Sawifsh extracts strings to be translated in a
+complicated manner.
+
+String origin
+-------------
+Where does the string come from? You may want to know it, for example,
+when you want to confirm the validity of a string marked "fuzzy".
+
+Sawfish extracts strings from lisp sources which are under lisp/,
+themes/*/theme.jl, and scripts/. (It seems that the extraction script
+uses C sources too, but the author of this README couldn't find
+strings from C. C sources are under src/, for your information.)
+
+In order to search the origin of a string, "ack" is helpful. (In
+Debian, it's call "ack-grep".) If you can use git, "git grep" is your
+friend.
+
+Command names are translated, too, but they are often brief and
+difficult to get the meaning, without reading the documentation of
+that command. Notice that command `foo-bar-baz' appears as "Foo bar
+baz" in msgid.
+
+Not all are translated
+----------------------
+Please expand this list of untranslated strings.
+
+* Event names like "Button1-Off". (This is difficult to support, so
+ we won't fix it in near future.)
+
+Po file comments
+----------------
+Please ignore `c-format' flag. We can't disable it.
diff --git a/po/update.sh b/po/update.sh
index 9194c61..c19bb08 100755
--- a/po/update.sh
+++ b/po/update.sh
@@ -3,24 +3,26 @@
PACKAGE="sawfish"
if [ "x$1" = "x--help" ]; then
-
-echo Usage: ./update.sh langcode
-echo --help display this help and exit
-echo
-echo Examples of use:
-echo ./update.sh da -- updates the da.po file
-
+ echo Usage: ./update.sh langcode[.po]
+ echo --help display this help and exit
+ echo
+ echo Examples of use:
+ echo ./update.sh da[.po] -- updates the da.po file
+ exit 0
elif [ "x$1" = "x" ]; then
+ echo "Type language code, e.g. da / da.po for Danish, etc."
+ exit 0
+fi
-echo "Remember to type language code, ie. da for Danish, etc"
-
-else
+PO="${1}"
-echo "Now merging $1.po with $PACKAGE.pot, and creating an updated $1.po ..."
+if [ -e "${PO}.po" ]; then
+ PO="${PO}.po"
+fi
-mv $1.po $1.po.old && msgmerge $1.po.old $PACKAGE.pot -o $1.po \
-&& rm $1.po.old;
+echo "Now merging $PO with $PACKAGE.pot, and creating an updated $PO ..."
-msgfmt $1.po --statistics -o /dev/null
+mv ${PO} ${PO}.old && msgmerge ${PO}.old ${PACKAGE}.pot -o ${PO} \
+ && rm ${PO}.old;
-fi;
+msgfmt $PO --statistics -o /dev/null
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]