[Koha-cvs] CVS: koha-doc/es/sysadmin/templates traduccion.xml,NONE,1.1

skemotah shedges at users.sourceforge.net
Thu Jun 23 13:27:11 CEST 2005


Update of /cvsroot/koha/koha-doc/es/sysadmin/templates
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7990/sysadmin/templates

Added Files:
	traduccion.xml 
Log Message:
Initial xml markup

--- NEW FILE ---
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<article>
  <title>Traducción de “Templates” de KOHA</title>

  <articleinfo>
    <pubdate>2005-06-22</pubdate>

    <author>
      <firstname>J. Martín</firstname>

      <surname>Longo</surname>

      <email>jmlongo AT uncu.edu.ar</email>
    </author>

    <copyright>
      <year>2005</year>

      <holder>J. Martín Longo</holder>
    </copyright>

    <legalnotice>
      <para>El documento se entrega bajo licencia GNU-GPL</para>

      <para>This document is related to Koha and is licensed to you under the
      GNU General Public License version 2 or later (<ulink
      url="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</ulink>).</para>

      <para>Koha-related documents may be reproduced and distributed in whole
      or in part, in any medium physical or electronic, as long as this
      copyright notice is retained on all copies.</para>

      <para>You may create a derivative work and distribute it provided that
      you:</para>

      <orderedlist>
        <listitem>
          <para>License the derivative work with this same license, or the
          Linux Documentation Project License (<ulink
          url="http://www.tldp.org/COPYRIGHT.html">http://www.tldp.org/COPYRIGHT.html</ulink>).
          Include a copyright notice and at least a pointer to the license
          used.</para>
        </listitem>

        <listitem>
          <para>Give due credit to previous authors and major
          contributors.</para>
        </listitem>
      </orderedlist>

      <para>Commercial redistribution is allowed and encouraged; however, the
      author would like to be notified of any such distributions.</para>

      <para>No liability for the contents of this document can be accepted.
      Use the concepts, examples and information at your own risk. There may
      be errors and inaccuracies, that could be damaging to your system.
      Proceed with caution, and although this is highly unlikely, the
      author(s) do not take any responsibility.</para>

      <para>All copyrights are held by their by their respective owners,
      unless specifically noted otherwise. Use of a term in this document
      should not be regarded as affecting the validity of any trademark or
      service mark. Naming of particular products or brands should not be seen
      as endorsements.</para>
    </legalnotice>

    <revhistory>
      <revision>
        <revnumber>2.2.2</revnumber>

        <date>2005-06-22</date>

        <revdescription>
          <para>Initial XML markup.</para>
        </revdescription>
      </revision>
    </revhistory>
  </articleinfo>

  <section>
    <title>Introducción</title>

    <note>
      <para><emphasis>Nota aclaratoria:</emphasis> Se supone, en todos los
      ejemplos, que se ha descargado el archivo
      <filename>koha-2.1.1.tar.gz</filename> y se lo ha desempaquetado en el
      directorio 'home' del usuario 'usuario'. Por lo tanto, se debería contar
      con un directorio <filename>koha-2.1.1</filename> en el directorio
      <filename>/home/usuario/</filename></para>

      <para>En cada sistema, se deberán adecuar los nombres de directorios y
      de usuarios como corresponda.</para>
    </note>

    <para>La internacionalización de KOHA puede lograrse mediante la
    traducción de los textos contenidos en los archivos '.tmpl' (que viene de
    Template) contenidos en
    <filename>/home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/en</filename></para>

    <para>En ocasiones anteriores, el procedimiento de traducción que se ha
    seguido ha sido el de copiar todo el contenido del directorio mencionado
    al directorio
    <filename>/home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/es</filename>
    y, posteriormente, configurar KOHA para que utilice el idioma
    español.</para>

    <para>Este procedimiento, si bien ha dado resultados aceptables, es
    bastante lento y trabajoso, ya que se deben buscar una por una las cadenas
    de texto a traducir dentro de cada archivo '.tmpl', al tiempo que quien
    realiza el trabajo se debe cuidar de no modificar ninguna etiqueta o
    marca, ya que eso produce errores en la visualización.</para>

    <para>Por este motivo, se ha optado por la utilización del script
    <filename>tmpl_process3.pl</filename> (provisto en la distribución de
    KOHA). Este script toma como entrada el archivo o un directorio que
    contenga los archivos que se quiera traducir y genera como salida un único
    archivo con formato específico y extensión '.po' (que viene de Portable
    Object) conteniendo todas las cadenas de texto que pueden ser traducidas.
    Este tipo de archivos es un estándar en el trabajo de internacionalización
    de software en el mundo del Software Libre y, por lo tanto, hay
    herramientas desarrolladas para su tratamiento.</para>

    <para>El presente tutorial pretende mostrar el uso del script
    <filename>tmpl_process3.pl</filename> y, posteriormente, sentar las bases
    para la utilización de una herramienta para el tratamiento del archivo
    '.po' generado por el mismo (en este caso, la herramienta
    <application>Kbabel</application>).</para>
  </section>

  <section>
    <title>Usando tmpl_process3.pl para generar archivos '.po'</title>

    <para>El script <filename>tmpl_process3.pl</filename> se encuentra ubicado
    en <filename>/home/usuario/koha-2.1.1/scripts/misc/translator/</filename>
    y depende algunos módulos ubicados en ese mismo directorio. Por lo tanto,
    para poder ejecutarlo, se deberá estar ubicado en el directorio
    <filename>/home/usuario/koha-2.1.1/scripts/misc/translator/</filename><example>
        <title>Ejemplo:</title>

        <programlisting>usuario at host: cd /home/usuario/koha-2.1.1/scripts/misc/translator/

usuario at host: ./tmpl_process3.pl --help</programlisting>
      </example></para>

    <para>Los comandos mostrados en el ejemplo producirán como salida el
    listado de las opciones y el modo de uso del script, como se muestra a
    continuación:</para>

    <programlisting>Usage: ./tmpl_process3.pl create [OPTION]
  or:  ./tmpl_process3.pl update [OPTION]
  or:  ./tmpl_process3.pl install [OPTION]
  or:  ./tmpl_process3.pl --help
Create or update PO files from templates, or install translated templates.

  -i, --input=SOURCE          Get or update strings from SOURCE file.
                              SOURCE is a directory if -r is also specified.
  -o, --outputdir=DIRECTORY   Install translation(s) to specified DIRECTORY
      --pedantic-warnings     Issue warnings even for detected problems
                              which are likely to be harmless
  -r, --recursive             SOURCE in the -i option is a directory
  -s, --str-file=FILE         Specify FILE as the translation (po) file
                              for input (install) or output (create, update)
  -x, --exclude=REGEXP        Exclude files matching the given REGEXP
      --help                  Display this help and exit

The -o option is ignored for the "create" and "update" actions.
Try `perldoc ./tmpl_process3.pl' for perhaps more information.</programlisting>

    <para>Para crear un archivo 'circ_es.po' que contenga los textos de todos
    los templates contenidos en el directorio 'circ' de la intranet de KOHA
    que están en inglés, el procedimiento sería el siguiente:</para>

    <programlisting>usuario at host: cd /home/usuario/koha-2.1.1/scripts/misc/translator/

usuario at host: ./tmpl_process3.pl create -r -i /home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/en/circ/ -s /home/usuario/traduccion/circ_es.po</programlisting>

    <para>En el ejemplo anterior:</para>

    <itemizedlist>
      <listitem>
        <para>'<emphasis role="bold">create</emphasis>' indica que se debe
        generar un archivo '.po'.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-r</emphasis> indica que el proceso se
        realizará sobre un directorio.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-i</emphasis> indica el directorio en el
        que se encuentran los archivos de los que se extraerán las cadenas de
        texto.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-s</emphasis> indica el directorio y el
        nombre del archivo '.po' a crear.</para>
      </listitem>
    </itemizedlist>

    <para>Al ejecutar el comando anterior es posible que se generen algunas
    advertencias o 'warnings' por cuestiones de sintaxis.</para>

    <para>Al ejecutar el ejemplo sugerido, se produjo la siguiente salida en
    el equipo de prueba:</para>

    <programlisting>Warning: Can't determine original templates' charset, defaulting to ISO-8859-1
Removing empty file /home/jmlongo/tmp/temp.po
xgettext.pl: Warning (negligible): selectbranchprinter.tmpl: line 15: Suggest ESCAPE=HTML for TMPL_VAR in attribute "value": "&lt;!-- TMPL_VAR NAME="value" --&gt;"
xgettext.pl: Warning (negligible): selectbranchprinter.tmpl: Further similar negligible warnings will not be reported, use --pedantic for details
xgettext.pl: Warning: returns.tmpl: line 17: Strange attribute syntax: /cgi-bin/koha/moremember.pl?bornum=&lt;!-- TMPL_VAR NAME="bornum" --&gt;", "Member"); return false;"
xgettext.pl: Warning: branchtransfers.tmpl: line 20: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
xgettext.pl: Warning: branchtransfers.tmpl: line 22: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
xgettext.pl: Warning: branchtransfers.tmpl: line 98: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
xgettext.pl: Warning: branchtransfers.tmpl: line 128: Probably missing whitespace before or missing quotation mark near: Item", 480, 640); return false;"
The create seems to be successful.</programlisting>

    <para>A pesar de estas advertencias, la última línea (<emphasis
    role="bold">The create seems to be successful.</emphasis>) indica que el
    proceso ha tenido éxito y que se cuenta con el archivo '.po' en el lugar y
    con el nombre seleccionados. Este archivo deberá ser abierto usando KBabel
    para iniciar el proceso de traducción.</para>
  </section>

  <section>
    <title>Usando KBabel para traducir un archivo '.po'</title>

    <para>La aplicación <application>KBabel</application> presenta cuatro
    áreas, dentro de la ventana principal, cada una de ellas orientada a una
    utilidad en especial. Con esta aplicación se trabaja traduciendo una a una
    las cadenas de texto que están contenidas en el archivo '.po' generado
    anteriormente.</para>

    <para>Para lograr esto de manera eficiente,
    <application>KBabel</application> pone a disposición distintas
    herramientas, como se muestra en la siguiente captura de pantalla:</para>

    <figure>
      <title>Screenshot 1</title>

      <mediaobject>
        <imageobject>
          <imagedata fileref="imágenes/image1.gif" />
        </imageobject>
      </mediaobject>
    </figure>

    <itemizedlist>
      <listitem>
        <para>El área marcada en la figura como <emphasis role="bold">Texto
        Original</emphasis> es de sólo lectura y presenta la cadena de texto
        que se está traduciendo.</para>
      </listitem>

      <listitem>
        <para>El área marcada en la figura como <emphasis role="bold">Texto
        Traducido</emphasis> es el lugar donde se escribe la traducción de lo
        que aparece en el cuadro <emphasis role="bold">Texto
        Original</emphasis>.</para>
      </listitem>

      <listitem>
        <para>El área marcada en la figura como <emphasis
        role="bold">Comentarios y Nombres de Archivos</emphasis> es el lugar
        donde aparecen los comentarios que los desarrolladores dejaron al
        momento de crear el template que se está traduciendo, con el objetivo
        de hacer alguna aclaración. Además, aparece el nombre del o los
        archivos en los cuales está contenida la cadena de texto que se está
        traduciendo.</para>
      </listitem>

      <listitem>
        <para>El área marcada en la figura como <emphasis
        role="bold">Contexto</emphasis> es el lugar en el que aparecen las
        cadenas de texto anteriores y posteriores a la que se está
        traduciendo, como una ayuda para saber en qué contexto se encuentra la
        frase que se está traduciendo.</para>
      </listitem>
    </itemizedlist>

    <section>
      <title>Ejemplos</title>

      <para>Algunos delimitadores y etiquetas no deben ser modificados en la
      traducción</para>

      <figure>
        <title>Screenshot 2</title>

        <mediaobject>
          <imageobject>
            <imagedata fileref="imágenes/image2.gif" />
          </imageobject>
        </mediaobject>
      </figure>

      <para>Cuando la traducción implique el uso de acentos y caracteres
      especiales, los mismos deberán ser reemplazados por las entidades
      correspondientes, para evitar problemas a la hora de la
      visualización.</para>

      <figure>
        <title>Screenshot 3</title>

        <mediaobject>
          <imageobject>
            <imagedata fileref="imágenes/image3.gif" />
          </imageobject>
        </mediaobject>
      </figure>

      <para>Para navegar entre las cadenas de texto y realizar algunas
      funciones útiles, se pueden utilizar los íconos de la barra de
      herramientas o atajos de teclado.</para>

      <informaltable>
        <tgroup cols="2">
          <tbody>
            <row>
              <entry align="center" valign="middle"><emphasis
              role="bold">Función</emphasis></entry>

              <entry align="center" valign="middle"><emphasis
              role="bold">Teclado</emphasis></entry>
            </row>

            <row>
              <entry>Ver el la cadena de texto anterior</entry>

              <entry><emphasis role="bold">RePág</emphasis></entry>
            </row>

            <row>
              <entry>Ver el la cadena de texto siguiente</entry>

              <entry><emphasis role="bold">AvPág</emphasis></entry>
            </row>

            <row>
              <entry>Ver el la cadena de texto anterior no traducida</entry>

              <entry><emphasis role="bold">Alt+RePág</emphasis></entry>
            </row>

            <row>
              <entry>Ver el la cadena de texto siguiente no traducida</entry>

              <entry><emphasis role="bold">Alt+AvPág</emphasis></entry>
            </row>

            <row>
              <entry>Copiar la cadena de texto que está en la ventana de Texto
              Original a la ventana de traducción</entry>

              <entry><emphasis role="bold">Ctrl+Espacio</emphasis></entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
    </section>
  </section>

  <section>
    <title>Usando tmpl_process3.pl para generar “templates” traducidos</title>

    <para>Siguiendo los ejemplos anteriores, hemos creado, en primer lugar, un
    archivo '.po' con nombre <filename>circ_es.po</filename> conteniendo todas
    las cadenas de texto extraídas de todos los 'templates' que están en el
    directorio
    <filename>/home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/en/circ</filename>.</para>

    <para>Por otro lado, ya hemos utilizado <application>KBABEL</application>
    para realizar la traducción de todas esas cadenas de texto.</para>

    <para>Finalmente, sólo resta la generación de los nuevos 'templates'
    traducidos en un directorio a elección, siempre y cuando tenga una copia
    de los 'templates' originales. A los efectos de este ejemplo, crearemos
    los templates traducidos en el directorio
    <filename>/home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/es/circ</filename>.</para>

    <para>Para lograr esto, utilizaremos nuevamente el script
    <filename>tmpl_process3.pl</filename> pero con parámetros ligeramente
    distintos:</para>

    <programlisting>usuario at host: cd /home/usuario/koha-2.1.1/scripts/misc/translator/ 

usuario at host: ./tmpl_process3.pl install -s /home/usuario/traduccion/ circ_es.po -r -i /home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/en/circ/ -o /home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/es/circ/</programlisting>

    <para>En el ejemplo anterior:</para>

    <itemizedlist>
      <listitem>
        <para>'<emphasis role="bold">install</emphasis>' indica que se
        generarán 'templates' a partir de un archivo '.po'.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-r</emphasis> indica que el proceso se
        realizará sobre un directorio.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-i</emphasis> indica el directorio en el
        que se encuentran los 'templates' originales de los cuales se
        extrajeron las cadenas de texto.</para>
      </listitem>

      <listitem>
        <para><emphasis role="bold">-s</emphasis> indica el directorio en el
        que se crearán los 'templates' traducidos.</para>
      </listitem>
    </itemizedlist>

    <para>Al igual que durante la creación del archivo '.po', al ejecutar el
    comando sugerido, pueden producirse advertencias. La siguiente es la
    salida obtenido en el equipo de prueba:</para>

    <programlisting>Warning: Can't determine original templates' charset, defaulting to ISO-8859-1
Creating /home/jmlongo/documentos/koha/koha-2.1.1/intranet-html/intranet-tmpl/default/pl/circ//selectbranchprinter.tmpl...
tmpl_process3.pl: Warning (negligible): selectbranchprinter.tmpl: line 15: Suggest ESCAPE=HTML for TMPL_VAR in attribute "value": "&lt;!-- TMPL_VAR NAME="value" --&gt;"
tmpl_process3.pl: Warning (negligible): selectbranchprinter.tmpl: Further similar negligible warnings will not be reported, use --pedantic for details
Creating /home/jmlongo/documentos/koha/koha-2.1.1/intranet-html/intranet-tmpl/default/pl/circ//returns.tmpl...
tmpl_process3.pl: Warning: returns.tmpl: line 17: Strange attribute syntax: /cgi-bin/koha/moremember.pl?bornum=&lt;!-- TMPL_VAR NAME="bornum" --&gt;", "Member"); return false;"
Creating /home/jmlongo/documentos/koha/koha-2.1.1/intranet-html/intranet-tmpl/default/pl/circ//circulation.tmpl...
Creating /home/jmlongo/documentos/koha/koha-2.1.1/intranet-html/intranet-tmpl/default/pl/circ//branchtransfers.tmpl...
tmpl_process3.pl: Warning: branchtransfers.tmpl: line 20: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
tmpl_process3.pl: Warning: branchtransfers.tmpl: line 22: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
tmpl_process3.pl: Warning: branchtransfers.tmpl: line 98: Probably missing whitespace before or missing quotation mark near: Member", 480, 640); return false;"
tmpl_process3.pl: Warning: branchtransfers.tmpl: line 128: Probably missing whitespace before or missing quotation mark near: Item", 480, 640); return false;"
The install seems to be successful.</programlisting>

    <para>A pesar de estas advertencias, la última línea (<emphasis
    role="bold">The install seems to be successful.</emphasis>) indica que el
    proceso ha tenido éxito y que se cuenta con un juego de 'templates'
    traducidos en
    <filename>/home/usuario/koha-2.1.1/intranet-html/intranet-tmpl/default/es/circ</filename>.</para>

    <para>Para comprobar el éxito de este proceso, basta con abrir cualquiera
    de los 'templates' contenidos en el directorio mencionado con el editor de
    texto prefereido.</para>
  </section>

  <section>
    <title>Consultas, quejas y propuestas</title>

    <para>Si tiene alguna consulta acerca del proceso descrito en este
    documento, o quiere realizar alguna propuesta (o plantear una queja, ¿por
    qué no?) que sirva para mejorarlo, puede contactarse con Martín Longo
    (<email>jmlongo AT uncu.edu.ar</email>)</para>
  </section>
</article>




More information about the Koha-cvs mailing list