Babel: Übersetzungsdateien kompilieren, wenn setup.py install @ aufgerufen wi
Ich entwickle eine Flask-Anwendung mit Babel. Dank an Distutils / Setuptools Integration, alle Parameter der Funktionen compile / extract / ... sind in @ gespeichesetup.cfg
und das Kompilieren der i18n-Dateien ist so einfach wie
./setup.py compile_catalog
Groß. Jetzt möchte ich, dass dies beim Ausführen von @ automatisch erfolg
./setup.py install
Immake
's Worte, das wäre zu lasseninstall
Ziel hängen von @ compile_catalog
target.
Wir speichern nur die Übersetzung .po
) Dateien im Code-Repository. .gitignore schließt @ a.mo
und.pot
Dateien werden nicht verfolgt.
Wenn ein Entwickler eine neue Version des Codes abruft, führt er @ au
pip install -r requirements.txt
, um Abhängigkeiten zu aktualisieren und das Projekt im Entwicklungsmodus zu installieren. Dann kompiliert er über die Befehlszeile die Übersetzungsbinärdatei .mo
) Dateien.
Gibt es eine einfache und empfohlene Möglichkeit, @ zu ändersetup.py
beide Operationen in einem Schritt ausführen? Oder versuche ich, @ zu missbrauchsetuptools
?
Verwendung eines Skripts, das so aussieht, würde zu Entwicklungszwecken funktionieren:
#!/bin/sh
./setup.py compile_catalog
pip install -r requirements.txt
aber ich möchte eine Lösung, die auch funktioniert, wenn das Paket mit üblichen @ installiert isetup.py
Installationsanweisungen, wie bei der Installation von PyPi.
Sollte ich das verstehensetuptools
sollte nicht so verwendet werden, und Benutzer, die Software verteilen, kompilieren ihre Übersetzungsdateien entweder manuell oder mithilfe von benutzerdefinierten Skripten, wenn sie ihre Archive erstellen, anstatt sich auf @ zu verlassesetup.py
um sie bei der Installation zu kompilieren?
Ich habe nicht viele Beiträge im Internet gefunden, die dies ansprechen. Diejenigen, bei denen ich festgestellt habe, dass sie mit @ zu tun habpybabel
Kommandozeilenschnittstelle von einer Funktion insetup.py
, das klingt schade, da es den Punkt der Setuptools-Integration verfehlt.