|
| 1 | +O traducere în românește a documentației limbajului Python |
| 2 | +========================================================== |
| 3 | + |
| 4 | +Traducerea se realizează pe fragmente de text numite **mesaje**. |
| 5 | +Aceste mesaje se găsesc/introduc în fișiere |
| 6 | +`PO <https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html>`_. |
| 7 | + |
| 8 | +Fișierele PO pot fi generate, dacă lucrăm sub sistemul de |
| 9 | +operare Microsoft **Windows 11**, într-un cont de **administrator**, |
| 10 | +astfel: |
| 11 | + |
| 12 | +- instalăm cea mai recentă versiune **stabilă** de |
| 13 | + `Python <https://www.python.org/>`_; |
| 14 | +- instalăm generatorul de documentație |
| 15 | + `Sphinx <https://www.sphinx-doc.org/en/master/usage/installation.html>`_:: |
| 16 | + |
| 17 | + pip install -U sphinx |
| 18 | + |
| 19 | +- instalăm unealta |
| 20 | + `sphinx-intl <https://www.sphinx-doc.org/en/master/usage/advanced/intl.html>`_:: |
| 21 | + |
| 22 | + pip install sphinx-intl |
| 23 | + |
| 24 | +- descărcăm într-un director convenabil codul-sursă al celei mai recente |
| 25 | + versiuni **stabile** de Python (aceeași ca mai sus); de exemplu, |
| 26 | + `3.13.5 <https://www.python.org/downloads/source/>`_; |
| 27 | +- în subdirectorul **Doc** al codului-sursă Python se găsește fișierul |
| 28 | + **conf.py**, la sfârșitul căruia adăugăm:: |
| 29 | + |
| 30 | + # Optiuni pentru traducerea in romaneste |
| 31 | + # Adaugat in [ 17.06.2025 ] |
| 32 | + # Conform [ https://www.sphinx-doc.org/en/master/usage/advanced/intl.html ] |
| 33 | + # ------------------------------------------------------------------------- |
| 34 | + |
| 35 | + locale_dirs = ['locale_python_3_13_5/'] # path is example but recommended. |
| 36 | + gettext_compact = False # optional. |
| 37 | + language = 'ro' |
| 38 | + |
| 39 | +- din subdirectorul **Doc**, deschidem un |
| 40 | + `terminal Windows <https://learn.microsoft.com/en-us/windows/terminal/>`_ |
| 41 | + și executăm comanda:: |
| 42 | + |
| 43 | + ./make gettext |
| 44 | + |
| 45 | + Ea va genera subdirectorul **build/gettext** al directorului **Doc**, |
| 46 | + care conține fișiere |
| 47 | + `POT <https://www.drupal.org/community/contributor-guide/reference-information/localize-drupal-org/working-with-offline/po-and-pot-files>`_. |
| 48 | + |
| 49 | +- în același terminal, comanda:: |
| 50 | + |
| 51 | + sphinx-intl update -p build/gettext -l ro |
| 52 | + |
| 53 | + va produce subdirectorul **locale_python_3_13_5/ro/LC_MESSAGES** al directorului |
| 54 | + **Doc**. Acesta conține fișierele PO căutate. |
| 55 | + |
| 56 | +Putem genera codul HTML al documentației folosind scriptul |
| 57 | +**scripturi/compilarea_traducerii.ps1** din acest proiect. Astfel, |
| 58 | +într-un terminal Windows cu **drepturi de administrator** |
| 59 | +(tastele Win + X, A), deschis din directorul unde se găsește |
| 60 | +scriptul PowerShell, executăm comenzile:: |
| 61 | + |
| 62 | + Set-ExecutionPolicy Unrestricted |
| 63 | + ./compilarea_traducerii |
| 64 | + |
| 65 | +Abateri de la recomandările oficiale privind traducerea |
| 66 | +------------------------------------------------------- |
| 67 | +Am optat, în versiunea de față a traducerii, pentru *variante românești* |
| 68 | +ale majorității numelor de variabile, de funcții, de clase, de argumente |
| 69 | +care intervin în exemplele de cod. |
| 70 | +Aceasta constituie o abatere de la |
| 71 | +`recomandarea oficială <https://devguide.python.org/documentation/translations/translating/#code-examples>`_. |
| 72 | +Ea este justificată, în opinia mea, de ușurința cu care anumite idiomuri |
| 73 | +ale sintaxei Python-ului pot fi sesizate de către un nou-venit atunci când |
| 74 | +acesta se lansează în cititul unor fragmente aleatoare de cod. |
| 75 | + |
| 76 | +Pentru a compila *abaterile*, am operat mici modificări în fișierele |
| 77 | +**.rst** corespunzătoare. |
| 78 | + |
| 79 | +Compilarea tutorialului |
| 80 | +----------------------- |
| 81 | +Tutorialul de Python, în românește, poate fi citit |
| 82 | +`aici <https://www.octawian.ro/fisiere/tutoriale/python/build/tutorial/>`_. |
| 83 | +El trebuie considerat *șantier* (fuzzy) de către |
| 84 | +eventualii săi cititori. |
| 85 | + |
| 86 | +Acord asupra contribuției aduse la documentație |
| 87 | +----------------------------------------------- |
| 88 | + |
| 89 | +NOTĂ PRIVIND LICENȚA TRADUCERILOR: documentația Python |
| 90 | +este întreținută de o rețea globală de voluntari. Prin |
| 91 | +publicarea acestui proiect pe Transifex, GitHub sau în |
| 92 | +alt loc public și prin invitația adresată dumneavoastră |
| 93 | +de a participa la el vă propunem un acord în baza căruia |
| 94 | +dumneavoastră vă veți oferi îmbunătățirile aduse |
| 95 | +documentației Python sau traducerii acesteia spre |
| 96 | +folosință de către PSF sub licența CC0 (disponibilă la |
| 97 | +adresa |
| 98 | +https://creativecommons.org/publicdomain/zero/1.0/legalcode). |
| 99 | +În schimb, veți putea pretinde recunoaștere asupra |
| 100 | +porțiunii din traducere la care ați contribuit și, dacă |
| 101 | +traducerea dumneavoastră este acceptată de către PSF, veți |
| 102 | +putea (fără a fi obligat la aceasta) să transmiteți o |
| 103 | +corecție cuprinzând adnotarea potrivită a fișierului |
| 104 | +Misc/ACKS sau TRANSLATORS. Deși nimic din acest acord |
| 105 | +asupra contribuției aduse la documentație nu obligă |
| 106 | +PSF să încorporeze textul contribuției dumneavoastră, |
| 107 | +participarea dumneavoastră la comunitatea Python este |
| 108 | +binevenită și apreciată. |
| 109 | + |
| 110 | +Consfințiți acceptarea acestui acord prin transmiterea |
| 111 | +muncii dumneavoastră către PSF pentru a fi inclusă în |
| 112 | +documentație. |
0 commit comments