Как добавить ленту «Разбуди меня на Github», используя темы Sphinx и ReadTheDocs? - PullRequest
0 голосов
/ 15 ноября 2018

Многие проекты с открытым исходным кодом используют баннер "Раздавай на Github" в правом верхнем углу страниц документации.

Чтобы назвать только один, давайте возьмем пример Python запросов :

Fork me on Github ribbon

В блоге Github есть сообщение о баннерах с кодом изображения: Ленты GitHub

Но ничего не объясняется относительно , как добавить ссылку на каждую страницу, сгенерированную с помощью Sphinx и затем загруженную в ReadTheDocs.

Не могли бы вы помочь сгенерировать это автоматически? Я ожидал, что может быть вариант в conf.py, но я не нашел ни одного. Моя конфигурация Sphinx является конфигурацией по умолчанию.

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

Самый простой способ - использовать альтернативную тему, такую ​​как alabaster, поскольку она поставляется с предварительно сконфигурированной опцией, например github_banner (см. ответ Джорана ).

Для других тем, таких как sphinx-rtd-theme, которые не предоставляют такой настройки, решение состоит в том, чтобы использовать Sphinx templating .

Необходимо создать файл docs/_templates/layout.html со следующим содержанием:

{% extends '!layout.html' %}
{% block document %}
{{super()}}
    <a href="https://github.com/you">
        <img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub">
    </a>
{% endblock %}
0 голосов
/ 16 ноября 2018

Самое замечательное в python (особенно в python на github) заключается в том, что вы можете просто посмотреть на источник

Я могу перейти на https://github.com/requests/requests/blob/master/docs/conf.py и посмотреть на их conf.py

где мы можем увидеть эту запись

# Theme options are theme-specific and customize the look and feel of a theme
# further.  For a list of options available for each theme, see the
# documentation.
html_theme_options = {
    'show_powered_by': False,
    'github_user': 'requests',
    'github_repo': 'requests',
    'github_banner': True,
    'show_related': False,
    'note_bg': '#FFF59C'
}

мы также можем заметить, что они используют тему алебастра

с быстрым Google, мы находим, что у алебастра есть несколько документов

https://github.com/mitya57/alabaster-1

github_banner: true or false (default: false) - whether to apply a 'Fork me on Github' banner in the top right corner of the page.

If true, requires that you set github_user and github_repo.
May also submit a string file path (as with logo, relative to $PROJECT/_static/) to be used as the banner image instead of the default.

поэтому ответ заключается в использовании темы алебастра и установке этих параметров:)

...