Skip to content

Commit cfef68c

Browse files
Improvements to translation guides (#420)
* review general translation guides and add links to it * Add Spanish translation guide Co-authored-by: Patricia A. Loto <[email protected]> * include result of discussion * add global translation guidelines --------- Co-authored-by: Patricia A. Loto <[email protected]>
1 parent 13bc8ad commit cfef68c

File tree

5 files changed

+168
-53
lines changed

5 files changed

+168
-53
lines changed

CONTRIBUTING.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ NumFOCUS invites the community to make suggestions for improvements to the DISCO
1010
- [Problems or Issues](#problems-or-issues)
1111
- [Content and Design](#content-and-design)
1212
- [Bug Fixes](#bug-fixes)
13+
- [Translations](#translations)
1314
- [Pull Request Guidelines](#pull-request-guidelines)
1415
- [Commit Messages](#commit-messages)
1516
- [Review Process](#review-process)
@@ -53,6 +54,10 @@ For technical issues with the book:
5354
- **Reference the issue** in your pull request.
5455
- **Test your changes locally** following our [build instructions](README.md) before submitting.
5556

57+
#### Translations
58+
59+
See the [translator guide](./docs/translation/Translators_Guide.md) for all details on how to contribute translations to the Cookbook.
60+
5661
## Pull Request Guidelines
5762

5863
When submitting pull requests:

Translation.md renamed to docs/translation/Translation.md

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,12 @@
22

33
To support localization efforts, follow these steps to extract translatable strings and update translations.
44

5-
## Generating `.pot` Files
5+
> [!IMPORTANT]
6+
> The target audience of this document are language coordinators. If you are interested
7+
> in translating or are unsure about the meaning of "language coordinator" please read
8+
> [the translator guide](./Translators_Guide.md) first.
9+
10+
## Generating `.pot` Files
611

712
To extract translatable text and generate `.pot` files, run:
813

@@ -24,32 +29,29 @@ sphinx-intl update -p DISCOVER/_build/gettext -l <language-code>
2429
Replace <language-code> with your target language (e.g., en, fr, de).
2530

2631
## Applying Translations
27-
Once .po files are updated, compile them to .mo for use in the built documentation:
32+
Once .po files are updated, and contain translations, you can rebuild the book to see the translations applied:
2833

2934
```sh
3035
WEBSITE_LANGUAGE=<language-code> sphinx-build -b html DISCOVER/ DISCOVER/_build/html
31-
3236
```
33-
After compiling, rebuild the book to see the translations applied:
3437

35-
#### **Option 1: Using a Local Server**
38+
### Opening the translated website preview
3639

37-
Run the following command to start a local server:
40+
#### **Option 1: Using a Local Server**
41+
42+
Run the following command to start a local server:
3843
```sh
3944
python -m http.server 8000 --directory DISCOVER/_build/html/
4045
```
41-
Then, open [`http://localhost:8000`](http://localhost:8000) in your browser.
46+
Then, open [`http://localhost:8000`](http://localhost:8000) in your browser.
4247

43-
#### **Option 2: Opening the File Directly**
48+
#### **Option 2: Opening the File Directly**
4449

45-
Alternatively, you can open the book directly by navigating to:
50+
Alternatively, you can open the book directly by navigating to:
4651
```
4752
DISCOVER/_build/html/index.html
4853
```
49-
and opening it in your browser.
50-
51-
52-
> Note: Contributors working on multilingual support should ensure .po file updates are included in commits.
54+
and opening it in your browser.
5355

5456

5557
## Translation Workflow with Transifex
@@ -78,9 +80,13 @@ To authenticate, create a ```.transifexrc``` file in your home directory. Refer
7880
Get your token from [Transifex Account Settings](https://app.transifex.com/user/settings/api/).
7981

8082

81-
### Step 3: Updating ```.tx/config```
83+
### Step 3: Updating ```.tx/config``` (optional)
8284

83-
The ```.tx/config``` file maps source files to Transifex resources. You’ll only need to modify this whenever a new release is made:
85+
The ```.tx/config``` file maps source files to Transifex resources.
86+
The content on Transifex is only updated whenever a new release is published,
87+
and `.tx/config` will only need updates if the files have changed.
88+
Even if publishing a new release, if only the content within the files
89+
has changed you can skip this step.
8490

8591
Use the CLI to register new resources:
8692
```
@@ -99,17 +105,27 @@ Refer to the [Transifex CLI reference](https://developers.transifex.com/docs/cli
99105
### Step 4: Pushing Source and Translation Files
100106

101107
Perform the following steps only when a release is made:
102-
- Regenerate ```.po``` files using ```sphinx-gettext``` and ```sphinx-intl```.
108+
- Regenerate `.pot` and `.po` files using ```sphinx-gettext``` and ```sphinx-intl```.
103109
- Open a PR with the updated files.
104110
- Push to Transifex:
105111
```
106112
tx push -s -t
107113
```
108114

109-
This uploads both source and translation files.
115+
This uploads both source and translation files to Transifex.
110116

111117
### Step 5: Pulling Translations
112-
To fetch updated translations from Transifex (done manually before publishing):
118+
Whenever there have been significant updates to the translations on Transifex
119+
these should be pulled locally and a PR opened against the latest published release.
120+
What does "significant updates" means will depend on availability of
121+
language coordinators and maintainers.
122+
123+
> [!IMPORTANT]
124+
> Before fetching make sure you are in the `X.Y-translations` branch of the latest release.
125+
> Otherwise the translations being pulled won't match the content and it will be more difficult
126+
> to open a PR against the correct branch to get the translations deployed on the website.
127+
128+
To fetch updated translations from Transifex:
113129
```
114130
tx pull -a -m reviewed
115131
```

Translators_Guide.md renamed to docs/translation/Translators_Guide.md

Lines changed: 46 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,23 @@ This guide is your companion throughout the DISCOVER Cookbook translation journe
1414

1515
We’re inviting volunteer translators to help make the DISCOVER Cookbook accessible to communities around the world. Here's how to join:
1616

17-
### 1. Read the Blog Post
17+
### Read the Blog Post
1818

1919
The blog post is your gateway to the project. It outlines our mission to make inclusive event planning resources accessible across languages and cultures. You’ll learn about the Cookbook’s goals, the impact of translation, contributor benefits, and how to apply.
2020

2121
🔗 [Become a Volunteer Translator](https://numfocus.medium.com/help-us-bring-the-discover-cookbook-to-the-world-become-a-volunteer-translator-efe13ee3bc0d)
2222

2323
---
2424

25-
### 2. Explore the Cookbook
25+
### Explore the Cookbook
2626

2727
Get familiar with the content and tone of the DISCOVER Cookbook before you begin translating.
2828

2929
🔗 [DISCOVER Cookbook](https://discover-cookbook.numfocus.org/intro.html)
3030

3131
---
3232

33-
### 3. Roles to Join
33+
### Translation related roles within the team
3434

3535
To ensure smooth collaboration and high-quality translations, our Transifex team is organized into three key roles. Each plays a vital part in the localization workflow:
3636

@@ -47,57 +47,51 @@ Whether you're new to localization or a seasoned polyglot, this role is a great
4747

4848
---
4949

50-
#### Language Coordinator
50+
#### Reviewer
5151

52-
Language Coordinators oversee translation efforts for a specific language. They act as language-level team leads, guiding contributors and ensuring consistency.
52+
Reviewers are the quality gatekeepers. They ensure translations are accurate, culturally appropriate, and aligned with our standards.
5353

5454
**Responsibilities:**
5555

56-
- Invite new members to their language team
57-
- Approve or deny join requests
58-
- Assign or change contributor roles
59-
- Start and moderate team discussions
6056
- Review and proofread translations
61-
- Submit finalized translations
57+
- Submit approved translations
58+
- Participate in team discussions
6259

63-
If you're a seasoned contributor and passionate about your language, this role lets you help steward quality and collaboration.
60+
If you're confident in your translation skills and detail-oriented, this role is a great way to elevate the project’s quality.
6461

6562
---
6663

67-
#### Reviewer
64+
#### Language Coordinator
6865

69-
Reviewers are the quality gatekeepers. They ensure translations are accurate, culturally appropriate, and aligned with our standards.
66+
Language Coordinators oversee translation efforts for a specific language. They act as language-level team leads, guiding contributors and ensuring consistency.
7067

7168
**Responsibilities:**
7269

70+
- Invite new members to their language team
71+
- Approve or deny join requests
72+
- Assign or change contributor roles
73+
- Start and moderate team discussions
7374
- Review and proofread translations
74-
- Submit approved translations
75-
- Participate in team discussions
75+
- Submit finalized translations
7676

77-
If you're confident in your translation skills and detail-oriented, this role is a great way to elevate the project’s quality.
77+
If you're a seasoned contributor and passionate about your language, this role lets you help steward quality and collaboration.
7878

7979
---
8080

81-
8281
> Please note, most contributors begin as Translators. As you gain experience and contribute consistently, you may be invited to take on Reviewer or Language Coordinator responsibilities. This gradual progression ensures everyone feels confident and supported in their role.
8382
8483
---
8584

86-
### 4. Apply
85+
### Apply - Roll-in Basis
8786

88-
Fill out the translator application form linked in the blog post
89-
- **Deadline:** Wednesday, September 24th, 2025 (AoE)
90-
- **Notification:** Wednesday, October 1st, 2025 (AoE)
91-
92-
----
87+
We are onboarding translators on a rolling basis. Once accepted, you’ll be added to the platforms and can begin contributing right away.
9388

94-
### 5. Start Your Role
89+
Fill out the translator application form linked in the blog post.
9590

96-
The translation period runs from early October to the end of October.
91+
----
9792

98-
- **Translation Period:** Monday, October 6th, 2025
93+
### Start Your Role
9994

100-
---
10195

10296
## Onboarding & Access
10397

@@ -111,25 +105,43 @@ Once selected, you’ll receive access to the following platforms:
111105

112106
> Please note, no git or GitHub knowledge is required to become a translator to DISCOVER-Cookbook
113107
108+
Contributors will be acknowledged in the repository [README.md](../../README.md#contributors-)
109+
114110
---
115111

116112
## 🛠Instructions for Translators
117113

118114
### How to Use Transifex
119115

120-
Follow the official instructions here:
116+
Follow the official instructions here:
121117
🔗 [Guide for Translators](https://help.transifex.com/en/articles/6248698-getting-started-as-a-translator)
122118

123-
### GitHub Repository
119+
### General translation guidelines
124120

125-
The source files and documentation are hosted on GitHub.
126-
🔗 [DISCOVER Cookbook GitHub Repo](https://github.com/numfocus/DISCOVER-Cookbook)
121+
The Cookbook is a static website, so the content will be translated but the structure and filenames will not.
122+
Consequently, when translating links or cross-references, the target should not be modified:
123+
`[message](target)` will become `[translated message](target)`.
127124

125+
For example:
128126

129-
---
127+
```none
128+
See more details at the [venue section](Venue.md)
129+
Lea más en la [sección sobre lugar de reunión](Venue.md)
130+
```
130131

131-
## The Procedure – Roll-in Basis
132+
The exception to this would be for example Wikipedia links that are available in the translated
133+
language too which should be translated.
132134

133-
We are onboarding translators on a rolling basis. Once accepted, you’ll be added to the platforms and can begin contributing right away.
135+
You should also aim for formatting markup like bold or italics, and parenthesis to match the source
136+
but defer to the specific language guidelines for exceptions to this. A common exception
137+
will be adding parenthesis that aren't in the source to the translation to indicate a link
138+
is not available in that language. Transifex generally complains when that happens but it is
139+
safe to ignore the warning in such cases.
140+
141+
### Language specific translation guides
134142

143+
The translators of each language team work together to define a style guide
144+
for the translation content and a glossary. Here are the available resources:
135145

146+
* [Spanish translation guide](./es.md) (only available in Spanish)
147+
* Guides for other languages are on standby waiting for translators.

docs/translation/es.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Guia de traducción
2+
3+
Este recurso ha sido adaptado principalmente de [Metadocencia](https://doi.org/10.5281/zenodo.14416731)
4+
y del grupo de traducción de Python [python-docs-es](https://python-docs-es.readthedocs.io/es/3.13/translation-memory.html).
5+
6+
Recomendamos revisar el documento entero antes de empezar a traducir.
7+
8+
9+
> [!IMPORTANT]
10+
> Las traducciones siempre van a ser revisadas por alguna otra persona.
11+
> Consequentemente, si te bloqueas con algun termino o frase concreto,
12+
> simplemente dejalo tal cual o como un borrador de traducción e indicalo
13+
> para discutirlo con quien revise el contenido.
14+
15+
## Fuentes recomendadas
16+
17+
### Diccionario Panhispánico de dudas
18+
19+
* https://www.rae.es/dpd/
20+
21+
Obra orientada a resolver dudas en diferentes áreas de la lengua española: ortografía, sintaxis, gramática...
22+
23+
### IATE - Terminologia de la Unión Europea
24+
25+
* https://iate.europa.eu/home
26+
27+
Base de datos de las traducciones oficiales de la Unión Europea. Permite búsqueda por término y sector.
28+
29+
## Guia de estilo
30+
31+
### Directrices generales
32+
33+
Se priorizará la segunda persona del singular no formal más extendida **TU** frente al formal _USTED_ o al menos extendido _VOS_. Para el plural, se usará **USTEDES** en lugar de _VOSOTROS/AS_ por las mismas razones.
34+
35+
Trabaja con un español neutro en la medida de lo posible. Evita palabras, términos o jerga específica de una determinada región o país.
36+
37+
Se intentará mantener la neutralidad de genero en las expresiones cuando fuera posible. Para eso, se utilizaran pronombres como quienes, quien, alguien. Y para sustantivos colectivos, comunidad, personas o grupo.
38+
39+
En muchos casos el mejor criterio es pensar en el vocabulario que utilizamos cuando le explicamos a otra persona, o en el trabajo. En muchas ocasiones la versión en inglés o “spanglish” de la palabra es mucho mejor que decir “ventana emergente” (para pop-up).
40+
41+
### Títulos
42+
En títulos de sección o capítulo solo se usará mayúscula en la primera palabra salvo nombre propios, en contraste con el inglés, que lo hace en todas las palabras principales (es decir, todas las palabras del título excepto conectores).
43+
44+
### Enlaces
45+
Para la traducción de links de artículos o sitios en inglés, se traduce el nombre del sitio o artículo y al final se agrega la leyenda: “Disponible solo en inglés”. Siempre y cuando dicho sitio no contenga la traducción al español.
46+
47+
Ejemplo
48+
49+
* Enfoques inclusivos de reclutamiento y divulgación - Disponible solo en inglés. (https://www.numfocus.org/blog/inclusive-approaches-to-recruitment-outreach-notes-from-the-disc-unconference/)
50+
51+
### Referencias bibliográficas
52+
53+
En el caso de citas bibliográficas, se sigue la recomendación de [normas APA](https://normas-apa.org/citas/como-citar-una-fuente-de-un-idioma-extranjero-y-su-traduccion/):
54+
55+
> la referencia para una fuente no traducida en un idioma que no sea el español debe seguir el formato de estilo APA típico para la fuente (por ejemplo, un libro). Presente el título original de la obra seguido de la traducción al español del título entre corchetes
56+
57+
Así, por ejemplo:
58+
59+
* Versión original:
60+
- Wilkinson, M. D. et al. The FAIR Guiding Principles for scientific data management and stewardship. Sci.Data 3:160018, doi: 10.1038/sdata.2016.18 (2016)
61+
* Versión traducida:
62+
- Wilkinson, M. D. et al. The FAIR Guiding Principles for scientific data management and stewardship [Los principios guía FAIR para gestión y administración de datos científicos]. Sci.Data 3:160018, doi: 10.1038/sdata.2016.18 (2016)
63+
64+
65+
### Siglas
66+
Pasar la sigla al español siempre que sea lógico. En la primera mención se incluyen términos y siglas en español e inglés.
67+
68+
Por ejemplo,
69+
70+
* Plan de Gestión de Software (PGS) (en inglés, Software Management Plan, SMP)
71+
72+
A partir de la segunda aparición se menciona sola la sigla.
73+
74+
## Glosario
75+
En caso de duda sobre algun término que aparezca multiples veces, se recomienda
76+
crear un hilo en Discord para discutir las opciones de traducción con el resto del equipo.
77+
78+
* **Attendee -> Asistente** Se recomienda mantener la distinción original entre participante (_participant_) y asistente (_attendee_)
79+
* **Cookbook -> guía**
80+
* **Participant -> Participante** Se recomienda mantener la distinción original entre participante (_participant_) y asistente (_attendee_)
81+
* **Speaker -> Ponente**
82+
* **Sponsor -> _sponsor_**

index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ <h2 class="h3 mb-0">Development Version</h2>
140140
<a href="https://github.com/numfocus/DISCOVER-Cookbook/issues/new?template=new_chapter_proposal.yml" class="btn btn-success btn-sm"><i class="bi bi-journal-plus me-1"></i> Write Chapter</a>
141141
<a href="https://github.com/numfocus/DISCOVER-Cookbook/issues/new?template=content_enhancement.yml" class="btn btn-outline-secondary btn-sm"><i class="bi bi-pen"></i> Improve Content</a>
142142
<a href="https://github.com/numfocus/DISCOVER-Cookbook/issues/new?template=bug_report.yml" class="btn btn-outline-danger btn-sm"><i class="bi bi-bug me-1"></i> Report Bug</a>
143-
<a href="https://github.com/numfocus/DISCOVER-Cookbook/pull/377" class="btn btn-outline-success btn-sm"><i class="bi bi-translate"></i> Help Translate</a>
143+
<a href="https://github.com/numfocus/DISCOVER-Cookbook/tree/main/docs/translation/Translators_Guide.md" class="btn btn-outline-success btn-sm"><i class="bi bi-translate"></i> Help Translate</a>
144144
</div>
145145
</div>
146146
</div>

0 commit comments

Comments
 (0)