los archivos fuente a traducir se encuentran en el directorio src/ de nuestros repositorios git.
=> https://codeberg.org/sejo/compudanzas compudanzas en codeberg
=> https://tildegit.org/sejo/compudanzas compudanzas en tildegit
## formato .gmo
los archivos están en el formato ".gmo" que es básicamente gemtext (".gmi") con un par de diferencias:
### tipos de línea
existen dos nuevos tipos de línea, "+" y "&": el primero es para agregar html directamente a la salida en html, y el segundo es para agregar gemtext directamente a la salida en gemtext.
```
+ <p>html crudo para la versión web</p>
& gemtext crudo para la versión gemini
```
por el momento, el único uso que se le da a estos tipos de línea es la creación de tablas en html, y su respectiva "traducción" a gemtext.
como ejemplo se puede consultar el archivo fuente de la página de {running}.
la segunda línea de los archivos puede estar vacía o con un formato como el siguiente para indicar el idioma en cuestión:
```
lang=es en->{translation}
```
la primera parte indica el idioma de la página, y la segunda (opcional) indica el nombre de la página que contiene la traducción o versión en ese idioma.
como sea, nota que las instrucciones son idénticas si utilizas una cuenta en tildegit, solo hay que reemplazar "codeberg.org" por "tildegit.org" en las instrucciones donde aparezca.
=> https://tildegit.org/sejo/compudanzas compudanzas en tildegit
este directorio ha de ser diferente del que hayas clonado del repositorio original (ese clon ya lo puedes eliminar y solo trabajar con este nuevo que es el de tu cuenta :)
(si le pusiste contraseña a tu llave SSH, el comando te la va a solicitar antes de descargar)
### entra al directorio
entramos al directorio, y ya casi todo estará listo para colaborar!
```
$ cd compudanzas/
```
### agrega el "upstream"
por último, esto que sigue es necesario para que puedas obtener las actualizaciones que sucedan en el repositorio original (llamado "upstream" en estos contextos); más adelante lo comentamos pero por el momento solo hay que configurarlo:
IMPORTANTE: antes de hacer cualquier modificación, hay que hacer una "rama" (branch) nueva, que en estos contextos se dice que es una "feature branch" (una rama para implementar una nueva "feature", en este caso una traducción)
```
$ git checkout -b traducción_de_equis_página
```
### cambios
ahora puedes proceder a agregar y/o editar archivos .gmo dentro del directorio src/
para agregarlos al control de cambios de git, usa:
```
$ git add src/NOMBRE_DEL_ARCHIVO.gmo
$ git commit -m "DESCRIPCIÓN DEL CAMBIO QUE REALIZASTE"
```
también puedes usar lo siguiente para agregar todos los archivos que hayan tenido cambios:
```
$ git add .
$ git commit -m "DESCRIPCIÓN DEL CAMBIO QUE REALIZASTE"
```
### sincronización
cuando desees guardar tus cambios en tu repositorio remoto, usa el siguiente comando:
```
$ git push
```
(si tu llave SSH tiene contraseña, el comando te la va a solicitar)
### actualización
para mantener tu repositorio actualizado respecto a "upstream", por ejemplo justo antes de empezar a traducir un archivo, utiliza las siguientes instrucciones:
```
$ git pull --rebase upstream main
$ git pull
```
de cualquier forma, siempre conviene estar en comunicación con nosotres para que no suceda que estamos modificando considerablemente algún archivo en común.
## pull request
### comprobación previa
antes de hacer un "pull request" para incorporar tus cambios en el sitio de compudanzas, asegúrate de haber seguido los pasos anteriores, y de haber ejecutado el generador para ver si todo resultó correctamente en términos de los archivos de salida:
```
$ ./generasitio.sh
```
recuerda no hacer "wikilinks" a páginas que no existen: usa la <[notación provisional]> o crea el archivo correspondiente, con un título y al menos una breve descripción.
nota que la interfaz, debajo del título y la descripción del repositorio, tiene un botón que dice "Rama:" (o Branch), posiblemente seguido por el nombre "main", que es el nombre de nuestra rama principal.
presiona el botón y elige la rama que creaste para tu colaboración.
a continuación presiona el botón al lado que dice "Nuevo pull request"; esto te llevará a un formulario donde se te da la opción de agregar comentarios y de crear el pull request.
¡y listo! el PR ahora se mostrará en el repositorio principal (upstream) de compudanzas, y recibiremos una notificación para revisarlo e incorporarlo.
por nuestra parte, ya que lo revisemos e incorporemos a la rama "main", generaremos el sitio localmente, lo publicaremos en los sitios web y gemini, y te lo haremos saber: ¡muchas gracias!