Skip to content

Commit 6657011

Browse files
committed
refactor: add lint, http-serve, preview, http-preview make commands
1 parent 1bb789f commit 6657011

File tree

2 files changed

+57
-40
lines changed

2 files changed

+57
-40
lines changed

CONTRIBUTING.md

Lines changed: 37 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,16 @@ Eυχαριστούμε πολύ για το ενδιαφέρον σας να σ
1414

1515
## Περιεχόμενα
1616

17-
1. [Προετοιμασία](#προετοιμασία)
18-
2. [Συνεισφορά](#συνεισφορά)
19-
1. [Μετάφραση Αρχείου](#μετάφραση-αρχείου)
20-
2. [Αξιολόγηση Μετάφρασης](#αξιολόγηση-μετάφρασης)
21-
3. [Λερώστε τα χέρια σας! Μεταφράστε!](#λερώστε-τα-χέρια-σας-μεταφράστε)
17+
- [Οδηγός συνεισφοράς στο πρότζεκτ Python-Docs-Gr της κοινότητας PyGreece](#οδηγός-συνεισφοράς-στο-πρότζεκτ-python-docs-gr-της-κοινότητας-pygreece)
18+
- [Περιεχόμενα](#περιεχόμενα)
19+
- [Προετοιμασία](#προετοιμασία)
20+
- [Συνεισφορά](#συνεισφορά)
21+
- [Μετάφραση Αρχείου](#μετάφραση-αρχείου)
22+
- [Αξιολόγηση Μετάφρασης](#αξιολόγηση-μετάφρασης)
23+
- [Λερώστε τα χέρια σας! Μεταφράστε!](#λερώστε-τα-χέρια-σας-μεταφράστε)
24+
- [🎉🎉ΤΕΛΟΣ🎉🎉](#τελος)
25+
- [Προεπισκόπηση αλλαγών](#προεπισκόπηση-αλλαγών)
26+
- [Γενικές Οδηγίες](#γενικές-οδηγίες)
2227

2328
### Προετοιμασία
2429

@@ -31,7 +36,7 @@ Eυχαριστούμε πολύ για το ενδιαφέρον σας να σ
3136
2. Κάντε clone το repository που μόλις δημιουργήσατε:
3237

3338
```bash
34-
git clone git@github.com:<το username σας>/python-docs-gr.git
39+
git clone --recursive git@github.com:<το username σας>/python-docs-gr.git
3540
```
3641

3742
3. Μεταβείτε στον φάκελο που δημιουργήθηκε:
@@ -120,13 +125,13 @@ To milestone που μπορείτε να συνεισφέρετε είναι τ
120125

121126
Τα εργαλεία που προτείνουμε να χρησιμοποιήσετε είναι το [VScode](https://code.visualstudio.com/) ή το [PoEdit](https://poedit.net/). Για το [VScode](https://code.visualstudio.com/) μια χρήσιμη επέκταση είναι το [`gettext` extension](https://marketplace.visualstudio.com/items?itemName=mrorz.language-gettext). Αντίθετα το [PoEdit](https://poedit.net/) χρησιμοποιεί ένα καλύτερο περιβάλλον διεπαφής και δεν απατείται να ασχοληθεί ο χρήστης με τη δομή του αρχείου.
122127

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

125130
```bash
126131
git checkout 3.12
127132
```
128133

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

131136
```bash
132137
git checkout -b translate-library-ast
@@ -140,53 +145,30 @@ git checkout -b library-set
140145
git checkout -b ft/library-set
141146
```
142147

143-
4. Αφού έχετε διαλέξει το αρχείο σας, ξεκινήστε την μετάφραση στο IDE της επιλογής σας. Επίσης μπορείτε να χρησιμοποιήσετε εργαλεία για την σωστή μετάφραση προτάσεων, φράσεων ή λέξεων.
148+
3. Αφού έχετε διαλέξει το αρχείο σας, ξεκινήστε την μετάφραση στο IDE της επιλογής σας. Επίσης μπορείτε να χρησιμοποιήσετε εργαλεία για την σωστή μετάφραση προτάσεων, φράσεων ή λέξεων.
144149

145-
5. Εφόσον έχετε ολοκληρώσει τη μετάφρασή σας είναι απαραίτητο να χρησιμοποιήσετε τις εντολές που αναφέρονται παρακάτω προκειμένου να γίνει μορφοποίηση του αρχείου για να έχει μια σωστή δομή καθώς και να γίνει ορθογραφικός έλεγχος.
150+
4. Εφόσον έχετε ολοκληρώσει τη μετάφρασή σας είναι απαραίτητο να χρησιμοποιήσετε τη παρακάτω εντολή προκειμένου να γίνει μορφοποίηση του αρχείου για να έχει μια σωστή δομή καθώς και να γίνει ορθογραφικός έλεγχος.
146151

147-
1. `powrap`: έλεγχος και μορφοποίηση της δομής του αρχείου. Μπορείτε να χρησιμοποιήσετε το ακόλουθο script.
148152

149-
```bash
150-
powrap <φάκελος>/<όνομα_του_αρχείου>.po
151-
```
152-
153-
Εάν είστε χρήστης των windows μπορείτε να δείτε περισσότερες πληροφορίες [εδώ](https://python-docs-es.readthedocs.io/es/3.12/faq.html#powrap-windows).
154-
155-
2. `popspell`: ορθογραφικός έλεγχος του αρχείου [pospell](https://github.com/AFPy/pospell). Μπορείτε να χρησιμοποιήσετε το ακόλουθο script.
156-
157-
```bash
158-
python scripts/check_spelling.py <φάκελος>/<όνομα_του_αρχείου>.po
159-
```
160-
161-
Εάν κάποια από τις λέξεις δεν είναι αναγνωρισμένη από το script προσθέστε την στο [dictionary](/dictionaries/main.txt) και επαναλάβετε.
162-
163-
3. `pre-commit`: ετοιμάζει και κάνει τις απαραίτητες διαδικασίες προκειμένου το αρχείο να περάσει επιτυχώς τους ελέγχους για την προσάρτισή του. Μπορείτε να χρησιμοποιήσετε το ακόλουθο script.
164-
165-
```bash
166-
pre-commit run --all-files
167-
```
168-
169-
Πιο αναλυτικά το παραπάνω script κάνει:
170-
171-
- τη διαδικασία του `powrap`
172-
- ορθογραφικό έλεγχο
173-
- μορφοποίηση του λεξικού (Αλφαβητική ταξινόμηση και αφαίρεση διπλότυπων)
153+
```bash
154+
make lint
155+
```
174156

175-
6. Μετά από την ολοκλήρωση της μετάφρασης μην ξεχάσετε να βάλετε τα στοιχεία σας στο:
157+
5. Μετά από την ολοκλήρωση της μετάφρασης μην ξεχάσετε να βάλετε τα στοιχεία σας στο:
176158

177159
![metadata](/public/assets/metadata-po.png)
178160

179161
Στο **Language-Team** metadata γράφετε: `"Language-Team: PyGreece <pygreece@gmail.com>\n"`
180162

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

183165
```bash
184166
git add library/ast.po
185167
git commit -m 'Translate file library/ast.po'
186168
git push origin translate-library-ast
187169
```
188170

189-
8. Έπειτα μπορείτε να ανοίξετε ένα Pull Request προκειμένου να εξεταστεί/ελεγχθεί η συνεισφορά σας, να γίνουν κάποια σχόλια και εν τέλει να προσαρτηθεί στο βασικό repository. Εφόσον έχετε κάνει push το branch σας θα δείτε κάτι όπως παρακάτω:
171+
7. Έπειτα μπορείτε να ανοίξετε ένα Pull Request προκειμένου να εξεταστεί/ελεγχθεί η συνεισφορά σας, να γίνουν κάποια σχόλια και εν τέλει να προσαρτηθεί στο βασικό repository. Εφόσον έχετε κάνει push το branch σας θα δείτε κάτι όπως παρακάτω:
190172

191173
![pr](/public/assets/pr.png)
192174

@@ -202,6 +184,22 @@ git push origin translate-library-ast
202184

203185
Συγχαρητήρια, συνεισφέρατε στο έργο και πλέον είστε μέλος του μεγάλου εγχειρήματος της μετάφρασης.
204186

187+
## Προεπισκόπηση αλλαγών
188+
189+
Αν θέλετε να κάνετε προεπισκόπηση των αλλαγών που κάνατε μπορείτε να χρησιμοποιήσετε τις παρακάτω εντολές:
190+
191+
```bash
192+
make preview
193+
```
194+
195+
ή
196+
197+
```bash
198+
make http-preview
199+
```
200+
201+
Στη τελευταία περίπτωση, με την ολοκλήρωση της εντολής, επισκευφτείτε τη διεύθυνση http://localhost:8000/ στον browser σας.
202+
205203
## Γενικές Οδηγίες
206204

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

Makefile

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ all: ensure_prerequisites
7070
-D latex_elements.inputenc= \
7171
-D latex_elements.fontenc=' \
7272
$(MODE)
73-
@echo "Build success, open file://$(abspath $(CPYTHON_PATH))/Doc/build/html/index.html or run 'make serve' to see them."
73+
@echo "Build success, open file://$(abspath $(CPYTHON_PATH))/Doc/build/html/index.html or run either 'make http-serve' or 'make serve' to see them."
7474

7575

7676
.PHONY: ensure_prerequisites
@@ -102,13 +102,32 @@ ensure_prerequisites:
102102
serve:
103103
$(PYTHON) -c "import os, webbrowser; webbrowser.open('file://' + os.path.realpath('cpython/Doc/build/html/index.html'))"
104104

105+
.PHONY: http-serve
106+
http-serve:
107+
$(PYTHON) -m http.server -d cpython/Doc/build/html/
108+
109+
.PHONY: preview
110+
preview:
111+
make all && make serve
112+
113+
.PHONY: http-preview
114+
http-preview:
115+
make all && make http-serve
105116

106117
.PHONY: progress
107118
progress:
108119
@$(PYTHON) -c 'import sys; print("{:.1%}".format(int(sys.argv[1]) / int(sys.argv[2])))' \
109120
$(shell msgcat *.po */*.po | msgattrib --translated | grep -c '^msgid') \
110121
$(shell msgcat *.po */*.po | grep -c '^msgid')
111122

123+
.PHONY: spellcheck
124+
spellcheck:
125+
$(PYTHON) scripts/check_spelling.py $(filter-out $@, $(MAKECMDGOALS))
126+
127+
.PHONY: lint
128+
lint:
129+
powrap *.po **/*.po && \
130+
make spellcheck
112131

113132
.PHONY: todo
114133
todo: ensure_prerequisites

0 commit comments

Comments
 (0)