Continuation of adding translations to theme

This builds on top of #405, addressing the outstanding review feedback. It:

* Moves workflow to our standard Transifex workflow, drops recommendation for
  running babel commands by hand
* Configures Transifex
* Moves all of the commands needed to maintain translations into Grunt
* Sets up docs for translation testing
* Covers installation in docs better
* Drops recommendation for installation through submodules
* Drops superfluous translation documentation
* Cleans up some of the code
* Updates a lot of related documentation
* Updates files at Transifex and brings in full translations back to the
  translation files in the repository
This commit is contained in:
Anthony Johnson 2019-07-16 20:27:16 -06:00
parent f9a2fe45d3
commit caa3373297
20 changed files with 540 additions and 349 deletions

1
.gitignore vendored
View File

@ -1,7 +1,6 @@
*.pyc
*.egg-info
*.egg
*.mo
*build/
.tox
.coverage

8
.tx/config Normal file
View File

@ -0,0 +1,8 @@
[sphinx-rtd-theme.sphinx-rtd-theme]
file_filter = sphinx_rtd_theme/locale/<lang>/LC_MESSAGES/sphinx.po
source_file = sphinx_rtd_theme/locale/en/LC_MESSAGES/sphinx.po
source_lang = en
[main]
host = https://www.transifex.com
type = PO

View File

@ -140,7 +140,22 @@ module.exports = function(grunt) {
cmd: 'bower update'
},
build_sphinx: {
cmd: 'sphinx-build docs/ docs/build'
cmd: function (locale) {
locale = (typeof locale !== 'undefined') ? locale : 'en';
return 'sphinx-build -D language=' + locale + ' docs/ docs/build/html'
}
},
babel_extract: {
cmd: 'python setup.py extract_messages'
},
babel_compile: {
cmd: 'python setup.py compile_catalog'
},
tx_pull: {
cmd: 'tx pull'
},
tx_push: {
cmd: 'tx push --source'
}
},
clean: {
@ -184,6 +199,33 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-open');
grunt.loadNpmTasks('grunt-browserify');
grunt.registerTask('default', ['exec:bower_update','clean','copy:fonts','sass:dev','browserify:dev','usebanner','exec:build_sphinx','connect','open','watch']);
grunt.registerTask('build', ['exec:bower_update','clean','copy:fonts','sass:build','browserify:build','uglify','usebanner','exec:build_sphinx']);
grunt.registerTask('default', [
'exec:bower_update',
'clean',
'copy:fonts',
'sass:dev',
'browserify:dev',
'usebanner',
'exec:build_sphinx',
'connect',
'open',
'watch'
]);
grunt.registerTask('build', [
'exec:bower_update',
'clean',
'copy:fonts',
'sass:build',
'browserify:build',
'uglify',
'usebanner',
'exec:build_sphinx'
]);
grunt.registerTask('i18n', [
'exec:babel_extract',
'exec:tx_push',
'exec:tx_pull',
'exec:babel_compile',
'exec:build_sphinx:es'
]);
}

View File

@ -1,4 +1,3 @@
**************************
Read the Docs Sphinx Theme
**************************
@ -6,8 +5,8 @@ Read the Docs Sphinx Theme
.. image:: https://img.shields.io/pypi/v/sphinx_rtd_theme.svg
:target: https://pypi.python.org/pypi/sphinx_rtd_theme
:alt: Pypi Version
.. image:: https://travis-ci.org/rtfd/sphinx_rtd_theme.svg?branch=master
:target: https://travis-ci.org/rtfd/sphinx_rtd_theme
.. image:: https://travis-ci.org/readthedocs/sphinx_rtd_theme.svg?branch=master
:target: https://travis-ci.org/readthedocs/sphinx_rtd_theme
:alt: Build Status
.. image:: https://img.shields.io/pypi/l/sphinx_rtd_theme.svg
:target: https://pypi.python.org/pypi/sphinx_rtd_theme/
@ -16,45 +15,56 @@ Read the Docs Sphinx Theme
:target: http://sphinx-rtd-theme.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
The ``sphinx_rtd_theme`` is a sphinx_ theme designed to look modern and be mobile-friendly.
This theme is primarily focused to be used on readthedocs.org_ but can work with your
own sphinx projects. To read more and see a working demo_ head over to readthedocs.org_.
This Sphinx_ theme was designed to provide a great reader experience for
documentation users on both desktop and mobile devices. This theme is used
primarily on `Read the Docs`_ but can work with any Sphinx project. You can find
a working demo of the theme in the `theme documentation`_
.. _sphinx: http://www.sphinx-doc.org
.. _readthedocs.org: http://www.readthedocs.org
.. _demo: https://sphinx-rtd-theme.readthedocs.io/en/latest/
.. _Sphinx: http://www.sphinx-doc.org
.. _Read the Docs: http://www.readthedocs.org
.. _theme documentation: https://sphinx-rtd-theme.readthedocs.io/en/latest/
Installation
============
Installing
==========
This theme is distributed on PyPI_ and can be installed with ``pip``:
The theme is distributed on PyPI_ and can be installed with pip::
.. code:: bash
pip install sphinx_rtd_theme
For more information read the full installing docs
`here <https://sphinx-rtd-theme.readthedocs.io/en/latest/installing.html>`__.
To use the theme in your Sphinx project, you will need to add the following to
your ``conf.py`` file:
.. code:: python
import sphinx_rtd_theme
extensions = [
...
"sphinx_rtd_theme",
]
html_theme = "sphinx_rtd_theme"
For more information read the full documentation on `installing the theme`_
.. _PyPI: https://pypi.python.org/pypi/sphinx_rtd_theme
.. _installing the theme: https://sphinx-rtd-theme.readthedocs.io/en/latest/installing.html
Configuration
=============
The ``sphinx_rtd_theme`` is highly customizable on both the page level and on a global level.
To see all the possible configuration options read the configuring docs
`here <https://sphinx-rtd-theme.readthedocs.io/en/latest/configuring.html>`__.
This theme is highly customizable on both the page level and on a global level.
To see all the possible configuration options, read the documentation on
`configuring the theme`_.
.. _configuring the theme: https://sphinx-rtd-theme.readthedocs.io/en/latest/configuring.html
Contributing
============
If you would like to help improve the theme or have more control
over the theme in case of a fork please read our contributing guide
`here <https://sphinx-rtd-theme.readthedocs.io/en/latest/contributing.html>`__.
If you would like to help modify or translate the theme, you'll find more
information on contributing in our `contributing guide`_.
Translations
------------
You can help to translate the Read the Docs Sphinx Theme,
please read the :doc:`translations </docs/translations>` guide for more details.
.. _contributing guide: https://sphinx-rtd-theme.readthedocs.io/en/latest/contributing.html

View File

@ -2,16 +2,12 @@
Changelog
*********
Master
master
======
New Features
-------------
* Added Spanish translation
* Added i18n support using Babel
* Added Translation Guide documentation
Fixes
-----
@ -19,6 +15,8 @@ Other Changes
--------------
* Add the ``navigation`` template block around the navigation area.
* Added Spanish translation
* Added i18n support using Babel
0.4.3
======

View File

@ -4,11 +4,10 @@ import sys
import os
import re
sys.path.append(os.path.abspath('..'))
sys.path.insert(0, os.path.abspath('..'))
sys.path.append(os.path.abspath('./demo/'))
from sphinx.locale import _
from sphinx_rtd_theme import __version__
@ -32,6 +31,8 @@ extensions = [
templates_path = ['_templates']
source_suffix = '.rst'
exclude_patterns = []
locale_dirs = ['locale/']
gettext_compact = False
master_doc = 'index'
suppress_warnings = ['image.nonlocal_uri']

View File

@ -1,82 +1,106 @@
************
Contributing
************
***********************************
Contributing or modifying the theme
***********************************
This project follows the Read the Docs :doc:`code of conduct
<rtd:code-of-conduct>`. If you are not familiar with our code of conduct policy,
take a minute to read the policy before starting with your first contribution.
The sphinx_rtd_theme is primarily a sass_ project that requires a few other sass libraries. I'm
using bower_ to manage these dependencies and sass_ to build the css. The good news is
I have a very nice set of grunt_ operations that will not only load these dependencies, but watch
for changes, rebuild the sphinx demo docs and build a distributable version of the theme.
The bad news is this means you'll need to set up your environment similar to that
of a front-end developer (vs. that of a python developer). That means installing node and ruby.
Modifying the theme
===================
.. seealso::
If you are unsure of appropriate actions to take while interacting with our
community please read our :doc:`Code of Conduct <rtd:code-of-conduct>`.
The styles for this theme use SASS_ and a custom CSS framework called Wyrm_. We
use Bower_ to manage these dependencies and SASS_ to build the CSS. Grunt_ is
used to watch for changes, rebuild the static assets, and rebuild the Sphinx
demo documentation.
.. note::
The installation of Ruby and Node is outside the scope of this
documentation. You will need both in order to make changes to this theme.
Set up your environment
=======================
-----------------------
#. Install sphinx_ into a virtual environment.
#. Install Sphinx_ and documentation build dependencies.
.. code:: bash
pip install sphinx sphinxcontrib-httpdomain
pip install -r docs/requirements.txt
#. Install sass.
#. Install SASS.
.. code:: bash
gem install sass
#. Install node, bower, grunt, and theme dependencies.
#. Install Bower, Grunt, and theme dependencies locally.
.. code:: bash
# Install node
brew install node
# Install bower and grunt
npm install -g bower grunt-cli
# Now that everything is installed, let's install the theme dependencies.
npm install
Now that our environment is set up, make sure you're in your virtual environment, go to
this repository in your terminal and run grunt:
Making changes
--------------
Changes to the theme can be compiled and tested with the default Grunt task:
.. code::
grunt
This default task will do the following **very cool things that make it worth the trouble**:
This default task will do the following:
#. Install and update any bower dependencies.
#. Run sphinx and build new docs.
#. Watch for changes to the sass files and build css from the changes.
#. Rebuild the sphinx docs anytime it notices a change to ``.rst``, ``.html``, ``.js``
or ``.css`` files.
#. Install and update any Bower dependencies.
#. Build the static CSS from SASS source files.
#. Build the demo documentation.
#. Watch for changes to the SASS files and documentation and rebuild everything
on any detected changes.
.. _bower: http://www.bower.io
.. _sass: http://www.sass-lang.com
.. _wyrm: http://www.github.com/snide/wyrm/
.. _grunt: http://www.gruntjs.com
.. _node: http://www.nodejs.com
.. _sphinx: http://www.sphinx-doc.org/en/stable/
Alternatively, if you don't need to watch the files, Grunt can be called with
the same task used for releases:
.. code:: bash
Releasing the Theme
grunt build
.. _Bower: http://www.bower.io
.. _SASS: http://www.sass-lang.com
.. _Wyrm: http://www.github.com/snide/wyrm/
.. _Grunt: http://www.gruntjs.com
.. _Sphinx: http://www.sphinx-doc.org/en/stable/
Translations
============
Translations are managed using `Transifex`_. You can join any of the existing
language teams or request a new language is added to the project. For more
information on our translation standards, see our docs on
:doc:`rtd:development/i18n`
Periodically, core team should update the translation files outside our normal
releases. Someone from the core team, with write access to Transifex, should run
the following:
.. code:: bash
grunt i18n
This will extract new messages, upload the messages to Transifex, and will
update our local translation files. Changes can be checked in to a branch and
put up for review.
.. _Transifex: https://www.transifex.com/readthedocs/sphinx-rtd-theme
Releasing the theme
===================
When you release a new version,
you should do the following:
To release a new version of the theme, core team will take the following steps:
#. Bump the version in ``sphinx_rtd_theme/__init__.py``, ``bower.json`` and ``package.json`` --
we try to follow `semver <http://semver.org/>`_, so be careful with breaking changes.
#. Update the changelog (``docs/changelog.rst``) with the version information.
#. Run a ``grunt build`` to rebuild all the theme assets.
#. Run ``grunt build`` to rebuild all the theme assets.
#. Run ``grunt i18n`` to compile new translation files and update Transifex
#. Commit that change.
#. Tag the release in git: ``git tag $NEW_VERSION``.
#. Push the tag to GitHub: ``git push --tags origin``.
@ -84,6 +108,6 @@ you should do the following:
.. code:: bash
$ rm -rf dist/
$ python setup.py sdist bdist_wheel
$ twine upload --sign --identity security@readthedocs.org dist/*
rm -rf dist/
python setup.py sdist bdist_wheel
twine upload --sign --identity security@readthedocs.org dist/*

View File

@ -6,15 +6,18 @@
installing
configuring
changelog
contributing
translations
.. toctree::
:maxdepth: 1
:hidden:
changelog
.. toctree::
:maxdepth: 2
:numbered:
:caption: Demo Documents
:caption: Demo Documentation
demo/structure
demo/demo

View File

@ -1,11 +1,7 @@
************
Installation
************
Via Python Package
==================
Install the package (or add it to your ``requirements.txt`` file):
.. code:: bash
@ -16,17 +12,18 @@ In your ``conf.py`` file:
.. code:: python
html_theme = "sphinx_rtd_theme"
import sphinx_rtd_theme
Via Git or Download
===================
Symlink or subtree the ``sphinx_rtd_theme/sphinx_rtd_theme`` repository into your documentation at
``docs/_themes/sphinx_rtd_theme`` then add the following two settings to your Sphinx
``conf.py`` file:
.. code:: python
extensions = [
...
'sphinx_rtd_theme',
]
html_theme = "sphinx_rtd_theme"
html_theme_path = ["_themes", ]
.. note::
Adding this theme as an extension is what enables localization of theme
strings in your translated output. If these strings are not translated in
your output, either we lack the localized strings for your locale, or you
are using an old version of the theme.

View File

@ -1,192 +0,0 @@
******************
Translation Guide
******************
.. contents::
You can help to translate the Read the Docs Sphinx Theme.
Installation
============
For translating the Read the Docs Sphinx Theme you will need to install the following packages:
.. code:: bash
$ pip install babel Jinja2
Translating Applications with Babel
-----------------------------------
After you marked all the strings you want to translate in this Sphinx theme with the gettext function
alias ``_('str')`` or ``{% trans %}string 1, string 2, string 3, etc.{% endtrans %}`` blocks.
Then its time to create a .pot file. A .pot file contains all the strings and is the template for a
.po file which contains the translated strings. The ``babel`` package can do all that for you.
Configuration
=============
For enable the *Internationalization and Localization* for this Sphinx Theme, you will need checkout
the following configurations:
Translations files
------------------
The translations files are based on ``gettext`` format and they are placed at the
:file:`sphinx_rtd_theme/locale/` directory, like it showing the following structure:
.. code:: bash
sphinx_rtd_theme/locale/
├── es
│   └── LC_MESSAGES
│   ├── sphinx.mo
│   └── sphinx.po
└── sphinx.pot
:file:`sphinx_rtd_theme/locale/<LANG>/LC_MESSAGES/`
This folder contains a specific language is the **Gettext format**.
:file:`sphinx.pot`
This file is the **Portable Object Template** Gettext format.
:file:`sphinx.po`
This file is the **Portable Object** Gettext format to translate.
Babel Configurations
--------------------
The ``babel`` packages provides commands for integration into :file:`setup.py` scripts, based on either
the ``distutils`` package that is part of the Python standard library, or the third-party ``setuptools``
package.
Then :file:`setup.cfg` file simply configures the behavior of the various setup commands for this package.
This file contains the options that you can be specified on the command-line. The :file:`setup.cfg` file
at root folder of this Sphinx theme, look like the following:
.. code:: cfg
[bdist_wheel]
universal = 1
# Babel configurations for setup.py scripts
[compile_catalog]
domain = sphinx
directory = sphinx_rtd_theme/locale/
[extract_messages]
mapping_file = babel.cfg
output_file = sphinx_rtd_theme/locale/sphinx.pot
keywords = _ l_ lazy_gettext
[init_catalog]
input_file = sphinx_rtd_theme/locale/sphinx.pot
output_file = sphinx_rtd_theme/locale/$LANG/LC_MESSAGES/sphinx.po
[update_catalog]
domain = sphinx
input_file = sphinx_rtd_theme/locale/sphinx.pot
output_dir = sphinx_rtd_theme/locale/
If the command has been correctly installed or registered, a project's setup.py script should
allow you to use the following command:
.. code:: bash
$ python ./setup.py subcommand options
Execute the follow command for more options and follow these instructions to get details:
.. code:: bash
$ python ./setup.py --help-commands
Extraction Configurations
-------------------------
First of all you have to get into the folder where you have your Sphinx theme and create a mapping file
called :file:`babel.cfg` that contains the **extraction from Jinja2 HTML templates** configurations.
For typical Sphinx extensions, this is what you want in there:
.. code:: cfg
# Extraction from Jinja2 HTML templates
[jinja2: **/**.html]
encoding = utf-8
ignore_tags = script,style
include_attrs = alt title summary placeholder
.. seealso::
More details check out the following links:
- `How setup this file <http://babel.pocoo.org/en/latest/setup.html>`_
- `A previous file example description <http://babel.pocoo.org/en/latest/messages.html#extraction-method-mapping-and-configuration>`_
Administrative Tasks
====================
The ``babel`` package have a *Distutils/Setuptools Integration* which supports the options
defined in the :file:`setup.cfg` file that can be executed via command line.
These options are the commonly using as **"Translations Administrative Tasks"** and the most
used tasks are described below:
Extract messages
----------------
It can extract localizable messages from a variety of difference source files,
and generate a PO (portable object) template file from the collected messages.
Running the following command will produce a PO template file:
.. code:: bash
$ python ./setup.py extract_messages -o ./sphinx_rtd_theme/locale/sphinx.pot
.. tip::
More options please, check out http://babel.pocoo.org/en/latest/setup.html#extract-messages
Init catalog
------------
It creates a new translation catalog based on a PO template file (POT). Running the following
command will produce a PO file:
.. code:: bash
$ python ./setup.py init_catalog -l es -i ./sphinx_rtd_theme/locale/sphinx.pot \
-o ./sphinx_rtd_theme/locale/es/LC_MESSAGES/sphinx.po
.. tip::
More options please, check out http://babel.pocoo.org/en/latest/setup.html#init-catalog
Update catalog
--------------
It updates an existing translations catalog based on a PO template file (POT). Running the following
command will update a PO file:
.. code:: bash
$ python ./setup.py update_catalog -l es -i ./sphinx_rtd_theme/locale/sphinx.pot \
-o ./sphinx_rtd_theme/locale/es/LC_MESSAGES/sphinx.po
.. tip::
More options please, check out http://babel.pocoo.org/en/latest/setup.html#update-catalog
Compile catalog
---------------
It compile catalog an existing translations based on PO files into MO files. Running the following
command will compile catalog of PO files:
.. code:: bash
$ python ./setup.py compile_catalog -d ./sphinx_rtd_theme/locale/

View File

@ -1,16 +1,16 @@
[bdist_wheel]
universal = 1
# Babel configurations for setup.py scripts
# http://babel.pocoo.org/en/latest/setup.html
[extract_messages]
mapping_file = babel.cfg
output_file = sphinx_rtd_theme/locale/sphinx.pot
keywords = _ l_ lazy_gettext
add_comments = Translators:
[init_catalog]
domain = sphinx
input_file = sphinx_rtd_theme/locale/sphinx.pot
output_file = sphinx_rtd_theme/locale/$LANG/LC_MESSAGES/sphinx.po
output_dir = sphinx_rtd_theme/locale/
[update_catalog]
domain = sphinx

View File

@ -1,9 +1,11 @@
"""Sphinx ReadTheDocs theme.
"""
Sphinx Read the Docs theme.
From https://github.com/ryan-roemer/sphinx-bootstrap-theme.
"""
from os import path
import sphinx
@ -21,10 +23,8 @@ def get_html_theme_path():
def setup(app):
app.add_html_theme('sphinx_rtd_theme', path.abspath(path.dirname(__file__)))
# for sphinx-1.8 or later
if sphinx.version_info[0:3] >= (1,8,0):
rtd_locale_path = path.join(path.abspath(path.dirname(__file__)), 'locale')
if sphinx.version_info >= (1, 8, 0):
# Add Sphinx message catalog for newer versions of Sphinx
# See http://www.sphinx-doc.org/en/master/extdev/appapi.html#sphinx.application.Sphinx.add_message_catalog
rtd_locale_path = path.join(path.abspath(path.dirname(__file__)), 'locale')
app.add_message_catalog('sphinx', rtd_locale_path)

Binary file not shown.

View File

@ -0,0 +1,145 @@
# English translations for sphinx_rtd_theme.
# Copyright (C) 2019 ORGANIZATION
# This file is distributed under the same license as the sphinx_rtd_theme
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2019.
#
msgid ""
msgstr ""
"Project-Id-Version: sphinx_rtd_theme 0.4.3.dev0\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2019-07-16 15:59-0600\n"
"PO-Revision-Date: 2019-07-16 15:43-0600\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
"Language-Team: en <LL@li.org>\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.6.0\n"
#: sphinx_rtd_theme/breadcrumbs.html:31
msgid "Docs"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:43 sphinx_rtd_theme/breadcrumbs.html:45
msgid "Edit on GitHub"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:50 sphinx_rtd_theme/breadcrumbs.html:52
msgid "Edit on Bitbucket"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:57 sphinx_rtd_theme/breadcrumbs.html:59
msgid "Edit on GitLab"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:62 sphinx_rtd_theme/breadcrumbs.html:64
msgid "View page source"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:74 sphinx_rtd_theme/footer.html:5
msgid "Next"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:77 sphinx_rtd_theme/footer.html:8
msgid "Previous"
msgstr ""
#: sphinx_rtd_theme/footer.html:21 sphinx_rtd_theme/footer.html:24
#: sphinx_rtd_theme/layout.html:92
msgid "Copyright"
msgstr ""
#: sphinx_rtd_theme/footer.html:30
msgid "Build"
msgstr ""
#: sphinx_rtd_theme/footer.html:35
msgid "Revision"
msgstr ""
#: sphinx_rtd_theme/footer.html:39
#, python-format
msgid "Last updated on %(last_updated)s."
msgstr ""
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "Built with %(sphinx_web)s using a"
msgstr ""
#: sphinx_rtd_theme/footer.html:49
msgid "theme"
msgstr ""
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "provided by %(readthedocs_web)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:61
#, python-format
msgid "Search within %(docstitle)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:83
msgid "About these documents"
msgstr ""
#: sphinx_rtd_theme/layout.html:86
msgid "Index"
msgstr ""
#: sphinx_rtd_theme/layout.html:89 sphinx_rtd_theme/search.html:11
msgid "Search"
msgstr ""
#: sphinx_rtd_theme/layout.html:124
msgid "Logo"
msgstr ""
#: sphinx_rtd_theme/search.html:26
msgid "Please activate JavaScript to enable the search functionality."
msgstr ""
#: sphinx_rtd_theme/search.html:33
msgid "Search Results"
msgstr ""
#: sphinx_rtd_theme/search.html:35
msgid ""
"Your search did not match any documents. Please make sure that all words "
"are spelled correctly and that you've selected enough categories."
msgstr ""
#: sphinx_rtd_theme/searchbox.html:4
msgid "Search docs"
msgstr ""
#: sphinx_rtd_theme/versions.html:11
msgid "Versions"
msgstr ""
#: sphinx_rtd_theme/versions.html:17
msgid "Downloads"
msgstr ""
#. The phrase "Read the Docs" is not translated
#: sphinx_rtd_theme/versions.html:24
msgid "On Read the Docs"
msgstr ""
#: sphinx_rtd_theme/versions.html:26
msgid "Project Home"
msgstr ""
#: sphinx_rtd_theme/versions.html:29
msgid "Builds"
msgstr ""
#: sphinx_rtd_theme/versions.html:33
msgid "Free document hosting provided by"
msgstr ""

Binary file not shown.

View File

@ -1,22 +1,26 @@
# Spanish translations for sphinx_rtd_theme.
# Copyright (C) 2018 Read the Docs
# English translations for sphinx_rtd_theme.
# Copyright (C) 2019 ORGANIZATION
# This file is distributed under the same license as the sphinx_rtd_theme
# project.
# Leonardo J. Caballero G. <leonardocaballero@gmail.com>, 2017, 2018.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2019.
#
# Translators:
# Anthony <aj@ohess.org>, 2019
msgid ""
msgstr ""
"Project-Id-Version: sphinx_rtd_theme 0.3.0\n"
"Project-Id-Version: sphinx_rtd_theme 0.4.3.dev0\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2018-04-18 17:43-0400\n"
"PO-Revision-Date: 2018-04-30 23:31-0400\n"
"Last-Translator: Leonardo J. Caballero G. <leonardocaballero@gmail.com>\n"
"POT-Creation-Date: 2019-07-16 15:59-0600\n"
"PO-Revision-Date: 2019-07-16 21:44+0000\n"
"Last-Translator: Anthony <aj@ohess.org>, 2019\n"
"Language: es\n"
"Language-Team: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language-Team: Spanish "
"(https://www.transifex.com/readthedocs/teams/101354/es/)\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.5.3\n"
"Generated-By: Babel 2.6.0\n"
#: sphinx_rtd_theme/breadcrumbs.html:31
msgid "Docs"
@ -36,7 +40,7 @@ msgstr "Editar en GitLab"
#: sphinx_rtd_theme/breadcrumbs.html:62 sphinx_rtd_theme/breadcrumbs.html:64
msgid "View page source"
msgstr "Ver página de código fuente"
msgstr "Ver código fuente de la página"
#: sphinx_rtd_theme/breadcrumbs.html:74 sphinx_rtd_theme/footer.html:5
msgid "Next"
@ -47,7 +51,7 @@ msgid "Previous"
msgstr "Anterior"
#: sphinx_rtd_theme/footer.html:21 sphinx_rtd_theme/footer.html:24
#: sphinx_rtd_theme/layout.html:70
#: sphinx_rtd_theme/layout.html:92
msgid "Copyright"
msgstr "Derechos de autor"
@ -59,43 +63,43 @@ msgstr "Construido"
msgid "Revision"
msgstr "Revisión"
#: sphinx_rtd_theme/footer.html:38
#: sphinx_rtd_theme/footer.html:39
#, python-format
msgid "Last updated on %(last_updated)s."
msgstr "Actualizado por última vez en %(last_updated)s."
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "Built with %(sphinx_web)s using a"
msgstr "Construido con %(sphinx_web)s usando un"
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
msgid "theme"
msgstr "tema"
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "provided by %(readthedocs_web)s"
msgstr "proporcionado por %(readthedocs_web)s"
#: sphinx_rtd_theme/layout.html:37
#: sphinx_rtd_theme/layout.html:61
#, python-format
msgid "Search within %(docstitle)s"
msgstr "Buscar en %(docstitle)s"
#: sphinx_rtd_theme/layout.html:61
#: sphinx_rtd_theme/layout.html:83
msgid "About these documents"
msgstr "Sobre esta documentación"
#: sphinx_rtd_theme/layout.html:64
#: sphinx_rtd_theme/layout.html:86
msgid "Index"
msgstr "Índice"
#: sphinx_rtd_theme/layout.html:67 sphinx_rtd_theme/search.html:11
#: sphinx_rtd_theme/layout.html:89 sphinx_rtd_theme/search.html:11
msgid "Search"
msgstr "Búsqueda"
#: sphinx_rtd_theme/layout.html:107
#: sphinx_rtd_theme/layout.html:124
msgid "Logo"
msgstr "Logotipo"
@ -112,8 +116,8 @@ msgid ""
"Your search did not match any documents. Please make sure that all words "
"are spelled correctly and that you've selected enough categories."
msgstr ""
"Su búsqueda no coincide con ningún documentos. Por favor, asegúrese de "
"que todas las palabras estén correctamente escritas y que usted allá "
"Su búsqueda no coincide con ningún documento. Por favor, asegúrese de que"
" todas las palabras estén correctamente escritas y que usted haya "
"seleccionado las suficientes categorías."
#: sphinx_rtd_theme/searchbox.html:4
@ -128,18 +132,20 @@ msgstr "Versiones"
msgid "Downloads"
msgstr "Descargas"
#: sphinx_rtd_theme/versions.html:23
#. The phrase "Read the Docs" is not translated
#: sphinx_rtd_theme/versions.html:24
msgid "On Read the Docs"
msgstr "En Read the Docs"
#: sphinx_rtd_theme/versions.html:25
#: sphinx_rtd_theme/versions.html:26
msgid "Project Home"
msgstr "Página de Proyecto"
#: sphinx_rtd_theme/versions.html:28
#: sphinx_rtd_theme/versions.html:29
msgid "Builds"
msgstr "Construcciones"
#: sphinx_rtd_theme/versions.html:32
#: sphinx_rtd_theme/versions.html:33
msgid "Free document hosting provided by"
msgstr "Alojamiento gratuito de documentos proporcionado por"

Binary file not shown.

View File

@ -0,0 +1,148 @@
# English translations for sphinx_rtd_theme.
# Copyright (C) 2019 ORGANIZATION
# This file is distributed under the same license as the sphinx_rtd_theme
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2019.
#
msgid ""
msgstr ""
"Project-Id-Version: sphinx_rtd_theme 0.4.3.dev0\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2019-07-16 15:59-0600\n"
"PO-Revision-Date: 2019-07-16 21:44+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: ru\n"
"Language-Team: Russian "
"(https://www.transifex.com/readthedocs/teams/101354/ru/)\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) "
"|| (n%100>=11 && n%100<=14)? 2 : 3)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.6.0\n"
#: sphinx_rtd_theme/breadcrumbs.html:31
msgid "Docs"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:43 sphinx_rtd_theme/breadcrumbs.html:45
msgid "Edit on GitHub"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:50 sphinx_rtd_theme/breadcrumbs.html:52
msgid "Edit on Bitbucket"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:57 sphinx_rtd_theme/breadcrumbs.html:59
msgid "Edit on GitLab"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:62 sphinx_rtd_theme/breadcrumbs.html:64
msgid "View page source"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:74 sphinx_rtd_theme/footer.html:5
msgid "Next"
msgstr ""
#: sphinx_rtd_theme/breadcrumbs.html:77 sphinx_rtd_theme/footer.html:8
msgid "Previous"
msgstr ""
#: sphinx_rtd_theme/footer.html:21 sphinx_rtd_theme/footer.html:24
#: sphinx_rtd_theme/layout.html:92
msgid "Copyright"
msgstr ""
#: sphinx_rtd_theme/footer.html:30
msgid "Build"
msgstr ""
#: sphinx_rtd_theme/footer.html:35
msgid "Revision"
msgstr ""
#: sphinx_rtd_theme/footer.html:39
#, python-format
msgid "Last updated on %(last_updated)s."
msgstr ""
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "Built with %(sphinx_web)s using a"
msgstr ""
#: sphinx_rtd_theme/footer.html:49
msgid "theme"
msgstr ""
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "provided by %(readthedocs_web)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:61
#, python-format
msgid "Search within %(docstitle)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:83
msgid "About these documents"
msgstr ""
#: sphinx_rtd_theme/layout.html:86
msgid "Index"
msgstr ""
#: sphinx_rtd_theme/layout.html:89 sphinx_rtd_theme/search.html:11
msgid "Search"
msgstr ""
#: sphinx_rtd_theme/layout.html:124
msgid "Logo"
msgstr ""
#: sphinx_rtd_theme/search.html:26
msgid "Please activate JavaScript to enable the search functionality."
msgstr ""
#: sphinx_rtd_theme/search.html:33
msgid "Search Results"
msgstr ""
#: sphinx_rtd_theme/search.html:35
msgid ""
"Your search did not match any documents. Please make sure that all words "
"are spelled correctly and that you've selected enough categories."
msgstr ""
#: sphinx_rtd_theme/searchbox.html:4
msgid "Search docs"
msgstr ""
#: sphinx_rtd_theme/versions.html:11
msgid "Versions"
msgstr ""
#: sphinx_rtd_theme/versions.html:17
msgid "Downloads"
msgstr ""
#. The phrase "Read the Docs" is not translated
#: sphinx_rtd_theme/versions.html:24
msgid "On Read the Docs"
msgstr ""
#: sphinx_rtd_theme/versions.html:26
msgid "Project Home"
msgstr ""
#: sphinx_rtd_theme/versions.html:29
msgid "Builds"
msgstr ""
#: sphinx_rtd_theme/versions.html:33
msgid "Free document hosting provided by"
msgstr ""

View File

@ -1,22 +1,22 @@
# Translations template for sphinx_rtd_theme.
# Copyright (C) 2018 ORGANIZATION
# Copyright (C) 2019 ORGANIZATION
# This file is distributed under the same license as the sphinx_rtd_theme
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2019.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: sphinx_rtd_theme 0.3.0\n"
"Project-Id-Version: sphinx_rtd_theme 0.4.3.dev0\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2018-04-18 17:43-0400\n"
"POT-Creation-Date: 2019-07-16 18:15-0600\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.5.3\n"
"Generated-By: Babel 2.6.0\n"
#: sphinx_rtd_theme/breadcrumbs.html:31
msgid "Docs"
@ -47,7 +47,7 @@ msgid "Previous"
msgstr ""
#: sphinx_rtd_theme/footer.html:21 sphinx_rtd_theme/footer.html:24
#: sphinx_rtd_theme/layout.html:70
#: sphinx_rtd_theme/layout.html:92
msgid "Copyright"
msgstr ""
@ -59,43 +59,43 @@ msgstr ""
msgid "Revision"
msgstr ""
#: sphinx_rtd_theme/footer.html:38
#: sphinx_rtd_theme/footer.html:39
#, python-format
msgid "Last updated on %(last_updated)s."
msgstr ""
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "Built with %(sphinx_web)s using a"
msgstr ""
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
msgid "theme"
msgstr ""
#: sphinx_rtd_theme/footer.html:47
#: sphinx_rtd_theme/footer.html:49
#, python-format
msgid "provided by %(readthedocs_web)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:37
#: sphinx_rtd_theme/layout.html:61
#, python-format
msgid "Search within %(docstitle)s"
msgstr ""
#: sphinx_rtd_theme/layout.html:61
#: sphinx_rtd_theme/layout.html:83
msgid "About these documents"
msgstr ""
#: sphinx_rtd_theme/layout.html:64
#: sphinx_rtd_theme/layout.html:86
msgid "Index"
msgstr ""
#: sphinx_rtd_theme/layout.html:67 sphinx_rtd_theme/search.html:11
#: sphinx_rtd_theme/layout.html:89 sphinx_rtd_theme/search.html:11
msgid "Search"
msgstr ""
#: sphinx_rtd_theme/layout.html:107
#: sphinx_rtd_theme/layout.html:124
msgid "Logo"
msgstr ""
@ -125,19 +125,20 @@ msgstr ""
msgid "Downloads"
msgstr ""
#: sphinx_rtd_theme/versions.html:23
#. The phrase "Read the Docs" is not translated
#: sphinx_rtd_theme/versions.html:24
msgid "On Read the Docs"
msgstr ""
#: sphinx_rtd_theme/versions.html:25
#: sphinx_rtd_theme/versions.html:26
msgid "Project Home"
msgstr ""
#: sphinx_rtd_theme/versions.html:28
#: sphinx_rtd_theme/versions.html:29
msgid "Builds"
msgstr ""
#: sphinx_rtd_theme/versions.html:32
#: sphinx_rtd_theme/versions.html:33
msgid "Free document hosting provided by"
msgstr ""

View File

@ -20,6 +20,7 @@
{% endfor %}
</dl>
<dl>
{# Translators: The phrase "Read the Docs" is not translated #}
<dt>{{ _('On Read the Docs') }}</dt>
<dd>
<a href="//{{ PRODUCTION_DOMAIN }}/projects/{{ slug }}/?fromdocs={{ slug }}">{{ _('Project Home') }}</a>