From ef870346deece9077cc5635e2c9c764d12c92a01 Mon Sep 17 00:00:00 2001 From: Robert Lehmann Date: Fri, 27 Aug 2010 01:02:49 +0200 Subject: [PATCH] Document internationalization mechanisms. --- doc/builders.rst | 6 +-- doc/config.rst | 110 +++++++++++++++++++++++++------------------- doc/intl.rst | 62 +++++++++++++++++++++++-- doc/invocation.rst | 3 ++ doc/translation.png | Bin 0 -> 40683 bytes 5 files changed, 127 insertions(+), 54 deletions(-) create mode 100644 doc/translation.png diff --git a/doc/builders.rst b/doc/builders.rst index 7d182d068..8ea46ad62 100644 --- a/doc/builders.rst +++ b/doc/builders.rst @@ -223,10 +223,10 @@ Note that a direct PDF builder using ReportLab is available in `rst2pdf .. module:: sphinx.builders.intl .. class:: MessageCatalogBuilder - This builder produces a message catalog file for each reST file or - subdirectory. + This builder produces gettext-style message catalos. Each top-level file or + subdirectory grows a single ``.pot`` catalog template. - See the documentation on :ref:`internationalization ` for further reference. + See the documentation on :ref:`intl` for further reference. Its name is ``gettext``. diff --git a/doc/config.rst b/doc/config.rst index 3115c401c..d5f5cbe58 100644 --- a/doc/config.rst +++ b/doc/config.rst @@ -143,20 +143,6 @@ General configuration .. deprecated:: 1.0 Use :confval:`exclude_patterns` instead. -.. confval:: locale_dirs - - .. versionadded:: 0.5 - - Directories in which to search for additional Sphinx message catalogs (see - :confval:`language`), relative to the source directory. The directories on - this path are searched by the standard :mod:`gettext` module for a text - domain of ``sphinx``; so if you add the directory :file:`./locale` to this - settting, the message catalogs (compiled from ``.po`` format using - :program:`msgfmt`) must be in - :file:`./locale/{language}/LC_MESSAGES/sphinx.mo`. - - The default is ``[]``. - .. confval:: templates_path A list of paths that contain extra templates (or templates that overwrite @@ -272,40 +258,6 @@ Project information If you don't need the separation provided between :confval:`version` and :confval:`release`, just set them both to the same value. -.. confval:: language - - The code for the language the docs are written in. Any text automatically - generated by Sphinx will be in that language. Also, in the LaTeX builder, a - suitable language will be selected as an option for the *Babel* package. - Default is ``None``, which means that no translation will be done. - - .. versionadded:: 0.5 - - Currently supported languages are: - - * ``bn`` -- Bengali - * ``ca`` -- Catalan - * ``cs`` -- Czech - * ``da`` -- Danish - * ``de`` -- German - * ``en`` -- English - * ``es`` -- Spanish - * ``fi`` -- Finnish - * ``fr`` -- French - * ``hr`` -- Croatian - * ``it`` -- Italian - * ``lt`` -- Lithuanian - * ``nl`` -- Dutch - * ``pl`` -- Polish - * ``pt_BR`` -- Brazilian Portuguese - * ``ru`` -- Russian - * ``sl`` -- Slovenian - * ``sv`` -- Swedish - * ``tr`` -- Turkish - * ``uk_UA`` -- Ukrainian - * ``zh_CN`` -- Simplified Chinese - * ``zh_TW`` -- Traditional Chinese - .. confval:: today today_fmt @@ -381,6 +333,68 @@ Project information .. versionadded:: 1.0 +.. _intl-options: + +Options for internationalization +-------------------------------- + +These options influence Sphinx' *Native Language Support*. See the +documentation on :ref:`intl` for details. + +.. confval:: language + + The code for the language the docs are written in. Any text automatically + generated by Sphinx will be in that language. Also, Sphinx will try to + substitute individual paragraphs from your documents with the translation + sets obtained from :confval:`locale_dirs`. In the LaTeX builder, a suitable + language will be selected as an option for the *Babel* package. Default is + ``None``, which means that no translation will be done. + + .. versionadded:: 0.5 + + Currently supported languages by Sphinx are: + + * ``bn`` -- Bengali + * ``ca`` -- Catalan + * ``cs`` -- Czech + * ``da`` -- Danish + * ``de`` -- German + * ``en`` -- English + * ``es`` -- Spanish + * ``fi`` -- Finnish + * ``fr`` -- French + * ``hr`` -- Croatian + * ``it`` -- Italian + * ``lt`` -- Lithuanian + * ``nl`` -- Dutch + * ``pl`` -- Polish + * ``pt_BR`` -- Brazilian Portuguese + * ``ru`` -- Russian + * ``sl`` -- Slovenian + * ``sv`` -- Swedish + * ``tr`` -- Turkish + * ``uk_UA`` -- Ukrainian + * ``zh_CN`` -- Simplified Chinese + * ``zh_TW`` -- Traditional Chinese + +.. confval:: locale_dirs + + .. versionadded:: 0.5 + + Directories in which to search for additional message catalogs (see + :confval:`language`), relative to the source directory. The directories on + this path are searched by the standard :mod:`gettext` module. + + Internal messages are fetched from a text domain of ``sphinx``; so if you + add the directory :file:`./locale` to this settting, the message catalogs + (compiled from ``.po`` format using :program:`msgfmt`) must be in + :file:`./locale/{language}/LC_MESSAGES/sphinx.mo`. The text domain of + individual documents depends on their docname if they are top-level project + files and on their base directory otherwise. + + The default is ``[]``. + + .. _html-options: Options for HTML output diff --git a/doc/intl.rst b/doc/intl.rst index b60367675..b5abf9d80 100644 --- a/doc/intl.rst +++ b/doc/intl.rst @@ -7,7 +7,63 @@ Internationalization Complementary to translations provided for Sphinx-generated messages such as navigation bars, Sphinx provides mechanisms facilitating *document* translations -in itself. It relies on the existing configuration values :confval:`language` -and :confval:`locale_dirs`. +in itself. See the :ref:`intl-options` for details on configuration. -.. XXX write more! +.. figure:: translation.png + :width: 100% + + Workflow visualization of translations in Sphinx. [1]_ + +**gettext** [2]_ is an established standard for internationalization and +localization. It naïvely maps messages in a program to a translated string. +Sphinx uses these facilities to translate whole documents. + +Initially project maintainers have to collect all translatable strings (also +referred to as *messages*) to make them known to translators. Sphinx extracts +these through invocation of ``sphinx-build -b gettext``. + +Every single element in the doctree will end up in a single message which +results in lists being equally split into different chunks while large +paragraphs will remain as coarsely-grained as they were in the original +document. This grants seamless document updates while still providing a little +bit of context for translators in free-text passages. It is the maintainer's +task to split up paragraphs which are too large as there is no sane automated +way to do that. + +After Sphinx successfully ran the +:class:`~sphinx.builders.intl.MessageCatalogBuilder` you will find a collection +of ``.pot`` files in your output directory. These are **catalog templates** +and contain messages in your original language *only*. + +They can be delivered to translators which will transform them to ``.po`` files +--- so called **message catalogs** --- containing a mapping from the original +messages to foreign-language strings. + +Gettext compiles them into a binary format known as **binary catalogs** through +:program:`msgfmt` for efficiency reasons. If you make these files discoverable +with :confval:`locale_dirs` for your :confval:`language`, Sphinx will pick them +up automatically. + +An example: you have a document ``usage.rst`` in your Sphinx project. The +gettext builder will put its messages into ``usage.pot``. Image you have +Spanish translations [3]_ on your hands in ``usage.po`` --- for your builds to +be translated you need to follow these instructions: + +* Compile your message catalog to a locale directory, say ``translated``, so it + ends up in ``./translated/es/LC_MESSAGES/usage.mo`` in your source directory + (where ``es`` is the language code for Spanish.) :: + + msgfmt "usage.po" -o "translated/es/LC_MESSAGES/usage.mo" + +* Set :confval:`locale_dirs` to ``["translated/"]``. +* Set :confval:`language` to ``es`` (also possible via :option:`-D`). +* Run your desired build. + + +.. rubric:: Footnotes + +.. [1] The stick-figure is taken from an `XKCD comic `_. +.. [2] See the `GNU gettext utilites + `_ + for details on that software suite. +.. [3] Because nobody expects the Spanish Inquisition! diff --git a/doc/invocation.rst b/doc/invocation.rst index 6b8b9ee35..e143a3233 100644 --- a/doc/invocation.rst +++ b/doc/invocation.rst @@ -43,6 +43,9 @@ The :program:`sphinx-build` script has several options: **text** Build plain text files. + **gettext** + Build gettext-style message catalogs (``.pot`` files). + **doctest** Run all doctests in the documentation, if the :mod:`~sphinx.ext.doctest` extension is enabled. diff --git a/doc/translation.png b/doc/translation.png new file mode 100644 index 0000000000000000000000000000000000000000..aa368b67e29f1728f6aa9d63dc3b8bb78df9b471 GIT binary patch literal 40683 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
4g-pq8(aq|hSz7F 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 Obmr=7C(O3m{l5U?Dt|Tr literal 0 HcmV?d00001