Beitrag zum Projekt
Caution
Die aktuellen Projektbetreuer erforschen die automatisierte Internationalisierung der Dokumentation. Daher werden PRs im Zusammenhang mit der Internationalisierung/Übersetzung der Dokumentation NICHT akzeptiert!
Bitte reichen Sie KEINE PRs im Zusammenhang mit der Internationalisierung/Übersetzung der Dokumentation ein!
Vielen Dank für Ihr Interesse an diesem Projekt! Bevor Sie mit Ihrem Beitrag beginnen, nehmen Sie sich bitte etwas Zeit, um die folgenden Richtlinien zu lesen, um sicherzustellen, dass Ihr Beitrag problemlos akzeptiert werden kann.
Arten von Beiträgen, die nicht akzeptiert werden
- Dokumentationsinternationalisierung/-übersetzung
- Beiträge im Zusammenhang mit der Kerninfrastruktur, wie z.B. HTTP-API, etc.
- Probleme, die explizit als "Keine Hilfe benötigt" markiert sind (einschließlich Probleme im Byaidu/PDFMathTranslate Repository).
- Andere Beiträge, die von den Maintainern als unangemessen erachtet werden.
Bitte reichen Sie KEINE PRs ein, die sich auf die oben genannten Arten beziehen.
Beitragsprozess
- Forken Sie dieses Repository und klonen Sie es lokal.
- Erstellen Sie einen neuen Branch:
git checkout -b feature/<feature-name>
. - Entwickeln Sie und stellen Sie sicher, dass Ihr Code den Anforderungen entspricht.
- Committen Sie Ihren Code:
- Pushen Sie zu Ihrem Repository:
git push origin feature/<feature-name>
. - Erstellen Sie einen PR auf GitHub, geben Sie eine detaillierte Beschreibung an und fordern Sie eine Überprüfung von @awwaawwa an.
- Stellen Sie sicher, dass alle automatisierten Prüfungen bestanden werden.
Tip
Sie müssen nicht warten, bis Ihre Entwicklung vollständig abgeschlossen ist, um einen PR zu erstellen. Eine frühzeitige Erstellung ermöglicht es uns, Ihre Implementierung zu überprüfen und Vorschläge zu machen.
Wenn Sie Fragen zum Quellcode oder verwandten Themen haben, wenden Sie sich bitte an den Maintainer unter [email protected].
Ressourcendateien für Version 2.0 werden mit BabelDOC geteilt. Der Code zum Herunterladen der zugehörigen Ressourcen befindet sich in BabelDOC. Wenn Sie neue Ressourcendateien hinzufügen möchten, wenden Sie sich bitte an den BabelDOC-Maintainer unter [email protected].
Grundlegende Anforderungen
1. Arbeitsablauf
- Bitte forken Sie vom
main
-Branch und entwickeln Sie auf Ihrem geforkten Branch. - Geben Sie beim Einreichen eines Pull Requests (PR) eine detaillierte Beschreibung Ihrer Änderungen an.
- Wenn Ihr PR die automatisierten Prüfungen nicht besteht (angezeigt durch
checks failed
und ein rotes Kreuz), überprüfen Sie bitte die entsprechendendetails
und passen Sie Ihre Einreichung an, um sicherzustellen, dass der neue PR alle Prüfungen besteht.
2. Entwicklung und Tests
- Verwenden Sie den Befehl
pip install -e .
für Entwicklung und Tests.
3. Code Formatting
- Konfigurieren Sie das
pre-commit
-Tool und aktivieren Sieblack
undflake8
für die Codeformatierung.
4. Abhängigkeitsaktualisierungen
- Wenn Sie neue Abhängigkeiten einführen, aktualisieren Sie bitte die Abhängigkeitsliste in der
pyproject.toml
-Datei zeitnah.
5. Dokumentationsaktualisierungen
- Wenn Sie neue Kommandozeilen-Optionen hinzufügen, aktualisieren Sie bitte die Liste der Kommandozeilen-Optionen in allen Sprachversionen der
README.md
-Datei entsprechend.
6. Commit-Nachrichten
- Verwenden Sie Conventional Commits, zum Beispiel:
feat(translator): add openai
.
7. Codierungsstil
- Stellen Sie sicher, dass Ihr eingereichter Code grundlegende Codierungsstilstandards einhält.
- Verwenden Sie entweder snake_case oder camelCase für die Benennung von Variablen.
8. Dokumentationsformatierung
- Für die Formatierung von
README.md
folgen Sie bitte den Chinesischen Richtlinien für Texterstellung. - Stellen Sie sicher, dass sowohl die englische als auch die chinesische Dokumentation immer auf dem neuesten Stand sind; Aktualisierungen der Dokumentation in anderen Sprachen sind optional.
Hinzufügen einer Übersetzungsmaschine
- Fügen Sie eine neue Übersetzerkonfigurationsklasse in der Datei
pdf2zh/config/translate_engine_model.py
hinzu. - Fügen Sie eine Instanz der neuen Übersetzerkonfigurationsklasse zum Typalias
TRANSLATION_ENGINE_SETTING_TYPE
in derselben Datei hinzu. - Fügen Sie die neue Übersetzerimplementierungsklasse im Ordner
pdf2zh/translator/translator_impl
hinzu.
Note
Dieses Projekt beabsichtigt nicht, Übersetzungsmaschinen mit einer RPS (Anfragen pro Sekunde) von weniger als 4 zu unterstützen. Bitte reichen Sie keine Unterstützung für solche Maschinen ein.
Projektstruktur
- config folder: Konfigurationssystem.
- translator folder: Implementierungen im Zusammenhang mit Übersetzern.
- gui.py: Stellt die GUI-Schnittstelle bereit.
- const.py: Einige Konstanten.
- main.py: Stellt das Kommandozeilen-Tool bereit.
- high_level.py: Hochrangige Schnittstellen basierend auf BabelDOC.
- http_api.py: Stellt HTTP-API bereit (nicht gestartet).
Kontaktieren Sie uns
Wenn Sie Fragen haben, senden Sie bitte Feedback über Issue oder treten Sie unserer Telegram-Gruppe bei. Vielen Dank für Ihren Beitrag!
Tip
Immersive Translate sponsert monatliche Pro-Mitgliedschaftscodes für aktive Mitwirkende an diesem Projekt. Einzelheiten finden Sie unter: BabelDOC/PDFMathTranslate Contributor Reward Rules