10

sphinxdoc既存のテーマを簡単にカスタマイズする方法はありますか? デフォルトのテーマには多くのテーマ属性がありますが、sphinxdoc ではロゴを設定したり、一部の色を変更したりすることさえできません。

または、テーマの変更方法を学べるサイトを教えてもらえますか?

4

4 に答える 4

15

私が欲しかったのは、 Sphinx ドキュメントにReST 取り消し線を追加することだけでした。これが私がやった方法です:

$ cd my-sphinx-dir
$ mkdir -p theme/static
$ touch theme/theme.conf
$ touch theme/static/style.css

theme/theme.conf

[theme]
inherit = default
stylesheet = style.css
pygments_style = pygments.css

(これにより、デフォルトのテーマのように見えます (l. 2))

theme/static/style.css

@import url("default.css"); /* make sure to sync this with the base theme's css filename */

.strike {
    text-decoration: line-through;
}

次に、conf.py で:

html_theme = 'theme' # use the theme in subdir 'theme'
html_theme_path = ['.'] # make sphinx search for themes in current dir

詳細はこちら: https://sphinx.readthedocs.io/en/master/theming.html .

(オプション) global.rst:

.. role:: strike
   :class: strike

そしてexample.rstで:

.. include:: global.rst

:strike:`This looks like it is outdated.`
于 2014-07-24T11:15:19.080 に答える
9

既存のsphinxdocテーマをカスタマイズするには、目的の変更を含むカスタムテンプレートスタイルシートを作成する必要があります。


_templateおよび_staticサブフォルダー

sphinx ドキュメント フォルダー (docsこの例では名前が付けられています) に、次の 2 つのサブフォルダーを作成します:_static_templates:

docs
├── conf.py
├── index.rst
└── _templates
    └── page.html
└── _static
    └── style.css

style.cssスタイルシート

_staticフォルダー内に、上書きする CSS オプションを含むファイルを作成しstyle.cssます。sphinxdocsphinx インストール フォルダー内のテーマ スタイルシートを見ると、適用可能なオプションを見つけることができます。

./python3.4/site-packages/Sphinx-1.3.1-py3.4.egg/sphinx/themes/sphinxdoc/static/sphinxdoc.css_t`

ドキュメントの背景を白から黒に変更するには、次の行を に追加しますstyle.css

body {
    background-color: black;
    color: white;
}
div.document {
    background-color: black;
}

ディレクティブを使用してコードを中央に配置する機能を追加するに.. rst-class:: centeredは、次の行を追加します。

.centered {
    text-align: center;
}

等...


page.htmlテンプレート

_templatesサブフォルダーにpage.html、次の内容のファイルを作成します。

{% extends "!page.html" %}

{% set css_files = css_files + ["_static/style.css"] %}

style.cssこれは、sphinx にフォルダー内のスタイルシートを探すように指示し_staticます。


詳しくは

これらの手順は、テーマに関する Tinkerer のドキュメント ( http://tinkerer.me/doc/theming.html ) からのものです。Tinkerer は、Sphinx に基づくブログ エンジンです。

また、参照:カスタム css ファイルを追加する方法? .

于 2015-05-19T19:41:47.597 に答える
4

私があなたを誤解しない限り、標準のSphinxドキュメントには、既存のテーマを変更して新しいテーマを作成する方法が記載されています。

私は実際にSphinxクラウドテーマをインストールしてから、そのテンプレートの編集を開始しました。そのため、必要なものを正確に確認できる新しいテーマがありましたが、最初から作成する必要はありませんでした。

CSSレイアウトを変更したい場合は、CSSファイル(または画像)をの_staticサブディレクトリに追加し、必要に応じsourceて編集することができますconf.py。繰り返しになりますが、クラウドテーマはそのための私の最良の例でした。

于 2013-01-31T13:25:40.103 に答える