Skip to content

Commit d8ec3f3

Browse files
committed
Update documentation
1 parent 02f4b0c commit d8ec3f3

4 files changed

Lines changed: 496 additions & 66 deletions

File tree

‎CONTRIBUTING.md‎

Lines changed: 173 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,37 @@
11
# Contributing to Python Docs Punjabi (pa-IN)
22

3-
Thank you for contributing to the Punjabi translation of Python documentation.
3+
Thank you for contributing to the Punjabi (India) translation of Python documentation.
4+
5+
This project follows the Python Documentation Translation Guidelines and aims to provide high-quality Punjabi (Gurmukhi) translations for Python learners, educators, and developers.
6+
7+
## Current Project Status
8+
9+
### Completed
10+
11+
✅ Entire `tutorial/` section translated and validated.
12+
13+
Completed tutorial files:
14+
15+
* appetite.po
16+
* introduction.po
17+
* interpreter.po
18+
* controlflow.po
19+
* datastructures.po
20+
* inputoutput.po
21+
* modules.po
22+
* errors.po
23+
* classes.po
24+
* stdlib.po
25+
* stdlib2.po
26+
27+
### Current Focus
28+
29+
The project is preparing for expansion into:
30+
31+
* library/
32+
* reference/
33+
* using/
34+
* whatsnew/
435

536
## Repository Structure
637

@@ -10,7 +41,21 @@ python-docs-pa-in/
1041
├── CONTRIBUTING.md
1142
├── GLOSSARY.md
1243
├── STYLE_GUIDE.md
44+
├── .github/
45+
│ └── workflows/
46+
│ └── validate.yml
1347
├── tutorial/
48+
│ ├── appetite.po
49+
│ ├── introduction.po
50+
│ ├── interpreter.po
51+
│ ├── controlflow.po
52+
│ ├── datastructures.po
53+
│ ├── inputoutput.po
54+
│ ├── modules.po
55+
│ ├── errors.po
56+
│ ├── classes.po
57+
│ ├── stdlib.po
58+
│ └── stdlib2.po
1459
├── library/
1560
├── reference/
1661
├── using/
@@ -21,10 +66,12 @@ python-docs-pa-in/
2166

2267
1. Fork the repository.
2368
2. Create a feature branch.
24-
3. Translate or review `.po` files.
25-
4. Validate before committing.
26-
5. Commit your changes.
27-
6. Open a Pull Request.
69+
3. Select an untranslated `.po` file.
70+
4. Translate or review entries.
71+
5. Validate the file.
72+
6. Commit your changes.
73+
7. Push to your fork.
74+
8. Open a Pull Request.
2875

2976
## Creating a New Translation File
3077

@@ -34,84 +81,174 @@ Generate a new `.po` file from the latest CPython gettext template:
3481
msginit \
3582
--locale=pa_IN \
3683
--input=PATH_TO_TEMPLATE.pot \
37-
--output-file=tutorial/FILENAME.po
84+
--output-file=PATH_TO_OUTPUT.po
3885
```
3986

4087
Example:
4188

4289
```bash
4390
msginit \
4491
--locale=pa_IN \
45-
--input=stdlib.pot \
46-
--output-file=tutorial/stdlib.po
92+
--input=library/functions.pot \
93+
--output-file=library/functions.po
4794
```
4895

4996
## Validation
5097

51-
Run:
98+
### Check for syntax errors
5299

53100
```bash
54-
msgfmt --check tutorial/FILENAME.po
101+
msgfmt --check FILE.po
55102
```
56103

57-
Check translation statistics:
104+
### View translation statistics
58105

59106
```bash
60-
msgfmt --statistics tutorial/FILENAME.po
107+
msgfmt --statistics FILE.po
61108
```
62109

63-
View untranslated entries:
110+
### Show untranslated entries
64111

65112
```bash
66-
msgattrib --untranslated tutorial/FILENAME.po
113+
msgattrib --untranslated FILE.po
114+
```
115+
116+
### Show translated entries
117+
118+
```bash
119+
msgattrib --translated FILE.po
67120
```
68121

69122
## Translation Rules
70123

71-
### Do Not Translate
124+
### Never Translate
125+
126+
#### Python Keywords
127+
128+
```text
129+
if
130+
else
131+
elif
132+
for
133+
while
134+
class
135+
def
136+
return
137+
import
138+
from
139+
try
140+
except
141+
finally
142+
raise
143+
pass
144+
with
145+
yield
146+
lambda
147+
```
148+
149+
#### Python Identifiers
150+
151+
* Function names
152+
* Class names
153+
* Module names
154+
* Exception names
155+
* Variable names
156+
157+
Examples:
158+
159+
```text
160+
print
161+
len
162+
range
163+
ValueError
164+
TypeError
165+
list
166+
dict
167+
tuple
168+
set
169+
os
170+
sys
171+
json
172+
```
173+
174+
#### Documentation Markup
175+
176+
```rst
177+
:func:
178+
:class:
179+
:mod:
180+
:meth:
181+
:attr:
182+
:exc:
183+
:term:
184+
:ref:
185+
```
186+
187+
#### Other Items
72188

73-
* Python keywords (`if`, `else`, `for`, `while`, `class`, `def`)
74-
* Function names (`print`, `len`, `range`)
75-
* Module names (`os`, `sys`, `json`)
76-
* Exception names (`ValueError`, `TypeError`)
77189
* URLs
78-
* RST roles (`:func:`, `:class:`, `:mod:`, `:ref:`)
79-
* Code blocks
190+
* Code syntax
191+
* File names
192+
* Package names
193+
* Python version numbers
80194

81195
### Translate
82196

83-
* Headings
197+
* Titles and headings
84198
* Explanatory text
85199
* Notes and warnings
86-
* Comments inside code examples
200+
* Comments inside examples
87201
* User-facing descriptions
202+
* Table content
203+
* Documentation narratives
88204

89205
## Quality Checklist
90206

91-
Before submitting:
207+
Before submitting a Pull Request:
92208

93-
* [ ] All translations completed
94-
* [ ] `msgfmt --check` passes
209+
* [ ] All intended entries translated
210+
* [ ] msgfmt validation passes
95211
* [ ] No broken RST markup
96-
* [ ] Terminology follows `GLOSSARY.md`
97-
* [ ] Style follows `STYLE_GUIDE.md`
98-
* [ ] GitHub Actions passes
212+
* [ ] No modified code examples
213+
* [ ] Terminology follows GLOSSARY.md
214+
* [ ] Style follows STYLE_GUIDE.md
215+
* [ ] Translation reviewed for natural Punjabi wording
216+
* [ ] GitHub Actions validation passes
99217

100218
## Commit Message Examples
101219

102220
```text
103-
Translate tutorial/classes.po to Punjabi (pa)
221+
Translate library/functions.po to Punjabi
222+
223+
Translate reference/datamodel.po to Punjabi
104224
105-
Translate tutorial/stdlib.po to Punjabi (pa)
225+
Update glossary terminology
106226
107-
Update glossary and translation guidelines
227+
Improve translation consistency
228+
229+
Fix validation issues in library modules
108230
```
109231

232+
## Translation Standards
233+
234+
Contributors should:
235+
236+
* Prefer natural Punjabi over literal word-for-word translation.
237+
* Preserve technical accuracy.
238+
* Maintain terminology consistency.
239+
* Keep formatting identical to the source.
240+
* Preserve all Sphinx and reStructuredText markup.
241+
* Follow existing translation patterns established in the completed tutorial section.
242+
110243
## Getting Help
111244

112-
Before translating technical terms, check:
245+
Before introducing new terminology, review:
246+
247+
* GLOSSARY.md
248+
* STYLE_GUIDE.md
249+
250+
For translation discussions, suggestions, and coordination, use GitHub Issues and Pull Requests.
113251

114-
* `GLOSSARY.md`
115-
* `STYLE_GUIDE.md`
252+
## License
116253

117-
For project discussions and coordination, use GitHub Issues or the Python documentation translation community channels.
254+
Documentation translations are contributed under the same licensing framework used by the Python Documentation Translation Project.

0 commit comments

Comments
 (0)