Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKalpa Welivitigoda <callkalpa@gmail.com>2013-08-18 19:09:11 (GMT)
committer Kalpa Welivitigoda <callkalpa@gmail.com>2013-08-18 19:09:11 (GMT)
commitd009a7ffeaa1e760e15737769bcede30953cdb69 (patch)
treee1d437cfec5f79c128c9d921f027ef2bdd344990
parente9c82e614578768274a2705925d2a42e12d6c8af (diff)
l10 script
-rwxr-xr-xl10n_script.sh71
-rw-r--r--source/conf.py1
2 files changed, 72 insertions, 0 deletions
diff --git a/l10n_script.sh b/l10n_script.sh
new file mode 100755
index 0000000..f4dd73a
--- /dev/null
+++ b/l10n_script.sh
@@ -0,0 +1,71 @@
+#!/bin/sh
+#This script generates build files for a given lanaguage.
+#Copyright (C) 2013 Kalpa Welivitigoda <callkalpa@gmail.com>
+#
+#This program is free software: you can redistribute it and/or modify
+#it under the terms of the GNU General Public License as published by
+#the Free Software Foundation, either version 3 of the License, or
+#(at your option) any later version.
+#
+#This program is distributed in the hope that it will be useful,
+#but WITHOUT ANY WARRANTY; without even the implied warranty of
+#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+#GNU General Public License for more details.
+#
+#You should have received a copy of the GNU General Public License
+#along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# usage: l10n_script.sh <language>
+
+if [ "$#" == "0" ]; then
+ echo "No language provided"
+ echo "Usage: ./l10n_script.sh <language>"
+ exit 1
+fi
+
+# if help directory is not there, create it
+if [ ! -d "help" ]; then
+ mkdir "help"
+fi
+
+LANGUAGE="$1"
+TRANSLATED_PO_PATH="translated_po/$LANGUAGE"
+TRANSLATED_MO_PATH="source/translated/$LANGUAGE"
+
+# create mo files
+if [ ! -d $TRANSLATED_PO_PATH ]; then
+ echo "No PO files found for the language"
+ exit 1
+fi
+if [ ! -d $TRANSLATED_MO_PATH ]; then
+ mkdir $TRANSLATED_MO_PATH
+fi
+if [ ! -d $TRANSLATED_MO_PATH/LC_MESSAGES ]; then
+ mkdir $TRANSLATED_MO_PATH/LC_MESSAGES
+fi
+
+for file in $TRANSLATED_PO_PATH/*.po
+do
+ # remove the prefix numbers and build the mo files
+ mo_file=$(basename $(echo "$file" | sed 's/\.po/\.mo/') | sed 's/^[0-9]*_//')
+ msgfmt "$file" -o $TRANSLATED_MO_PATH/LC_MESSAGES/"$mo_file"
+done
+
+# build html
+if [ ! -d help/$LANGUAGE ]; then
+ mkdir help/$LANGUAGE
+fi
+sphinx-build -b html -Dlanguage=$LANGUAGE source help/$LANGUAGE
+
+# move images, sources and static content
+rm -rf help/_images help/_static help/_sources
+mv help/$LANGUAGE/_images help/
+mv help/$LANGUAGE/_static help/
+mv help/$LANGUAGE/_sources help/
+
+# replacing staic content links
+for file in help/$LANGUAGE/*.html
+do
+ echo $file
+ sed -i 's/_images/..\/_images/g;s/_static/..\/_static/g' "$file"
+done
diff --git a/source/conf.py b/source/conf.py
index 1e5bfe8..4e7518c 100644
--- a/source/conf.py
+++ b/source/conf.py
@@ -55,6 +55,7 @@ release = '0.94'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
+locale_dirs=["translated/"]
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used: