Search code examples
restructuredtext

How to create a link to a header in restructuredtext?


I have a document in restructuredtest like:

Header 1
========

and from some any other point (might be the same 'rst' file or a different one) I want to create a hyperlink to that header. So that when a user clicks on it, he gets to the page with the header Header 1

How to do that?

I tried to put the following line in the other document (according to this documentation):

see :ref:`Header 1`

but what I get is the following:

see Header 1

without any link...

I also tried to follow this documentation:

What I put in to the rst file is the following

see `Header 1`_

and what I see is the following link:

see `Header 1`_

which does not look very nice ...


Solution

  • Your first link was almost correct. You need to add a label preceding the section header, separated by a blank line. See Inline markup, Cross-referencing arbitrary locations, using the :ref: directive.

    In your case:

    .. _header-1-label-name:
    
    Header 1
    ========
    
    Some text
    
    Here is a section reference: :ref:`header-1-label-name`.
    
    Here is a section reference with a title: :ref:`Header 1 with a title <header-1-label-name>`.