Traducir Firefox 3.1, SeaMonkey 2.0 y Thunderbird 3.0 supone trabajar con Mercurial. La documentación es incompleta; si tienes preguntas, por favor, déjate caer por #l10n o #hg en irc.mozilla.org, o pregunta en la página Discusión de este artículo.
Hay varios documentos sobre cómo tratar con Mercurial en MDC, etiquetados con "Mercurial". En particular, la FAQ de Mercurial merece la pena. Para los más impacientes y rápidos, aquí hay algunas órdenes para que descarguéis en-US, un repositorio de idioma y un .mozconfig
que debería permitiros crear paquetes de idioma y binarios.
Herramientas
Existen varias herramientas para conectarse a Mercurial, comenzando, por supuesto, con el cliente de línea de comandos. Sin embargo, para aquellos de vosotros que preferís herramientas GUI, están TortoiseHg para Windows y Mercurial Eclipse para los fans de este entorno de plataforma.
Repositorios
Hay dos repositorios que contienen archivos en-US:
- releases/mozilla-1.9.2 contiene los archivos para Firefox 3.6 y mozilla-central los archivos para Firefox.next (actualmente Firefox 4.0).
- comm-central contiene los archivos para SeaMonkey y Thunderbird que no son parte de Firefox.
Descargar en-US por primera vez
Para descargar los archivos en-US, tendrás que descargar mozilla-1.9.2 (o -central) o comm-central.
Sólo Firefox
Si sólo trabajas con Firefox usa:
hg clone https://hg.mozilla.org/mozilla-central/
Esto creará un clon del repositorio mozilla-1.9.2 en el directorio mozilla-1.9.2.
Cualquier combinación entre Firefox, SeaMonkey y Thunderbird
Si estás trabajando con cualquier combinación de Firefox, SeaMonkey y Thunderbird, usa:
hg clone https://hg.mozilla.org/comm-central/ cd comm-central python client.py checkout
La primera orden creará un clon del repositorio comm-central en el directorio comm-central. La segunda orden cambiará tu directorio actual a ese directorio, comm-central.
La tercera orden creará un clon del repositorio mozilla-1.9.2 y recuperará varios directorios CVS. Los directorios CVS son necesarios para SeaMonkey y Thunderbird, algunos de ellos son código antiguo que SeaMonkey y Thunderbird están en proceso de dejar de usar, y algunas extensiones que todavía no están en Mercurial.
Actualizar en-US
Para actualizar tu copia de trabajo de mozilla-1.9.2, ve a tu directorio mozilla-1.9.2 y ejecuta
hg pull -u
Esto recuperará los nuevos conjuntos de cambios de mozilla-1.9.2 y aplicará esos cambios en tu copia de trabajo.
Para actualizar tu copia de trabajo de comm-central, ve a tu directorio comm-central y ejecuta
python client.py checkout
Esto recuperará los últimos cambios de comm-central, mozilla-1.9.2 y el resto de orígenes, y aplicará dichos cambios en tu copia de trabajo.
Descargar tu idioma
Todos los idiomas están en un MXR, . Los repositorios están, no obstante, separados: puedes conseguir una lista de los repositorios en . Para clonar tu localización, por favor usa (en este caso "ab-CD" es el código de idioma, sustitúyelo al correspondiente)
hg clone https://hg.mozilla.org/releases/l10n-mozilla-1.9.2/ab-CD/
o actualiza con
hg pull -u
Subir tus cambios a Mozilla
Con Mercurial trabajas en tu propio repositorio. Antes de hacer commit de tus propios cambios debes asegurarte de que no ha habido cambios más recientes al repositorio remoto; para ello, actualiza tu idioma como se indica en la sección anterior.
Tras terminar un cambio o conjunto de cambios y asegurarte de que tienes tu repositorio local actualizado, debes aplicar éstos (commit):
hg commit -m "message identifying the change (bug 555)"
El mensaje debe estar en inglés, por eso hemos dejado el ejemplo igual al documento original.
A diferencia de CVS esta orden no aplicará tus cambios al repositorio de Mozilla. Primero necesitas subir los cambios (push). Para subir a l10n-central y otros repositorios alojados en Mozilla debes tener acceso de escritura (committer) y debes editar el archivo (tu-raíz-hg-local)/.hg/hgrc
(observa que éste NO es tu ~/.hgrc
) para añadir esta línea (reemplazando email@host con tu nombre de usuario en Mozilla):
[paths] default = https://hg.mozilla.org/releases/l10n-mozilla-1.9.2/ab-CD/ default-push = ssh://hg.mozilla.org/releases/l10n-m...a-1.9.2/ab-CD/ central = ssh://hg.mozilla.org/l10n-central/ab-CD/
Tendrás que decirle a ssh qué cuenta usar para subir tus cambios, editando ~/.ssh/config
y añadiendo las líneas
Host hg.mozilla.org User [email protected]
user@domain
es tu cuenta, con un @ real en lugar del % que usabas con CVS. Tras ello, podrás subir tu trabajo al repositorio (y comprobar el resultado en el panel de control):
hg push
Un .mozconfig
Firefox a través de mozilla-central
Si has seguido los pasos anteriores para descargar sólo mozilla-1.9.2, tu estructura de directorios tendrá este aspecto:
mozilla-1.9.2 + browser de + browser
y un .mozconfig sería así:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../fx-de ac_add_options --with-l10n-base=.. ac_add_options --disable-compile-environment ac_add_options --enable-application=browser
Pondrías ese archivo en el directorio mozilla-1.9.2.
Si deseas compilar directamente una versión localizada, añade la línea
ac_add_options --enable-ui-locale=<language code>
Otra opción es no compilar con esto, y crear y usar un paquete de idioma como se explica a continuación.
Firefox a través de comm-central
Si has seguido los pasos anteriores para descargar comm-central, tu estructura de directorios tendrá este aspecto:
comm-central + mozilla + browser de + browser
y un .mozconfig tendría esta apariencia:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../../fx-de ac_add_options --with-l10n-base=.. ac_add_options --disable-compile-environment ac_add_options --enable-application=browser
make -f client.mk configure
debe ejecutarse desde el directorio comm-central/mozilla.La línea --with-l10n-base
es correcta con únicamente "..
". Esto se debe a la manera en que funciona el entorno dentro de comm-central.
El archivo debería colocarse en comm-central/mozilla.
La misma observación se aplica a la compilación de una versión localizada.
Thunderbird y SeaMonkey
Si has seguido los pasos anteriores para descargar comm-central, tu estructura de directorios tendrá este aspecto:
comm-central + mail + suite de + mail + suite
y un .mozconfig para Thunderbird se parecería a éste:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../tb-de ac_add_options --with-l10n-base=.. ac_add_options --disable-compile-environment ac_add_options --enable-application=mail
Sustituye tb-de
con sm-de
y mail
con suite
para tener un .mozconfig para SeaMonkey.
El archivo debería colocarse en comm-central.
La misma observación se aplica a la compilación de una versión localizada.
Ejecuta la orden make -f client.mk configure
desde el directorio comm-central.
Compare-locales
Compare-locales funciona igual que lo hacía anteriormente, para Firefox:
compare-locales mozilla-central/browser/locales/l10n.ini . de
o para Thunderbird:
compare-locales comm-central/mail/locales/l10n.ini . de
Sustituye mail con suite si quieres comprobar SeaMonkey.
Construir paquetes de idiomas, etc.
Hay un pequeño cambio aquí, tienes que añadir --with-l10n-base
como argumento de configure, apuntando al directorio base de tu repositorio l10n. Sigue Creating a Language Pack, ajustando las rutas según sea necesario.