|
| 1 | +# Transifex Translator Setup & Getting Started Guide |
| 2 | + |
| 3 | +**Project:** Punjabi (pa) Python Documentation |
| 4 | +**Platform:** Transifex |
| 5 | +**Audience:** Punjabi Translation Contributors |
| 6 | + |
| 7 | +--- |
| 8 | + |
| 9 | +## 1. What You Need |
| 10 | + |
| 11 | +You only need: |
| 12 | + |
| 13 | +* A Transifex account |
| 14 | +* Access to the Punjabi (pa) translation team |
| 15 | +* Your assigned worklist |
| 16 | +* The project Style Guide |
| 17 | +* The project Glossary |
| 18 | + |
| 19 | +You do **not** need: |
| 20 | + |
| 21 | +* A GitHub fork |
| 22 | +* A local clone of the repository |
| 23 | +* Git/GitHub knowledge |
| 24 | +* Pull requests |
| 25 | + |
| 26 | +All translation work is done directly on Transifex. |
| 27 | + |
| 28 | +--- |
| 29 | + |
| 30 | +# 2. Sign In to Transifex |
| 31 | + |
| 32 | +Go to: |
| 33 | + |
| 34 | +https://app.transifex.com/ |
| 35 | + |
| 36 | +Sign in using the account that was added to the Punjabi translation team. |
| 37 | + |
| 38 | +After you are approved as a translator, the project should appear in your Transifex dashboard. Transifex's current translator documentation confirms that approved team members can access the project from their dashboard and begin translating. |
| 39 | + |
| 40 | +--- |
| 41 | + |
| 42 | +# 3. Open the Python Documentation Project |
| 43 | + |
| 44 | +From your Transifex dashboard: |
| 45 | + |
| 46 | +1. Find the Python Documentation project. |
| 47 | +2. Open the project. |
| 48 | +3. Select the **Punjabi (pa)** language. |
| 49 | +4. Open the resource assigned to you. |
| 50 | + |
| 51 | +If you cannot see the Punjabi language or the assigned resource, **do not create another project or request another language**. Contact the coordinator. |
| 52 | + |
| 53 | +--- |
| 54 | + |
| 55 | +# 4. Open the Translation Editor |
| 56 | + |
| 57 | +Transifex provides a Web Editor where translators can work directly in their browser. |
| 58 | + |
| 59 | +The general path is: |
| 60 | + |
| 61 | +**Dashboard → Editor → Project → Resource → Punjabi (pa)** |
| 62 | + |
| 63 | +Transifex's current documentation describes this as the normal way to access a resource for translation. |
| 64 | + |
| 65 | +--- |
| 66 | + |
| 67 | +# 5. Select Your Assigned Resource |
| 68 | + |
| 69 | +For example, if your worklist says: |
| 70 | + |
| 71 | +`library-fileinput` |
| 72 | + |
| 73 | +select that resource. |
| 74 | + |
| 75 | +You will see the strings belonging to that resource. |
| 76 | + |
| 77 | +Do not start another resource unless the coordinator asks you to. |
| 78 | + |
| 79 | +This prevents multiple contributors from unknowingly working on the same resource. |
| 80 | + |
| 81 | +--- |
| 82 | + |
| 83 | +# 6. Find Untranslated Strings |
| 84 | + |
| 85 | +Once the resource is open, you will see the list of strings. |
| 86 | + |
| 87 | +Use the: |
| 88 | + |
| 89 | +**Untranslated** |
| 90 | + |
| 91 | +filter/tab. |
| 92 | + |
| 93 | +This shows strings that still need translation. Transifex provides filters such as **All**, **Untranslated**, and **Unreviewed** in the Web Editor. |
| 94 | + |
| 95 | +--- |
| 96 | + |
| 97 | +# 7. Translate a String |
| 98 | + |
| 99 | +Click an untranslated string. |
| 100 | + |
| 101 | +You will see: |
| 102 | + |
| 103 | +**Source** |
| 104 | + |
| 105 | +The original English text. |
| 106 | + |
| 107 | +**Translation** |
| 108 | + |
| 109 | +The field where you enter the Punjabi translation. |
| 110 | + |
| 111 | +Example: |
| 112 | + |
| 113 | +Source: |
| 114 | + |
| 115 | +`Input and Output` |
| 116 | + |
| 117 | +Translation: |
| 118 | + |
| 119 | +`ਇਨਪੁੱਟ ਅਤੇ ਆਉਟਪੁੱਟ` |
| 120 | + |
| 121 | +Enter your Punjabi translation in the translation field. |
| 122 | + |
| 123 | +--- |
| 124 | + |
| 125 | +# 8. Save the Translation |
| 126 | + |
| 127 | +After entering your translation, use the **Save** option in the editor. |
| 128 | + |
| 129 | +Do not assume that typing the translation automatically saves it. |
| 130 | + |
| 131 | +Transifex allows you to save an individual translation or save multiple drafts while working. |
| 132 | + |
| 133 | +After saving, move to the next untranslated string. |
| 134 | + |
| 135 | +--- |
| 136 | + |
| 137 | +# 9. Important: Preserve Code and Markup |
| 138 | + |
| 139 | +Python documentation contains technical formatting. |
| 140 | + |
| 141 | +You may encounter things such as: |
| 142 | + |
| 143 | +`Python` |
| 144 | + |
| 145 | +`print()` |
| 146 | + |
| 147 | +`os.path` |
| 148 | + |
| 149 | +`:class:` |
| 150 | + |
| 151 | +`:func:` |
| 152 | + |
| 153 | +`{name}` |
| 154 | + |
| 155 | +`%s` |
| 156 | + |
| 157 | +``` |
| 158 | +.. code-block:: python |
| 159 | +``` |
| 160 | + |
| 161 | +Do **not** translate or modify Python code, identifiers, Sphinx roles, placeholders, or markup unless the project guidelines specifically say otherwise. |
| 162 | + |
| 163 | +For example: |
| 164 | + |
| 165 | +Source: |
| 166 | + |
| 167 | +`Use the :func:\`print` function.` |
| 168 | + |
| 169 | +Do not change: |
| 170 | + |
| 171 | +`:func:\`print`` |
| 172 | + |
| 173 | +Translate the surrounding natural-language text while preserving the Sphinx markup. |
| 174 | + |
| 175 | +--- |
| 176 | + |
| 177 | +# 10. Follow the Project Glossary |
| 178 | + |
| 179 | +Before translating technical terms, check the project's Glossary. |
| 180 | + |
| 181 | +The glossary exists to keep terminology consistent across the entire Punjabi documentation. |
| 182 | + |
| 183 | +If you find a technical term that is not covered by the glossary and you are unsure how it should be translated: |
| 184 | + |
| 185 | +**Do not guess.** |
| 186 | + |
| 187 | +Ask the coordinator. |
| 188 | + |
| 189 | +A terminology decision can then be discussed and, if necessary, added to the glossary for future translators. |
| 190 | + |
| 191 | +--- |
| 192 | + |
| 193 | +# 11. Follow the Style Guide |
| 194 | + |
| 195 | +Always follow the project Style Guide when translating. |
| 196 | + |
| 197 | +Pay particular attention to: |
| 198 | + |
| 199 | +* Punjabi grammar |
| 200 | +* Natural Punjabi wording |
| 201 | +* Technical terminology |
| 202 | +* English technical terms that should remain unchanged |
| 203 | +* Code formatting |
| 204 | +* Sphinx/RST markup |
| 205 | +* Placeholders |
| 206 | +* Consistency with existing translations |
| 207 | + |
| 208 | +The goal is not to translate English word-for-word. |
| 209 | + |
| 210 | +The goal is to produce **clear, natural, technically accurate Punjabi documentation**. |
| 211 | + |
| 212 | +--- |
| 213 | + |
| 214 | +# 12. If Transifex Shows a Warning or Error |
| 215 | + |
| 216 | +Transifex performs translation checks when translations are saved. |
| 217 | + |
| 218 | +You may see warnings or errors related to things such as: |
| 219 | + |
| 220 | +* Missing placeholders |
| 221 | +* Incorrect formatting |
| 222 | +* Variables |
| 223 | +* Code/markup |
| 224 | +* Numbers |
| 225 | +* Other formatting requirements |
| 226 | + |
| 227 | +If Transifex reports an error, read the message carefully and correct the translation before saving again. Transifex documents these checks as part of the Web Editor workflow. |
| 228 | + |
| 229 | +If you don't understand the warning, contact the coordinator. |
| 230 | + |
| 231 | +--- |
| 232 | + |
| 233 | +# 13. When Have You Finished a Resource? |
| 234 | + |
| 235 | +A resource is considered ready for review when: |
| 236 | + |
| 237 | +* All untranslated strings have been translated. |
| 238 | +* Your translations have been saved. |
| 239 | +* Python code and identifiers are preserved. |
| 240 | +* Placeholders are preserved. |
| 241 | +* RST/Sphinx markup is preserved. |
| 242 | +* You have checked the Style Guide and Glossary. |
| 243 | +* You have informed the coordinator. |
| 244 | + |
| 245 | +Do not mark something as reviewed yourself unless you have been given reviewer permissions. |
| 246 | + |
| 247 | +--- |
| 248 | + |
| 249 | +# 14. What Happens After You Finish? |
| 250 | + |
| 251 | +Your workflow ends at Transifex. |
| 252 | + |
| 253 | +The process is: |
| 254 | + |
| 255 | +**Translator** |
| 256 | + |
| 257 | +↓ |
| 258 | + |
| 259 | +Translate on Transifex |
| 260 | + |
| 261 | +↓ |
| 262 | + |
| 263 | +Save translations |
| 264 | + |
| 265 | +↓ |
| 266 | + |
| 267 | +**Reviewer** |
| 268 | + |
| 269 | +↓ |
| 270 | + |
| 271 | +Review and approve |
| 272 | + |
| 273 | +↓ |
| 274 | + |
| 275 | +**GitHub Automation** |
| 276 | + |
| 277 | +↓ |
| 278 | + |
| 279 | +Fetch reviewed translations |
| 280 | + |
| 281 | +↓ |
| 282 | + |
| 283 | +Update the `python-docs-pa` repository |
| 284 | + |
| 285 | +↓ |
| 286 | + |
| 287 | +Eventually submitted upstream to CPython |
| 288 | + |
| 289 | +You do not need to manually upload your `.po` file to GitHub. |
| 290 | + |
| 291 | +You do not need to create a GitHub pull request. |
| 292 | + |
| 293 | +--- |
| 294 | + |
| 295 | +# 15. What If You Get Stuck? |
| 296 | + |
| 297 | +Please contact the coordinator if: |
| 298 | + |
| 299 | +* You cannot find the assigned resource. |
| 300 | +* You cannot see the Punjabi language. |
| 301 | +* You cannot edit a string. |
| 302 | +* A translation check fails and you don't understand why. |
| 303 | +* A technical term is difficult to translate. |
| 304 | +* You are unsure whether something should remain in English. |
| 305 | +* You are unsure whether markup should be translated. |
| 306 | +* You think a string is already translated incorrectly. |
| 307 | +* You encounter anything that looks like a Transifex configuration problem. |
| 308 | + |
| 309 | +**Do not create a new project, resource, language, or file to solve the problem yourself.** |
| 310 | + |
| 311 | +--- |
| 312 | + |
| 313 | +# 16. First Translation Checklist |
| 314 | + |
| 315 | +Before starting: |
| 316 | + |
| 317 | +* [ ] Transifex account is activated. |
| 318 | +* [ ] Punjabi (pa) team access is confirmed. |
| 319 | +* [ ] Assigned worklist is available. |
| 320 | +* [ ] Style Guide has been read. |
| 321 | +* [ ] Glossary has been read. |
| 322 | + |
| 323 | +While translating: |
| 324 | + |
| 325 | +* [ ] Use the Untranslated filter. |
| 326 | +* [ ] Translate one string at a time. |
| 327 | +* [ ] Save translations. |
| 328 | +* [ ] Preserve code and markup. |
| 329 | +* [ ] Preserve placeholders. |
| 330 | +* [ ] Follow the glossary. |
| 331 | +* [ ] Ask the coordinator when unsure. |
| 332 | + |
| 333 | +After finishing: |
| 334 | + |
| 335 | +* [ ] All strings in the assigned resource are translated. |
| 336 | +* [ ] Saved translations have been checked. |
| 337 | +* [ ] Coordinator has been notified. |
| 338 | +* [ ] Wait for reviewer feedback. |
| 339 | + |
| 340 | +--- |
| 341 | + |
| 342 | +# Quick Workflow |
| 343 | + |
| 344 | +```text |
| 345 | +Join Punjabi Team |
| 346 | + ↓ |
| 347 | +Open Transifex |
| 348 | + ↓ |
| 349 | +Open Python Documentation Project |
| 350 | + ↓ |
| 351 | +Select Punjabi (pa) |
| 352 | + ↓ |
| 353 | +Open Assigned Resource |
| 354 | + ↓ |
| 355 | +Filter → Untranslated |
| 356 | + ↓ |
| 357 | +Translate |
| 358 | + ↓ |
| 359 | +Save |
| 360 | + ↓ |
| 361 | +Complete Resource |
| 362 | + ↓ |
| 363 | +Notify Coordinator |
| 364 | + ↓ |
| 365 | +Reviewer Reviews |
| 366 | + ↓ |
| 367 | +Approved Translation |
| 368 | + ↓ |
| 369 | +GitHub Automation |
| 370 | +``` |
| 371 | + |
| 372 | +--- |
| 373 | + |
| 374 | +## Important |
| 375 | + |
| 376 | +**Your job is to translate on Transifex.** |
| 377 | + |
| 378 | +You do not need to worry about GitHub synchronization, `.po` files, commits, branches, or pull requests. |
| 379 | + |
| 380 | +The project coordinators and automation handle the repository side after your translations have been reviewed. |
| 381 | + |
| 382 | +If you are unsure about anything, **ask before making a change that could affect terminology or formatting.** |
| 383 | + |
| 384 | +Welcome to the team, and thank you for helping bring Python documentation to Punjabi speakers! |
0 commit comments