it-swarm-eu.dev

Úprava šířky obsahu tématu Sfingy „Číst dokumenty“

Používám téma „Přečtěte si téma Dokumentace Sfingy“ pro svou dokumentaci. V původním tématu níže

http://read-the-docs.readthedocs.org/en/latest/theme.html

obsah nebo hlavní šířka návrhu je navržen tak, aby byl mobilní přátelský. Pro můj projekt bych však chtěl, aby to bylo o něco širší. Nevím HTML, a proto bych ocenil, kdyby někdo mohl dát nějaké vodítka ke zvýšení obsahu (layout) šířku.

24
hypersonics

Další možností je vytvořit šablonu stylů v souboru source/_static s tím, co chcete, např.

.wy-nav-content {
    max-width: none;
}

nebo

.wy-nav-content {
    max-width: 1200px !important;
}

Ujistěte se, že v adresáři source/conf.py je uveden odkaz - věřím, že ve výchozím nastavení je k tomu řádek, to znamená.

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

Pak vytvořte vlastní rozvržení v source/_templates/layout.html a udělejte něco takového, abyste zahrnuli svůj styl

{% extends "!layout.html" %}
{% block extrahead %}
    <link href="{{ pathto("_static/style.css", True) }}" rel="stylesheet" type="text/css">
{% endblock %}

Za předpokladu, že jste nazvali styl stylu, style.css

22
Leo

Nejprve musím říci, že během mé sfingy quickstart jsem zvolil možnost samostatné složky pro mé zdroje a pro můj build .

Jedná se o proces 3 kroků:

1. Vytvořte dokument pro své styly:

Kde?

  1. Ve stejném adresáři, kde žije můj soubor conf.py (v mém případě source), jsem vytvořil složku pro své vlastní statické soubory (styly, javascripty). Nazval jsem to custom
  2. Uvnitř jsem vytvořil podsložku pro mé styly: source/custom/css
  3. V této podsložce budu vytvářet vlastní styly: source/custom/css/my_theme.css.

2. Vyprávění o tom sfinga

Nyní musíme říct sfingě, aby vyplivla tento dokument uvnitř build/_static/css, stejného adresáře, kde je stylová šablona obsažena v tématu Číst dokumenty téma. Děláme to přidáním následujícího řádku do conf.py:

html_static_path = ['custom']       # Directory for static files.

Hotovo. Budeme-li stavět, budeme mítRTDstyly (theme.css) a náš vlastní my_theme.css ve stejném adresáři, build/_static/css.

3. Výběr vlastního motivu

Teď řekneme sfingě, aby použila náš vlastní my_theme.css místoRTDone. Děláme to přidáním tohoto řádku do conf.py:

html_style = 'css/my_theme.css'     # Choosing my custom theme.

V našem vlastním stylu by první řádek měl importovat styly theme.css s @import url("theme.css");.

A jsme připraveni začít přepisovat styly.

UPDATE: TAKÉ IS JAK JSOU JEDNODUŠŠÍ.

1. Vložte vlastní úpravy do souboru source/_static/css/my_theme.css.

Ve vašem vlastním stylu by první řádek měl importovat styly theme.css s @import url("theme.css");.

Tímto způsobem se nemusíte obávat, že se vám podaří nastavit výchozí styly, pokud vaše vlastní šablony stylů nefungují, vymažte a začněte znovu. 

2. Přidejte následující řádek do conf.py:

html_style = 'css/my_theme.css' 
12
Bobby wankenoby

Pro případ, že by někdo stále hledal jednoduchou odpověď ... Kombinující myšlenky z https://samnicholls.net/2016/06/15/how-to-sphinx- readthedocs/ a výše uvedené návrhy jsem zjistil, že nejjednodušší způsob, jak získat vlastní šířku okna , je následující:

v conf.py přidejte funkci, která přidává vlastní šablonu stylů (stačí přidat následující řádky):

def setup(app):
    app.add_stylesheet('my_theme.css')

a potom vytvořte soubor s názvem my_theme.css ve složce _static, která obsahuje pouze následující řádky:

.wy-nav-content {
max-width: 1200px !important;
}
8
se_pp

Řešení zde jsou poněkud hackerská. Pokud chcete zahrnout styl, a mít css přepsat a nechat ji pracovat na RTD budete chtít něco takového.

on_rtd = os.environ.get('READTHEDOCS', None) == 'True'

if not on_rtd:  # only import and set the theme if we're building docs locally
  import sphinx_rtd_theme
  html_theme = 'sphinx_rtd_theme'
  html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
  html_style = 'css/custom.css'
else:
  html_context = { 
    'css_files': [
        'https://media.readthedocs.org/css/sphinx_rtd_theme.css',
        'https://media.readthedocs.org/css/readthedocs-doc-embed.css',
        '_static/css/custom.css',
    ],  
  }   

Testoval jsem to sám a zdá se, že to funguje lokálně a na RTD. Velice plagován z https://blog.deimos.fr/2014/10/02/sphinxdoc-and-readthedocs-theme-tricks-2/

7
Nick Ellis

Chcete-li, aby téma ReadTheDocs použilo celou šířku obrazovky, můžete upravit soubor theme.css , odebrat vlastnost max-width: 800px; z definice třídy wy-nav-content, podobně jako:

.wy-nav-content {
    padding: 1.618em 3.236em;
    height: 100%;
    /* max-width: 800px; */
    margin: auto;
}

Některé poznámky

  • Zdroj theme.css je zde: 

    https://github.com/rtfd/readthedocs.org/blob/master/media/css/sphinx_rtd_theme.css

  • Na vašem souborovém systému to bude (za předpokladu, že jste spustili: pip install sphinx_rtd_theme): 

    lib/python2.7/site-packages/sphinx_rtd_theme/static/css/theme.css

  • Chcete-li najít absolutní cestu theme.css na Linux/Mac, můžete to spustit na příkazovém řádku (za předpokladu, že jste nastavili proměnnou prostředí $PYTHONPATH): 

    for p in `echo $PYTHONPATH | tr ":" "\n"`; do 
        find $p -type f -name 'theme.css' | grep sphinx_rtd_theme
    done
    
  • Soubor theme.css bude zhuštěn, takže můžete použít nástroj, jako je http://unminify.com pro usnadnění čtení.


Výsledky:

Před:

Unmodified readthedocs theme

Po:

Modified readthedocs theme

2
chown

Já bych to změnil v css. Měli byste hledat soubor theme.css (je v zdrojích read-the-doc na "sphinx_rtd_theme/static/css/theme.css").

Udělejte kopii tohoto souboru a vložte ho do svého sfinga. V tomto css souboru můžete provést všechny změny rozvržení, které potřebujete. (Pokud jste s ním nikdy nepracovali, možná budete muset trochu přečíst soubory css.)

Snad to pomůže.

1
steffens21

Pro „klasické“ téma je řešení tak jednoduché a čisté jako:

# Add/Update "html_theme_options" like this on your conf.py
html_theme_options = {'body_max_width': '70%'}

Přizpůsobte procento podle svého vkusu.

Odkaz ze sfingy: body_max_width (int nebo str): Maximální šířka těla dokumentu. Může se jednat o int, který je interpretován jako pixely nebo platný kótovací řetězec CSS, například „70em“ nebo „50%“. Pokud nechcete omezit šířku, použijte „žádný“. Výchozí hodnoty mohou záviset na motivu (často 800x).

0
Yahya Yahyaoui