2013-09-05 8 views
13

Ho un documento con molte intestazioni e sottotitoli. Più avanti nel testo voglio ricollegarmi a uno dei titoli. Come posso fare questo senza la ridondanza delle etichette :ref:? Il contenuto sembra raccogliere le intestazioni correttamente. Speravo in qualcosa del genere: `#polled-data-retrieval`_.Come creare un collegamento interno a un'intestazione in testo ristretto sfornato senza creare etichette arbitrarie?

+0

Se si desidera utilizzare i backtick in un blocco di codice inline, vedere [questa meta domanda SO] (http://meta.stackexchange.com/q/138912/181221). – Chris

risposta

18

reStructuredText supporta implicit hyperlink targets. Dal reStructuredText quick reference: titoli

Sezione, note e citazioni generare automaticamente destinazioni dei collegamenti ipertestuali (l'etichetta di testo titolo o la nota/citazione è utilizzato come nome collegamento ipertestuale).

Così il seguente testo (sollevato dal riferimento reStructuredText rapido, errori di ortografia e tutti):

Titles are targets, too 
======================= 
Implict references, like `Titles are targets, too`_. 

produce HTML simile al seguente:

<strong><a name="title">Titles are targets, too</a></strong> 

<p>Implict references, like <a href="#title">Titles are targets, too</a>.</p> 
11

Nuovo, risposta migliore per il 2016!

Il autosection extension consente di farlo facilmente, con riferimenti incrociati reali.

============= 
Some Document 
============= 


Internal Headline 
================= 

poi, più tardi ...

=============== 
Some Other Doc 
=============== 


A link- :ref:`Internal Headline` 

Questa estensione è built-in, quindi tutto ciò che serve è modificare conf.py

extensions = [ 
    . 
    . other 
    . extensions 
    . already 
    . listed 
    . 
    'sphinx.ext.autosectionlabel', 
] 

L'unica cosa che dovete stare attenti di questo è che ora non è possibile duplicare i titoli interni nella raccolta di documenti. (Vale la pena.)

+0

Grazie. Continuavo a pensare che questo fosse sempre abilitato di default, non riuscivo a capire perché alcuni dei miei ref non funzionassero. –