Crowdin Scripts/pl: Difference between revisions
No edit summary |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
== Zarządzanie Tłumaczeniami w programie FreeCAD == |
== Zarządzanie Tłumaczeniami w programie FreeCAD == |
||
FreeCAD do zarządzania tłumaczeniami używa zewnętrznego serwisu |
FreeCAD do zarządzania tłumaczeniami używa zewnętrznego serwisu o nazwie [https://crowdin.com/project/freecad Crowdin.] |
||
W <code>FreeCAD/src/Tools</code> znajdują się 3 skrypty, które służą do zarządzania plikami tłumaczeń: |
W <code>FreeCAD/src/Tools</code> znajdują się 3 skrypty, które służą do zarządzania plikami tłumaczeń: |
||
Line 43: | Line 43: | ||
* Przetestowane tylko na Linuksie |
* Przetestowane tylko na Linuksie |
||
* Potrzebujesz pliku .credentials w twoim katalogu /home/TwójUżytkownik. Plik ten jest prostym plikiem tekstowym zawierającym tylko jedną linię, którą jest klucz API otrzymywany na https://crowdin.com/project/freecad/settings#api (tylko dla administratorów) |
* Potrzebujesz pliku .credentials w twoim katalogu /home/TwójUżytkownik. Plik ten jest prostym plikiem tekstowym zawierającym tylko jedną linię, którą jest klucz API otrzymywany na https://crowdin.com/project/freecad/settings#api (tylko dla administratorów) |
||
* Upewnij się, że twoje repozytorium jest czyste (git pull, git stash jeśli to konieczne) |
* Upewnij się, że twoje repozytorium jest czyste ''(git pull, git stash jeśli to konieczne)'' |
||
* cd /path/to/freecad-source-code/src/Tools |
* cd /path/to/freecad-source-code/src/Tools |
||
* python updatets.py (wypełni najnowszymi ciągami tekstowymi wszystkie pliki .ts znalezione w źródłach) |
* python updatets.py ''(wypełni najnowszymi ciągami tekstowymi wszystkie pliki .ts znalezione w źródłach)'' |
||
* python updatecrowdin.py update (wyśle pliki .ts do Crowdin. Crowdin zaktualizuje tylko nowe ciągi tekstowe) |
* python updatecrowdin.py update ''(wyśle pliki .ts do Crowdin. Crowdin zaktualizuje tylko nowe ciągi tekstowe)'' |
||
* cd ../.. (idź z powrotem go głównego katalogu źródeł) |
* cd ../.. ''(idź z powrotem go głównego katalogu źródeł)'' |
||
* git checkout . (cofnij wszystkie zmiany w plikach .ts, nie ma powodu by wprowadzać je już teraz gdy są wciąż nieprzetłumaczone) |
* git checkout . ''(cofnij wszystkie zmiany w plikach .ts, nie ma powodu by wprowadzać je już teraz gdy są wciąż nieprzetłumaczone)'' |
||
<span id="To_merge_latest_translations_from_crowdin"></span> |
<span id="To_merge_latest_translations_from_crowdin"></span> |
||
Line 90: | Line 90: | ||
== Powiązane == |
== Powiązane == |
||
* [[Localisation/pl|Lokalizacja]] |
* [[Localisation/pl|Lokalizacja - tłumaczenie interfejsu i dokumentacji]] |
||
* [[Crowdin_Scripts/pl|Skrypty Crowdin]] |
* [[Crowdin_Scripts/pl|Skrypty środowiska Crowdin]] |
||
* [[Release_process|Proces wydania]] |
* [[Release_process/pl|Proces wydania]] |
||
Latest revision as of 11:37, 29 September 2023
Zarządzanie Tłumaczeniami w programie FreeCAD
FreeCAD do zarządzania tłumaczeniami używa zewnętrznego serwisu o nazwie Crowdin.
W FreeCAD/src/Tools
znajdują się 3 skrypty, które służą do zarządzania plikami tłumaczeń:
updatets.py
(github source)updatecrowdin.py
(github source)updatefromcrowdin.py
(github source)
Uwagi
- Skrypty te uruchamiane są z głównego katalogu
FreeCAD/
. - By umożliwić działanie tych skryptów musisz mieć prawidłowy klucz FreeCAD Crowdin API umieszczony w swoim pliku key
~/.crowdin-freecad
. (Z powodów bezpieczeństwa jest tylko dostępny dla ludzi z prawami administratora na stronie Crowdin FreeCAD) - Obecnie te narzędzia są kompatybilne z Pythonem 2.
updatets.py
Skrypt updatets.py
utworzy pliki .ts w twoim lokalnym katalogu FreeCAD/
. Generuje on pliki .ts (Plik Źródłowy Tłumaczenia Qt).
Jest wywoływany przez:
python2 updatets.py
updatecrowdin.py
Skrypt updatecrowdin.py
ładuje zmiany do Crowdin (zewnętrznego serwisu tłumaczeń społecznościowych) z twojego lokalnego katalogu FreeCAD/
. Obecnie skrypt obsługuje 4 argumenty:
updatecrowdin.py status
wypisuje stan tłumaczeńupdatecrowdin.py update
aktualizuje Crowdin aktualną wersją plików .ts znalezioną w kodzie źródłowymupdatecrowdin.py build
buduje na Crowdin nową, możliwą do pobrania paczkę z wszystkimi przetłumaczonymi ciągami tekstowymiupdatecrowdin.py download
pobiera najnowszą paczkę
updatefromcrowdin.py
Skrypt updatefromcrowdin.py
ściąga zmiany z Crowdin do twojego lokalnego katalogu FreeCAD/
.
By wysłać najnowsze zwroty do Crowdin
- Przetestowane tylko na Linuksie
- Potrzebujesz pliku .credentials w twoim katalogu /home/TwójUżytkownik. Plik ten jest prostym plikiem tekstowym zawierającym tylko jedną linię, którą jest klucz API otrzymywany na https://crowdin.com/project/freecad/settings#api (tylko dla administratorów)
- Upewnij się, że twoje repozytorium jest czyste (git pull, git stash jeśli to konieczne)
- cd /path/to/freecad-source-code/src/Tools
- python updatets.py (wypełni najnowszymi ciągami tekstowymi wszystkie pliki .ts znalezione w źródłach)
- python updatecrowdin.py update (wyśle pliki .ts do Crowdin. Crowdin zaktualizuje tylko nowe ciągi tekstowe)
- cd ../.. (idź z powrotem go głównego katalogu źródeł)
- git checkout . (cofnij wszystkie zmiany w plikach .ts, nie ma powodu by wprowadzać je już teraz gdy są wciąż nieprzetłumaczone)
By scalić najnowsze tłumaczenia z Crowdin
- Przetestowane tylko w systemie Linuks,
- Potrzebujesz pliku .credentials w katalogu /home/TwójUżytkownik. Plik ten jest zwykłym plikiem tekstowym zawierającym tylko jeden wiersz, jest to klucz API otrzymywany na https://crowdin.com/project/freecad/settings#api (tylko dla administratorów),
- Upewnij się, że twoje repozytorium jest czyste (git pull, git stash jeśli to konieczne),
- cd /path/to/freecad-source-code/src/Tools,
- python updatecrowdin.py build (stworzy zip po stronie Crowdin z wszystkimi plikami, może potrwać chwilę... Krok ten może zostać też wykonany na stronie internetowej Crowdin),
- python updatecrowdin.py download (pobierze plik freecad.zip do tego katalogu),
- mv freecad.zip ~ przenieś plik zip do twojego katalogu domowego, (by uniknąć przypadkowego wprowadzenia go później),
- (opcjonalnie) zedytuj skrypt updatefromcrowdin.py i sprawdź czy default_languages zawiera wszystkie języki, których wymagasz (co do zasady wszystkie, które maja ponad 50% zaawansowania),
- python updatefromcrowdin.py -z /home/TwójUżytkownik/freecad.zip,
- cd ../.. (przejdź z powrotem go głównego katalogu źródeł).
- jeśli coś pójdzie nie tak lub nie jesteś pewien, wyczyść wszytko używając git checkout,
- jeśli wszystko wygląda w porządku (git status), wprowadź zmiany używając git add . && git commit,
- Utwórz prośbę o połączenie (PR) dla FreeCAD.
By utworzyć plik tłumaczenia ze strony internetowej
- Sklonuj stronę domową
- cd /path/to/FreeCAD-homepage
- xgettext --from-code=UTF-8 -o lang/homepage.pot *.php
- Zaktualizuj ręcznie "homepage.po" na stronie internetowej Crowdin, korzystając z pliku lang/homepage.pot
By zaktualizować tłumaczenia na stronie internetowej
- Pozyskaj plik freecad.zip przez pobranie go ze strony internetowej Crowdin albo korzystając z instrukcji powyżej (python updatecrowdin.py download),
- cd /path/to/FreeCAD-homepage,
- Upewnij się, że twoje repozytorium jest czyste (git pull, git stash jeśli to konieczne),
- python updatefromcrowdin.py -z /path/to/freecad.zip,
- jeśli coś pójdzie nie tak lub nie jesteś pewien, wyczyść wszytko używając git checkout,
- jeśli wszystko wygląda w porządku (git status), wprowadź zmiany używając git add . && git commit,
- Utwórz prośbę o połączenie (PR) dla FreeCAD-Homepage,
- Po wykonaniu połączenia, jeden z administratorów załaduje ftp serwera Web,
Powiązane
Centrum użytkownika
- Jak zacząć
- Instalacja: Pobieranie programu, Windows, Linux, Mac, Dodatkowych komponentów, Docker, AppImage, Ubuntu Snap
- Podstawy: Informacje na temat FreeCAD, Interfejs użytkownika, Profil nawigacji myszką, Metody wyboru, Nazwa obiektu, Edytor ustawień, Środowiska pracy, Struktura dokumentu, Właściwości, Pomóż w rozwoju FreeCAD, Dotacje
- Pomoc: Poradniki, Wideo poradniki
- Środowiska pracy: Strona Startowa, Architektura, Assembly, CAM, Rysunek Roboczy, MES, Inspekcja, Siatka, OpenSCAD, Część, Projekt Części, Punkty, Inżynieria Wsteczna, Robot, Szkicownik, Arkusz Kalkulacyjny, Powierzchnia 3D, Rysunek Techniczny, Test Framework