<?xml version="1.0" encoding="utf-8"?>
<!--
** Internationalization
** string extraction, merge, language file generation.
-->
<project name="plugin_i18n" basedir=".">
    <property name="gettexttasks.jar" value="../../i18n/lib/gettext-ant-tasks-0.9.7.jar"/>
    <property name="plugin.po.dir" value="po"/>
    <property name="poimport.tarball" value="latest"/>
    <property name="plugin.manifest" location="MANIFEST"/>

    <target name="gettext-init" description="Loads the Ant gettext and contrib tasks.">
        <taskdef name="gettext-extract" classname="org.xnap.commons.ant.gettext.GettextExtractKeysTask" classpath="${gettexttasks.jar}"/>
    </target>
    <target name="pot" description="Extract translatable strings from source." depends="gettext-init">
        <mkdir dir="${plugin.po.dir}"/>
        <gettext-extract keysFile="${ant.project.name}.pot" poDirectory="${plugin.po.dir}" keywords="-k -ktrc:1c,2 -kmarktrc:1c,2 -ktr -kmarktr -ktrn:1,2 -ktrnc:1c,2,3">
            <fileset dir="${plugin.src.dir}" includes="**/*.java"/>
        </gettext-extract>
        <echo file="${plugin.po.dir}/${ant.project.name}.pot" append="true">
#. Plugin ${ant.project.name}
#: build.xml:1
msgid "${plugin.description}"
msgstr ""
</echo>
    </target>
    <target name="pomerge" description="Merge extracted strings into language files.">
        <exec executable="perl">
            <arg value="i18n/pomerge.pl"/>
            <arg value="--podir"/>
            <arg value="${plugin.po.dir}"/>
            <arg value="--project"/>
            <arg value="${ant.project.name}"/>
        </exec>
    </target>
    <target name="poimport" description="Import the PO files from Launchpad tarball.">
        <exec executable="perl">
            <arg value="i18n/poimport.pl"/>
            <arg value="--podir"/>
            <arg value="${plugin.po.dir}"/>
            <arg value="${poimport.tarball}"/>
        </exec>
    </target>
    <target name="lang" description="Prepare *.lang files in data directory.">
        <exec executable="perl">
            <arg line="../../i18n/i18n.pl --potfile=${plugin.po.dir}/${ant.project.name}.pot --basedir=data/ ${plugin.po.dir}/*.po"/>
        </exec>
    </target>

    <target name="mftrans" description="Add translations of plugin description to manifest.  Not to be called directly.">
        <echo message="Adding translations to ${plugin.manifest} ..."/>
        <exec executable="perl">
            <arg value="i18n/mftrans.pl"/>
            <arg value="--manifest"/>
            <arg value="${plugin.manifest}"/>
            <arg value="--description"/>
            <arg value="${plugin.description}"/>
            <arg value="${plugin.po.dir}/*.po"/>
        </exec>
    </target>
</project>
