Dokumentáció fordítása Sphinx használatával

A Sphinx egy eszköz látványos dokumentációk létrehozására. Egyszerű reStructuredText szintaxist használ, és számos kimeneti formátumot támogat. Ha példát keres, akkor jó tudni, hogy ez a dokumentáció is Sphinx segítségével készült. A Sphinx kiváló kiegészítője a Read the Docs szolgáltatás, amely ingyenesen építi és közzéteszi a dokumentációját.

I will not focus on writing documentation itself, if you need guidance with that, just follow instructions on the Sphinx website. Once you have documentation ready, translating it is quite easy as Sphinx comes with support for this and it is quite nicely covered in their Internationalization. It’s matter of a few configuration directives and invoking the sphinx-intl tool.

If you are using Read the Docs service, you can start building translated documentation on Read the Docs. Their Localization and Internationalization covers pretty much everything you need - creating another project, setting its language, and linking it from the main project as a translation.

Now all you need is translating the documentation content. Sphinx generates PO file for each directory or top-level file, which can lead to quite a lot of files to translate (depending on gettext_compact settings). You can import the index.po into Weblate as an initial component and then configure Összetevők felismerése add-on to automatically discover all others.

Összetevőkonfiguráció

Összetevő neve

Documentation

Fájlmaszk

docs/locales/*/LC_MESSAGES/index.po

Sablon az új fordításokhoz

docs/locales/index.pot

Fájlformátum

gettext PO-fájl

Fordítási jelzők

rst-text

Összetevő-felismerés konfigurálása

Reguláris kifejezés, amellyel a fordítási fájlokat egyezteti

docs/locales/(?P<language>[^/.]*)/LC_MESSAGES/(?P<component>[^/]*)\.po

Az összetevő nevének testreszabása

Documentation: {{ component|title }}

Új fordítások alapfájljának meghatározása

docs/locales/{{ component }}.pot

Tipp

Szeretné, ha a Sphinx csak egyetlen PO-fájlt generálna? A Sphinx 3.3.0 verziójától ez már lehetséges az alábbi beállítással:

gettext_compact = "docs"

Számos dokumentációs projekt is létezik, amelyek fordítása ezen a módon történik: