Katkıda bulunma
Katkılarınızı bekliyoruz! Pull request açmadan önce katkı rehberini okuyun. Fikirlerinizi tartışmalarda önerebilir veya proje iş listesine göz atabilirsiniz.
Projeyi hazırlayın
Bölüm başlığı “Projeyi hazırlayın”Python 3.10 ile 3.13 arası gereklidir. Yüklü değilse uv onu indirir.
-
FFmpeg’i ve Linux’ta PortAudio’yu kurun:
Terminal window # macOSbrew install ffmpeg# Ubuntu veya Debiansudo apt install ffmpeg libportaudio2# Windowschoco install ffmpeg -
Depoyu klonlayın:
Terminal window git clone https://github.com/HenestrosaDev/audiotext.gitcd audiotext -
Bağımlılıkları ve sanal ortamı yöneten uv aracını kurun.
-
Bağımlılıkları kurun:
Terminal window uv syncuv sync, PyTorch’u CUDA desteğiyle kurar; bu, Linux ve Windows’ta büyük bir indirmedir. NVIDIA ekran kartınız yoksa bunun yerine CPU sürümünü kurun:Terminal window uv sync --no-group cuda --group cpu -
Uygulamayı çalıştırın:
Terminal window uv run src/app.py
Geliştirme araçları
Bölüm başlığı “Geliştirme araçları”uv run pre-commit install # her commit'ten önce kodu denetler ve biçimlendiriruv run pytest # testleri çalıştırırArayüzü çevirin
Bölüm başlığı “Arayüzü çevirin”Arayüz gettext ile çevrilir. Metinler res/locales/audiotext.pot içinde, her dilin çevirileri ise res/locales/<dil>/LC_MESSAGES/audiotext.po içindedir. Bir sayıya bağlı metinlerin (ör. {count} file / {count} files), kataloğun Plural-Forms başlığında belirtildiği gibi dilin her çoğul biçimi için bir çevirisi vardır (msgstr[0], msgstr[1]…). Aynı metin, her yerde farklı çevrilebilmesi için bir kez bağlamla (msgctxt) olmak üzere iki kez görünebilir: ör. Done bir transkripsiyonun durumudur, files bağlamıyla ise bir klasörün dosyalarına ait bir filtredir.
Koddaki metinler değiştiğinde veya bir .po dosyasını düzenledikten sonra (ör. Poedit ile) bu betiği çalıştırın. Betik metinleri çıkarır, katalogları günceller, derler ve hâlâ çevrilmesi ya da gözden geçirilmesi gereken metinleri (fuzzy olarak işaretli) listeler; uygulama bu metinleri o zamana kadar İngilizce gösterir. Bir katalog güncel olmadığı sürece testler başarısız olur.
uv run .github/scripts/update_translations.pyBir dil eklemek için kataloğunu oluşturun, çevirin, derleyin ve dili src/utils/i18n.py içindeki UI_LANGUAGES’a ekleyin:
uv run pybabel init -i res/locales/audiotext.pot -d res/locales -D audiotext -l <kod>uv run .github/scripts/update_translations.pyBu belgeleri iyileştirin
Bölüm başlığı “Bu belgeleri iyileştirin”Bu site Starlight ile oluşturulmuştur ve audiotext-docs deposundadır. Her dilin src/content/docs içinde kendi klasörü vardır (İngilizce en içindedir).
git clone https://github.com/HenestrosaDev/audiotext-docs.gitcd audiotext-docsnpm installnpm run dev # siteyi http://localhost:4321 adresinde sunarnpm run build # siteyi dist içinde derlerHer sayfanın altında, sayfayı GitHub’da açan bir Sayfayı düzenle bağlantısı bulunur.