/[d-i]/trunk/manual/scripts/create_xml
ViewVC logotype

Contents of /trunk/manual/scripts/create_xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 32343 - (hide annotations) (download)
Mon Nov 21 18:10:38 2005 UTC (7 years, 6 months ago) by fjp
File size: 1702 byte(s)
Make sure po files are utf-8 encoded before running po2xml
1 fjpop-guest 23465 #!/bin/sh
2    
3     # This script is used for translations using .po files.
4     # It creates .xml files from the translated .po files.
5    
6     if [ "$1" = "--help" ] ; then
7     echo "Usage: $0 <language>"
8     exit 0
9     fi
10    
11     language=${1:-pl}
12    
13 fjpop-guest 25877 BUILDDIR="./build"
14     if [ -z "$PO_USEBUILD" ] ; then
15     WORKDIR="./integrated"
16     PODIR="./po"
17     else
18     WORKDIR="$BUILDDIR/build.po"
19     PODIR="$BUILDDIR/build.po"
20     fi
21 fjpop-guest 23465 SOURCEDIR="$WORKDIR/en"
22 fjpop-guest 25877 # Don't overwrite XML translations committed to SVN
23 fjpop-guest 25848 if [ -d "./$language/.svn" ] ; then
24 fjpop-guest 25877 TARGETDIR="./$language.new"
25 fjpop-guest 25848 else
26 fjpop-guest 25877 TARGETDIR="./$language"
27 fjpop-guest 25848 fi
28     RET=0
29 fjpop-guest 23465
30     [ -d "$SOURCE" -o -d "$PODIR" ] || exit 1
31    
32 fjpop-guest 25877 [ -d "$TARGETDIR" ] && rm -r $TARGETDIR
33 fjpop-guest 23465
34 fjpop-guest 25877 echo "Creating XML files for language '$language':"
35 fjpop-guest 23465 for ORIGXML in `find $SOURCEDIR -name "*.xml"` ; do
36 fjpop-guest 25848 BASEDIR=$(dirname $ORIGXML | sed "s:$SOURCEDIR::" | sed "s:^/::")
37 fjpop-guest 23465 BASENAME=$(basename $ORIGXML .xml)
38 fjpop-guest 25877 PO=$PODIR/$language/$BASENAME.po
39     XML=$TARGETDIR/$BASEDIR/$BASENAME.xml
40 fjpop-guest 23465
41 fjpop-guest 25877 mkdir -p $TARGETDIR/$BASEDIR
42 fjpop-guest 23465
43     if [ -f $PO ] ; then
44 fjpop-guest 26062 echo "- creating $BASENAME.xml"
45 fjp 32343 # Make sure po file is UTF8 encoded; po2xml does no conversion
46     msgconv -t utf-8 $PO >/tmp/tmp.po.$$
47 fjpop-guest 25848 RC=$?
48     if [ $RC -ne 0 ] ; then
49     RET=$RC
50 fjp 32343 echo "Error: error $RC while executing msgconv"
51     continue
52     fi
53     po2xml $ORIGXML /tmp/tmp.po.$$ > $XML
54     RC=$?
55     if [ $RC -ne 0 ] ; then
56     RET=$RC
57 fjpop-guest 26062 echo "Error: error $RC while executing po2xml"
58 fjp 32343 continue
59 fjpop-guest 25848 fi
60 fjpop-guest 23465 else
61 fjpop-guest 26062 echo "Warning: no PO file found for '$BASENAME'; copying English original"
62 fjpop-guest 25877 cp $ORIGXML $TARGETDIR/$BASEDIR
63 fjpop-guest 23465 fi
64     done
65    
66 fjp 32343 rm -f /tmp/tmp.po.$$
67 fjpop-guest 25848 exit $RET

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.5