Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Update repo documentation #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
lysnikolaou merged 17 commits into main from ft/add_contributing_page_4
Mar 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
cc89a3f
Add check_spelling script
thepetk Mar 26, 2024
f4e4656
Add translation guide
thepetk Mar 26, 2024
a15dc4c
Add fork image
thepetk Mar 26, 2024
d522a15
Update docs
thepetk Mar 26, 2024
04b50a2
Update CONTRIBUTING.md
thepetk Mar 27, 2024
aa5aed1
Update CONTRIBUTING.md
thepetk Mar 27, 2024
d51454b
Update fork guide link
thepetk Mar 27, 2024
e80d62a
Update CONTRIBUTING.md
thepetk Mar 27, 2024
2a2bf29
Update CONTRIBUTING.md
thepetk Mar 27, 2024
edfad15
Update CONTRIBUTING.md
thepetk Mar 27, 2024
867b2c8
Update public/docs/review.md
thepetk Mar 27, 2024
d0e3960
Update public/docs/review.md
thepetk Mar 27, 2024
0c7f6d5
Update scripts/check_spelling.py
thepetk Mar 27, 2024
fe033d3
Update CONTRIBUTING.md
thepetk Mar 27, 2024
45a7819
Update review.md
thepetk Mar 27, 2024
23fb73f
Update CONTRIBUTING.md
thepetk Mar 27, 2024
116c82a
Update public/docs/review.md
thepetk Mar 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
141 changes: 141 additions & 0 deletions CONTRIBUTING.md
View file Open in desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
# Οδηγός συνεισφοράς στο πρότζεκτ Python-Doc-Gr της κοινότητας PyGreece

Eυχαριστούμε πολύ για το ενδιαφέρον σας να συμμετέχετε στη μετάφραση των επίσημων εγγράφων της Python στα Ελληνικά!

Το συγκεκριμένο πρότζεκτ έχει ξεκινήσει από το PyGreece, μια online κοινότητα εθελοντών της Python. Στο συγκεκριμένο repository θα βρείτε την ομάδα εργασίας που είναι υπεύθυνη για το πρότζεκτ. Όλο το περιεχόμενο της μετάφρασης συντηρείται από εθελοντές που συνεισφέρουν το χρόνο και την εργασία τους στην κοινότητα της Python.

Σε περίπτωση που έχετε οποιαδήποτε απορία για το πρότζεκτ, μπορείτε να μας βρείτε με τους εξής τρόπους:

- Μπορείτε να μπείτε στον discord server του PyGreece (πρόσκληση εδώ: https://discord.gg/evcNPRVCMB)

- Μπορείτε να μας βρείτε στο linkedin [εδώ](https://www.linkedin.com/company/pygreece)

Πριν ξεκινήσετε με την πρώτη σας μετάφραση θα θέλαμε να μοιραστούμε [κάποιες γενικές οδηγίες](#γενικές-οδηγίες).

## Βήμα 1: Github Setup

Πρέπει να κάνετε αυτό το βήμα μόνο μία φορά. Με το συγκεκριμένο fork μπορείτε να κάνετε όσα PR θέλετε.

1. Για να υποβάλετε μια μετάφραση, πρέπει να έχετε ένα fork του repository , κάνοντας κλικ στο κουμπί με την κόκκινη γραμμή από κάτω (για περισσότερες πληροφορίες δείτε [εδώ](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)):

![fork](https://github.com/pygreece/python-docs-gr/blob/3.12/public/assets/fork_image.jpg?raw=true)

2. Κάντε clone το repository που μόλις δημιουργήσατε:

```bash
git clone git@github.com:<το username σας>/python-docs-gr.git
```

3. Μεταβείτε στον φάκελο που δημιουργήθηκε:

```bash
cd python-docs-gr/
```

4. Προσθέστε το επίσημο repository ως upstream:

```bash
git remote add upstream git@github.com:pygreece/python-docs-gr.git
```

5. [Προαιρετικό βήμα] Δημιουργείστε ένα virtual environment και κάντε activate:

```bash
python -m venv env
source env/bin/activate # macOS or Linux
env\Scripts\activate.bat # Windows
```

6. [Προαιρετικό βήμα] Εγκαταστείστε τα requirements:

```bash
pip install -r requirements.txt
```

## Βήμα 2: Ποια αρχεία πρέπει να μεταφραστούν;

Έχουμε [μια λίστα με issues στο GitHub](https://github.com/pygreece/python-docs-gr/issues?q=is%3Aissue+is%3Aopen+label%3Atranslation) όπου συντονίζουμε τη δουλειά που γίνεται ώστε να μην μεταφραστεί το ίδιο έγγραφο δύο φορές. Η διαδικασία μετάφρασης ενός αρχείου είναι η εξής:

- Επιλέξτε οποιοδήποτε από τα issues που δεν έχουν ανατεθεί σε κάποιο άλλο άτομο.

- Αφήστε ένα σχόλιο για στο issue λέγοντας ότι θέλετε να το δουλέψετε.

- Περιμένετε έναν διαχειριστή να σας αναθέσει το issue.

- Ξεκινήστε τη μετάφραση!

## Βήμα 3: Ξεκινήστε τη μετάφραση!

1. Διαλέξτε το αρχείο που θέλετε να μεταφράσετε. Το αρχείο θα υπάρχει στον τίτλο του issue που έχετε αναλάβει.

2. Επιβεβαιώστε ότι είστε στο 3.12 branch (πολύ σημαντικό βήμα για να αποφύγετε να ξεκινήσετε ένα branch απο παλαιότερη έκδοση):

```bash
git checkout 3.12
```

3. Δημιουργείστε ένα branch βασισμένο στο αρχείο που θα δουλέψετε. Για παράδειγμα, εάν δουλέυετε στο αρχείο library/ast.po το όνομα του branch θα μπορούσε να είναι:

```bash
git checkout -b translate-library-ast
```

4. Αφού έχετε διαλέξει το αρχείο σας, ξεκινήστε την μετάφραση στο IDE σας. Προτείνουμε το [poedit](https://poedit.net/) ή το [vscode](https://code.visualstudio.com/).

5. Εάν χρησιμοποιείτε το `poedit` είναι πιθανό πως το αρχείο σας θα έχει σωστό structure, αλλά για παν ενδεχόμενο μπορείτε να το επιβεβαιώσετε με το `powrap`. Για να το εγκαταστείσετε:

```bash
powrap <φακελος>/<ονομα_του_αρχειου>.po
```

Εάν είστε χρήστης των windows μπορείτε να δείτε περισσότερες πληροφορίες [εδώ](https://python-docs-es.readthedocs.io/es/3.12/faq.html#powrap-windows).

6. **Έλεγχος ορθογραφίας**: Για να ελέγξετε την ορθοργραφία της μετάφρασης σας μπορείτε να χρησιμοποιείσετε το [pospell](https://github.com/AFPy/pospell) για να επιβεβαιώσετε ότι όλες οι λέξεις είναι γνωστές ή ανήκουν σε κάποιο από τα dictionaries. Μπορείτε επίσης να χρησιμοποιήσετε το παρακάτω script:

```bash
python scripts/check_spelling.py <dir>/<file>.po
```

Εάν κάποια από τις λέξεις δεν είναι αναγνωρισμένη από το script προσθέστε την στο dictionary και επαναλάβετε. Για παράδειγμα, εάν το αρχείο που δουλεύετε είναι το `library/ast.po` το αντίστοιχο dictionary είναι το `dictionaries/library_ast.txt`. Εάν το αρχείο που ψάχνετε δεν υπάρχει στο φάκελο dictionaries δημιουργείστε το.

7. Όταν ολοκληρώσετε την μετάφραση σας, πρέπει να αποθηκεύσετε τις αλλαγές σας και να κάνετε push στο GitHub (Μην ξεχάσετε να προσθέσετε το όνομά σας στο αρχείο `TRANSLATORS`). Για παράδειγμα εάν εργαζόσασταν στη στο αρχείο `library/ast.po` τα βήματα θα ήταν:

```bash
git add library/ast.po
git commit -m 'Translate file library/ast.po'
git push origin translate-library-ast
```

8. Στην περιγραφή του Pull Request μπορείτε να γράψετε:

```
Closes #<αριθμός issue>
```

Έτσι θα κλείσει και το issue μόλις γίνει merge το PR.

## Γενικές Οδηγίες

- Σε πολλές περιπτώσεις το καλύτερο κριτήριο είναι να σκεφτούμε το λεξιλόγιο που χρησιμοποιούμε όταν εξηγούμε σε άλλο άτομο ή στη δουλειά. Σε πολλές περιπτώσεις, η αγγλική είναι πολύ καλύτερη αν θελετε πχ. να πείτε "git join".

- Θα έχετε πάντα διαθέσιμο ενα preview αυτού που προτείνετε, καθώς και reviewers να σας βοηθήσουν.

- Η διαδικασιά του review ειναι επίσης πολύ σημαντική. Αν έχετε ελεύθερο χρόνο θα ήταν το ίδιο σημαντικό να συνεισφέρετε κάνοντας review σε ήδη ανοιχτά Pull Requests ([περισσότερες πληροφορίες εδώ](./public/docs/review.md)).

- Τα επίσημα έγγραφα της Python είναι άπειρα! Όποια εμπόδια βρείτε μπορείτε πάντα να επισημάνετε το κείμενο ως "ασαφές" ή να το αναθεωρήσετε στο μέλλον. Μην σπαταλάτε ώρες αναζητώντας την τέλεια λέξη.

- Δεν πρέπει να μεταφράσετε το περιεχόμενο των :ref:..., :term:..., :dfn:..., κ.λπ.

- Εάν πρέπει να χρησιμοποιήσετε αγγλικές λέξεις, θα πρέπει να τις βάλετε με πλάγιους χαρακτήρες (περιτριγυρισμένοι με αστερίσκους).

- Μπορείτε να διαβάσετε τις Συχνές Ερωτήσεις για να διαβάσετε για γνωστά ζητήματα.

- Εάν μεταφράσετε έναν τίτλο που είναι σύνδεσμος, μεταφράστε και τον σύνδεσμο (για παράδειγμα ένα άρθρο στη Wikipedia). Σε περίπτωση που δεν υπάρχει μετάφραση του άρθρου στη Wikipedia, αφήστε τον τίτλο αμετάφραστο.

- Εάν έχετε μια ερώτηση σχετικά με μια λέξη ή όρο, γράψτε την όπως σας φαίνεται καλύτερα και σημειώστε αυτήν την παράγραφο ως "Needs Work". Επίσης, γράψτε ένα σχόλιο εξηγώντας για ποιον όρο σε αυτήν την παράγραφο δεν ήσασταν σίγουροι.

- Συνιστούμε να ανοίξετε ένα Pull Request ακόμα κι αν είναι σε μορφή draft (επισημασμένο ως πρόχειρο) από τις πρώτες προσπάθειες της μετάφρασης του αρχείου σας. Με αυτόν τον τρόπο, μπορείτε να λάβετε σχόλια από την αρχή που μπορείτε να εφαρμόσετε στην υπόλοιπη μετάφραση.

- Τελευταίο αλλά όχι λιγότερο σημαντικό, διασκεδάστε και βασιστείτε στη βοήθεια όλων. Περιμένουμε τα μηνύματα σας στο discord, εδώ ή στο linkedin. Ευχαριστούμε!

- Για τους contributors που χρησιμοποιούν το vscode ως IDE ένα πολύ χρήσιμο add-on για τα `.po` αρχεία είναι το [`gettext` extension](https://marketplace.visualstudio.com/items?itemName=mrorz.language-gettext).
Binary file added public/assets/fork_image.jpg
View file Open in desktop
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
[フレーム]
27 changes: 27 additions & 0 deletions public/docs/review.md
View file Open in desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
**Σημείωση: Βοηθείστε μας να μεταφράσουμε την επίσημη μετάφραση της Python στα Ελληνικά! Μπορείτε να βρείτε περισσότερες πληροφορίες για το πως μπορείτε να συνεισφέρετε [εδώ](./../../CONTRIBUTING.md).**

# Οδηγίες για το review των μεταφράσεων

Το review ενός Pull Request είναι μια πολύ σημαντική διαδικασία για την μετάφραση των εγγράφων της Python.

Για όσους δεν έχουν κάνει ποτέ review, αλλά έχετε κάνει μεταφράσεις για το πρότζεκτ, σας συνιστούμε να το δοκιμάσετε. Μέσω του review, θα μπείτε πολλές φορές στη θέση κάποιου άλλου και συχνά θα δείτε βελτίωση και των δικών σας μεταφράσεων/PR.

Ένας καλός οδηγός από το Github για τα reviews είναι [εδώ](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)

## Η ανθρώπινη πλευρά

Λαμβάνοντας υπόψη ότι είμαστε όλοι εθελοντές σε αυτό το έργο, είναι σημαντικό ο τρόπος που επικοινωνούμε να είναι σαφής, συνοπτικός και φιλικός. Να θυμάστε ότι στην άλλη πλευρά ενός PR υπάρχει ένα άτομο που έχει αφιερώσει χρόνο και προσπάθεια. Ο τρόπος που σχολιάζετε τη δουλειά του θα επηρεάσει τη στάση του απέναντι στο έργο και την επιθυμία του να συνεχίσει να συμμετέχει στην κοινότητά μας! Εδώ σας αφήνουμε μερικές συμβουλές ώστε το review σας να είναι εποικοδομητικό:

- Πάντα να αφήνετε ένα σχόλιο στο PR που αφήνει ένα γενικό συμπέρασμα του review σας για να καταστεί σαφές στους μεταφραστές τι χρειάζεται τροποποίηση και τι όχι. Να θυμάστε πάντα να ξεκινάτε αναγνωρίζοντας τις θετικές πτυχές της δουλειάς του άλλου και στη συνέχεια μπορείτε να προσθέσετε σχόλια/προτάσεις σχετικά με τη μετάφραση.

## Η πρακτική πλευρά

To review πρέπει να είναι ακριβές. Με αυτόν τον τρόπο, οι μεταφραστές θα μπορούν να αναθεωρούν τη δουλειά τους και να γνωρίζουν τι πρέπει να κάνουν για να τη βελτιώσουν. Μην ξεχνάτε ότι αυτή είναι μια τεχνική μετάφραση και ως εκ τούτου, ο στόχος είναι ότι, το άτομο που τη διαβάζει μπορεί να καταλάβει πώς να χρησιμοποιεί την Python. Αυτός είναι ο λόγος για τον οποίο, αν και είναι σημαντικό η σύνταξη να είναι σωστή, ο στόχος δεν είναι να γίνει μια εντατική ανασκόπηση της χρήσης των ελληνικών, εκτός εάν ο τρόπος με τον οποίο εκφράστηκε η ιδέα καθιστά αδύνατο για κάποιο άλλο άτομο να την κατανοήσει.

Για αυτό, το Github σάς προσφέρει επιλογές για να κάνετε review ένα PR (δείτε το κουμπί `Review Changes` στην επάνω δεξιά γωνία των αρχείων που έχουν τροποποιηθεί από τους μεταφραστές):

- `Comment`: Μπορείτε να αφήσετε ένα σχόλιο χωρίς απαραίτητα να εγκρίνετε το PR. Βεβαιωθείτε ότι το κάνετε με σαφήνεια, ώστε όποιος μετέφρασε να γνωρίζει ότι πρέπει να τροποποιήσει κάποια πράγματα πριν εγκριθεί το PR του.

- `Approve` : Αφήστε αυτήν την επιλογή μόνο για PR που δεν χρειάζονται καμία τροποποίηση ή έχουν μόνο μερικά ορθογραφικά λάθη ή τυπογραφικά λάθη ή κάποιο σφάλμα που δεν προκαλεί μεγάλη σύγκρουση στη μετάφραση και την ενσωμάτωσή της στο κύριο branch.

- `Request Changes`: Χρησιμοποιήστε αυτήν την επιλογή όταν η μετάφραση χρειάζεται πολλές τροποποιήσεις που επηρεάζουν την ενσωμάτωσή της στο κύριο branch. Σε αυτήν την περίπτωση, βεβαιωθείτε επίσης ότι το μήνυμά σας είναι σαφές και φιλικό για να συνοδεύει τον μεταφραστή στη διαδικασία τροποποίησης και έγκρισης του PR.
55 changes: 55 additions & 0 deletions scripts/check_spelling.py
View file Open in desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
"""
Script to check the spelling of one, many or all .po files based
on the custom dictionaries under the 'dictionaries/' directory.
"""

from pathlib import Path
import sys
import tempfile

import pospell


def check_spell(po_files=None):
"""
Check spell in the given list of po_files and log the spell errors details.

If no po_files are given, check spell in all files.

args:
po_files: list of po_files paths.

returns:
- int: spell errors count.

"""
# Read custom dictionaries
entries = set()
for filename in Path("dictionaries").glob("*.txt"):
with open(filename, "r") as f:
entries.update(
stripped_line
for stripped_line in (line.strip() for line in f.readlines())
if stripped_line
)

# Write merged dictionary file
output_filename = tempfile.mktemp(suffix="_merged_dict.txt")
with open(output_filename, "w") as f:
for e in entries:
f.write(f"{e}\n")

# Run pospell either against all files or the file given on the command line
if not po_files:
po_files = Path(".").glob("*/*.po")

detected_errors = pospell.spell_check(
po_files, personal_dict=output_filename, language="el_EL"
)
return detected_errors


if __name__ == "__main__":
po_files = sys.argv[1:]
errors = check_spell(po_files)
sys.exit(0 if errors == 0 else -1)

AltStyle によって変換されたページ (->オリジナル) /