Índice
Traducción
El ArPug pone a disposición este sitio y la herramienta web Pootle (Ingresar) para realizar la tarea de traducción de documentación y temas relacionados al español (u otros lenguajes si hay interesados).
Actualmente estan cargados los siguientes proyectos (ver abajo el estado de cada uno):
- Referencia SQL, Tutorial: Traducción de secciones del manual de PostgreSQL (Wiki)
- Documentación Oficial: Traducción de los archivos fuentes SGML ( Pootle)
- PgInstaller (Win): Traducción del instalador de PostgreSQL para Windows ( Pootle)
- OneClickInstaller (Win,Linux,Mac): Traducción del instalador de PostgreSQL para Linux, Windows y MacOS ( Pootle)
- PgAdmin3 (Win,Linux,Mac): Traducción de la herramienta de administración de PostgreSQL para Linux, Windows y MacOS ( Pootle)
- Prueba de Pootle: Proyecto de prueba (se puede probar editar y borrar, para eso está) ( Pootle)
- Terminologia: Terminologia sugerida en común para todas las traducciones ( Pootle)
Para más información consultar en la lista pgsql-es-fomento@postgresql.org
Instructivo de Traducción por Wiki
La operatoria es bastante simple, solo hace falta usar un navegador de internet:
- Iniciar Sesión, si no dispone de usuario y contraseña para este sitio, ver página ComoContribuir
- Crear la página (si no existe):
- Copiar el texto original http://www.postgresql.org/docs/8.4/static/sql-select.html (sql-select.html)
- Crear la página del wiki. Por ejemplo: escribir en la URL del navegador http://www.arpug.com.ar/trac/wiki/sql-select.html (modificar sql-select.html por el nombre de la página a traducir), ingresar y presionar Create this page
- Presionar wyswyg para el editor visual y pegar el texto copiado de la página original
- Si la página ya existia, presionar Edit this page en la parte inferior para editarla y presionar wyswyg para el editor visual
- Editar y traducir el texto, reemplazando el texto en inglés, presionar Preview Changes para ver las previsualizaciones.
- Grabar: ingresar un pequeño comentario que diga que se hizo en Comment (para el hitorial, ej. ''Traducción de ...'') y presionar Submit Changes
Recomendaciones Traducción por Wiki
Para mantener los cambios pequeños y facilitar el seguimiento, se recomienda:
- Dejar como primera versión el original, y como comentario "Original desde http://www.postgresql.org/docs/8.4/interactive/tutorial-arch.html"
- Editar por sección (al lado de cada título aparecerá un Edit para modificar solo esa parte)
- Respetar estilo y formato (parrafos)
- No agregar saltos de linea ni nuevas oraciones
- Ver Guía de Estilo
La traducción está disponible instantaneamente (no hay que compilar, subir, etc.), el sitio tiene funciones de búsqueda, indexación, etc., y se puede usar como ayuda online para PgAdmin3 cambiando en Archivo, Opciones, PG Help Path a http://www.arpug.com.ar/trac/wiki/
Nota: Para los bloques preformateados, agregar #!pre como primera línea para que Trac respete el formato (es normal que en la edición veamos los signos de formato !' y `, en la versión final no deberían aparecer si se especificó correctamente `#!pre`)
Aclaración: No hay que dejar el texto viejo en inglés, y tampoco es necesario poner {nombre} ni similar para marcar el texto traducido por un usuario. Ambas cosas quedan registradas en la Cronología (historial) automáticamente.
Instructivo de Pootle
La herramienta Pootle utiliza archivos Gettext Portable Object (.po):
- pueden ser editados via web (ver siguiente sección)
- o ser descargados, editados con un editor de escritorio, y subidos nuevamente.
Para una ayuda mas detallada, ver documentación oficial
Guía de inicio rápido
- Ingresar a Pootle
- Ir a Registro (si todavia no tienen una cuenta creada):
- Completar los datos y enviar el formulario de registración
- Esperar el código de activación por email
- Ingresar dicho código en el formulario de activación
- Ir a Activar (si creo la cuenta pero no la activó)
- Ingresar el código de activación (llega por email) en el formulario
- Ir a Iniciar Sesión (si ya tiene la cuenta creada y activada):
- Ingresar nombre de usuario y contraseña
- Elegir el Proyecto: PostgreSQL-Doc o PgInstaller (o Prueba de Pootle para probar)
- Elegir el Idioma: Español
- Ir a Mostrar Funciones de Edición
- Ir a Traducción Rápida o Traducir mis cadenas (si se han asignado textos)
- Comienze a traducir completando la casilla de texto!
- Cuando este conforme con la traducción, presione el botón Enviar o Sugerir
- Puede realizar búsquedas ingresando las palabras en el casillero para tal fin
- Al pasar por sobre un texto se habilita la opción Editar
- Puede navegar por los textos usando el botón Saltar (siguiente) o Regresar (anterior)
Guia de Estilo
Para el caso de PgInstaller y OneClickInstaller:
- Se trató de usar un español neutro y se optó por una traducción técnica más literal, en vez de buscar sinónimos o construcciones ideomáticas más correctas (que pueden ser apropiadas en una región pero bastante incomprensibles para otras)
- Los nombres de paquetes, módulos o archivos no se tradujeron. Ej. R-Tree, pero si Criptographic Functions a Funciones criptográficas.
- Las palabras o términos muy técnicos, específicos o de dudosa traducción se tradujeron pero incluyendo entre parentesis el término original o siglas en inglés. Ej. Soporte para Lenguaje Nacional (NLS)
Para el caso de la Documentación:
- Tratar de usar español neutro
- Revisar el Glosario de Términos (y completarlo si encuentran una palabra que no esté registrada).
- Tratar de usar términos cercanos a la palabra en inglés, o que su traducción sea muy conocida.
- No traducir nombres propios (PostgreSQL = PostgreSQL)
- Nunca traducir palabras del lenguaje SQL (Ej. SELECT), nombres de funciones incorporadas (ej now()), etc.
- Traducir ejemplos en la medida de lo posible (nombres de tablas, campos, etc.)
- Tratar de mantener coherencia con lo ya traducido
- Respetar el tiempo verbal original (sobre todo la voz pasiva y tratar de usar pasiva refleja: se habilita... )
- Tratar de eliminar algunas formas redundantes del inglés (por ej. no repetir el sujeto)
- En caso de que la oración sea confusa y/o muy extensa, tratar de resumirla.
- Respetar el formato original.
- No agregar nuevas oraciones ni dividir los párrafos salvo que sea estrictamente necesario.
Glosario de términos
Estos son los términos que estamos usando:
- aggregate: agregado
- array: arreglo
- assert: asegurar (assert)
- autovacuum: vacío automático (autovacuum)
- batch file:
archivo de lote de comandos, secuencia de comandos - breakpoint: punto de interrupción
- buffer: buffer
- byte: byte,
octeto - cache: cache
- cascading: en cascada
- case insensitive: no sensible a mayúsculas/minúsculas
- cast: convertir
- character: carácter
- clause: clausula
- cluster (de base de datos):
conjunto, clúster,grupo, - cluster (de la orden cluster): reordenar
- collation: colación
- commit: comprometer (commit),
confirmar,comitear - command: comando, orden
- command prompt: linea de comando,
simbolo del sistema - compute: computar
- computer: computadora
- conforms: se ajusta
- constraint: restricción
- contrib: contribuidos, contrib
- copyright: copyright,
derechos legales,derechos de autor - count: cantidad, cuenta
- custom: personalizado
- daemon: demonio (daemon)
- data: datos
- database-wide: toda la base de datos
- default: por defecto, predeterminado (the default: lo predeterminado)
- defer: diferir,
postergar - delete: eliminar
- deprecated: depreciado,
desechado,obsoleto - disable: deshabilitar
- double-quoted: encerrado entre comillas dobles
- driver: controlador,
manejador - drop: eliminar, baja?
- enable: habilitar
- error-prone: propenso al error
- failover: failover
- fetch: traer
- fillfactor: factor de relleno (fillfactor)
- firing: disparo
- floating-point numbers: números de punto flotante
- foreing key: clave foránea
- frame: marco
- free space map: mapa de espacio libre (FSM)
- full text search: búsqueda
a/de texto completo - grant: otorgar
- header files: archivos de cabecera
- hint: consejo
- host:
anfitrión, equipo,cliente - ident: ident
- indent: indentar ("sangrar")
- include files: archivos de inclusión
- insert: insertar
- join: junta, combinación
- keyword: palabra clave
- kind: género
- large objects: objetos grandes (LO)
- line break: salto de línea
- locale: configuración regional (locale)
- lock: bloqueo
- logfile: bitácora, archivo de registro
- log in: iniciar sesión
- match: coincidir
- metadata: meta datos
- namespace: espacio de nombre
- operator class: clase de operadores
- overflow: desborde
- owner: propietario
- ownership: propiedad
- packing: empaquetado
- parser: analizador sintáctico
- parse: interpretar
- performance: rendimiento
- permission denied: permiso denegado
- plugin: plugin, enchufable
- populate: poblar
- primary key: clave primaria
- privilege: privilegio
- query: consulta
- random: aleatorio
- release: liberación
- reset: restablecer
- return: devolver, retornar -returning-
- revoke: revocar
- rollback: vuelta atrás
- row: fila, registro
- rule: regla de reescritura
- run:
correr, ejecutar - savepoint: punto de retorno
almacenamiento - scan: búsqueda
- schema: esquema
- script:
guión, script - scratch pad: bloc apuntes
- set: conjunto
- setting: ajuste
- setup: instalador
- setof: conjunto
- skip: ignorar
- socket: socket
- software: software
- standard: estándar
- statement: sentencia, órden
- storage: almacenamiento
- string: cadena
- system-wide: de todo el sistema
- tab: solapa
- tag: etiqueta
- tablespace: espacio de tabla
- template: plantilla
- template flag: bandera de plantilla
- threshold: umbral
- tip: recomendación
- trigger: disparador
- truncate: truncar
- untrusted:
desconfiado,no confiable, untrusted - update: actualizar, modificar?
- vacuum: vaciar
- window: ventana
- wraparound: reciclo (wraparound)
- workaround: arreglo provisorio
Si encuentran un término nuevo (generalmente técnico, de difícil o dudosa traducción), traducirlo, pero agregar dicha traducción a esta lista.
Esto facilita la revisión, ya que no hay que leer la traducción completa, simplemente si surge algún cambio, se soluciona facilmente en Pootle buscando el término en ingles y cambiando a la nueva traducción elegida.
Normas/Tareas/Roles
Pootle tiene varios tipos de usuarios (roles) / fomas de uso, resumiendo bastante habría que definir por lo menos lo siguiente:
- Administradores: Suben y bajan los contenidos, preparan los archivos y pruebas, gestionan los permisos del resto de los usuarios, asignan tareas y metas, etc.
- Traductores: Hacen el trabajo duro. Sugieren traducciones de las cadenas.
- Revisores: Revisan las traducciones sugeridas (las aceptan o rechazan).
- Testers: Esto no es parte de Pootle, pero sería bueno que alguien compare el producto final traducido con los originales como control de calidad.
Obviamente cualquiera puede tener más de un rol.
Para ver el listado completo de tareas (abiertos como tickets) ver:
Nota: para mantenerse informado sobre un ticket, completar el campo CC con el usuario o dirección de mail y presionar guardar. De este modo, nos llegarán notificaciones de cuando se modifiquen los tickets.
Proyectos
PgInstaller (Instalador en Windows):
- Herramienta de traducción: Pootle
- URL de traducción: http://pootle.arpug.com.ar/pootle/es/pginstaller/
- Formato original: XML (WIX)
- Estado: Completado (algunas revisiones pendientes)
- Más información: ver PgInstaller
El instalador de windows utiliza un formato xml especial ( Wix: Windows Installer XML) Desarrollamos scripts para transformar xml a pootle y viceversa. La traducción esta terminada e incorporada al intalador, igualmente son bienvenidas revisiones y sugerencias (mediante pootle).
OneClickInstaller (Instalador en un click):
- Herramienta de traducción: Pootle
- URL de traducción: http://pootle.arpug.com.ar/pootle/es/oneclickinstaller/
- Formato original: LNG (bitrock)
- Estado: Completado
- Más información: ver OneClickInstaller
Este instalador utiliza un formato de archivo especial lng de bitrock. También desarrollamos scripts para transformar xml a pootle y viceversa. La traducción esta terminada e incorporada al intalador, igualmente son bienvenidas revisiones y sugerencias (mediante pootle).
PgAdmin3 (Herramienta de Administración):
- Herramienta de traducción: Pootle
- URL de traducción: http://pootle.arpug.com.ar/pootle/es/pgadmin3/
- Formato original: PO (gettext)
- Estado: mensajes completado, sitio web en curso
- Más información: ver PgAdmin3
Esta herramienta utiliza gettext para la localización (archivos .mo), por lo que para traducir con pootle no hay que hacer transformaciones de ningún tipo. El sitio web (documentación) también se puede traducir por pootle. La traducción de los mensajes esta terminada e incorporada al intalador, igualmente son bienvenidas revisiones y sugerencias (mediante pootle). La traducción del sitio web (administración) esta en curso, colaboradores para la traducción son bienvenidos! También hay otros archivos fuente (ayudas, hints, etc.) que ya estan traducidos anteriormente.
Documentación Oficial
- Método de traducción: Pootle y Wiki
- URL de traducción wiki: wiki:sql-commands.html, wiki:tutorial.html, wiki:datatype.html, wiki:functions.html
- URL de traducción pootle: http://pootle.arpug.com.ar/pootle/es/pgdoc/
- Estado: en curso
Actualmente se está traduciendo la documentación oficial en dos frentes:
- Wiki: Un enfoque desestructurado, para tener una traducción a corto plazo de las secciones principales (tutorial, referencia sql, tipos de datos, funciones), y con la idea de mejorar la documentación con comentarios, nuevos ejemplos, resúmenes, etc.
- Pootle: Un enfoque más conservador, respetando en alguna medida la estructura y formato original de los archivos fuentes (aunque igualmente no se traduce sobre los archivos fuente sgml originales).
Ambos enfoques tratan de que la traducción sea una tarea colaborativa, para que la mayor cantidad de personas puedan colaborar, obteniendo asi resultados más rápidamente y de mejor calidad. Si sabés ingles, ¡estas invitado!
A su vez, ambos enfoques pueden compartir textos traducidos entre si. ya que ambos formatos son similares (si bien es necesario un proceso manual para pasar de una herramienta a otra).
Temas técnicos:
La documentación oficial esta en formato SGML.
Para traducir en Wiki, se copia el SGML convertido a HTML (desde la página oficial de PostgreSQL) y este luego se convierte automáticamente a formato wiki simplificado (ver Instructivo). El formato wiki se convierte automáticamente a HTML y puede descargarse en múltiples formatos (TXT, HTML, PDF, etc.).
Para traducir por Pootle, es necesario convertir del formato SGML a .PO, se debe pasar por XML (formato intermedio), y luego extraer las cadenas, traducirlas, y actualizar los XML. Para traducir, ver Instructivo Para generar los archivos HTML y PDF, se utiliza el formato intermedio XML (DocBook?), reemplazando las cadenas traducidas con las herramientas de pootle. Luego hay que aplicar transformaciones XLST o jade (ver abajo)
La mayoria de estos pasos por el momento no estan automatizados, por lo que se debe solicitar la conversión a los formatos finales para comprobar la traducción por pootle. Por wiki no es necesario, ya que el editor wiki es WYSWYG: en el mimsmo momento que se traduce se ve el resultado final.
Con la traducción en Pootle, tener en cuenta que hay algunos términos que no deben traducirse, por formar parte de índices, vinculos, etc. (formato SGML). Por ello, es recomendable traducir revisando el SGML fuente original y el HTML final, para evitar traducir fraces o palabras que rompan dicho formato. Nuevamente, esto no es necesario con el formato wiki, ya que la indexación y vínculos se arman automáticamente.
Recomendaciones Generales
Revisar recomendaciones, guias de estilo y glosario (arriba). A su vez, a continuación se enlazan recomendaciones de otros proyectos que pueden ser útiles:
- Aclaraciones del proyecto de traducción 6.5
- Guidelines de traducción PgAdmin3
Pasar SGML a XML para POOTLE
Script provisto por alvherrera:
FILE=plpgsql.sgml FILEXML=$(basename $FILE .sgml).xml FILEPO=$(basename $FILE .sgml).po ( echo '<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.2//EN" [ <!entity % version SYSTEM "version.sgml"> %version; <!entity % filelist SYSTEM "filelist.sgml"> %filelist; <!entity reference SYSTEM "reference.sgml"> ]> <book><part>' ; cat $FILE ; echo "</part></book>") | osx -D . -D /pgsql/build/84_rel/doc/src/sgml -x lower - | perl -p -e 's/\[(amp|copy|egrave|gt|lt|mdash|nbsp|ouml|pi|quot|uuml) *\]/\&\1;/g;' -e '$_ .= qq{<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">\n} if $. == 1;' | less > $FILEXML xml2po $FILEXML > $FILEPO
Luego convertir a UTF8.
Mergear XML desde POOTLE y generar HTML
Pasos provisto por alvherrera:
xml2po -p /tmp/plpgsql.po plpgsql.xml > plpgsql-merged.xml xsltproc --stringparam pg.version '8.5devel' /pgsql/source/00head/doc/src/sgml/stylesheet.xsl plpgsql-merged.xml
Generar PDF
Pasos provisto por alvherrera:
Un PDF del documento de plpgsql, usando openjade y pdfjadetex, tal como hace el Makefile para generar el PDF desde los SGML. Hay un problema con los tipos de letra que parece que se "quedan pegados", por ej. después de cambiar a cursiva o a tipo de ancho fijo, éste sigue hasta el final del párrafo en vez de volver al tipo normal. Este problema tiene que ver con que estoy compilando el capítulo de plpgsql individualmente en vez de la documentación completo, así que por favor ignórenlo. Igualmente con el hecho de que no aparecen los títulos, etc. (Si realmente quisiéramos generar manuales en PDF separados de cada cosa, se podría hacer con un poco más de trabajo; lo que pretendo en este momento es justificar que la traducción por Pootle es viable para generar todos los tipos de salida que queramos).
openjade -D /pgsql/source/84_rel/doc/src/sgml -D /pgsql/build/84_rel/doc/src/sgml -d /pgsql/source/84_rel/doc/src/sgml/stylesheet.dsl -t tex -V tex-backend -i output-print -V texpdf-output -V '%paper-type%'=A4 -o plpgsql-A4.tex-pdf /pgsql/source/84_rel/doc/src/sgml/plpgsql.es.xml iconv -f utf8 -t 'latin1//IGNORE' plpgsql-A4.tex-pdf > plpgsql-A4.latin1.tex-pdf pdfjadetex plpgsql-A4.latin1.tex-pdf
Cualquier consulta, dirigirse a la lista de correo ArPug o Fomento (ver Soporte).