Re: [sphinx-users] Anchors used for links to headings

2021-12-27 Thread Matt Documatt
Hello Bradley!
It is generally as you said.

Actually, these web-safe anchors are generated by Docutils, not Sphinx. 
Firstly, by nodes.make_id() function 
(https://repo.or.cz/docutils.git/blob/refs/heads/master:/docutils/docutils/nodes.py#l2232).
 In case of collision, "id1" anchors are coming from here 
https://repo.or.cz/docutils.git/blob/refs/heads/master:/docutils/docutils/nodes.py#l1423.
 I would not say it is a part of public API but is unlikely to be changed.

You might also consider setting explicit labels before titles. Either, manually

.. _my-custom-label:

Title
#

.. _set-to-anything-1:

Heading 1
*

Or, using an autosectionlabel builtin extension 
(https://www.sphinx-doc.org/en/master/usage/extensions/autosectionlabel.html).

--
Matt
https://techwriter.documatt.com

> On 27. 12. 2021, at 12:10, bradley...@gmail.com  
> wrote:
> 
> I want to generate links from web pages that are not generated by sphinx, 
> to headings and sub-headings in web pages that are generated by sphinx.
> 
> I have noticed that sphinx automatically generates anchors for such links.
> For example, using sphinx v4.1.2, if the test_link.rst file contains the text
> 
> Title
> #
> 
> Heading 1
> *
> 
> Heading 2
> *
> 
> Heading-2
> *
> 
> The the file test_link.hmtl generated by sphinx will contain the following
> link anchor for the headings in test_link.html:
> 
> Title: href="#title"
> Heading 1: href="#heading-1"
> Heading 2: href="#heading-2"
> Heading-2: href="#id1"
> 
> It seems that the heading text has been converted to lower case and that
> spaces ' ' have been converted to dashes '-'. It also seems if a conversion
> would yield the same value as a previous coversion, then a numbered id, that
> increases by one each time it is needed, is used for the link.
> 
> 1.  Are these conversion rules for link anchors correct ?
> 
> 2.  Are there ther conversion rules; e.g., other times that the numbered ids
> are inserted (and hence increase by one).
> 
> 2.  Are these rules part of the sphinx API; i.e., will it be the same in 
> future versions of sphinx ?
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sphinx-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sphinx-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sphinx-users/fb03ed68-56ee-4611-af6b-a246bb7c7bben%40googlegroups.com.

-- 
You received this message because you are subscribed to the Google Groups 
"sphinx-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sphinx-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sphinx-users/B89696F2-2DDE-48FD-A610-926A4C40D2CC%40documatt.com.


[sphinx-users] Anchors used for links to headings

2021-12-27 Thread bradley...@gmail.com
I want to generate links from web pages that are not generated by sphinx, 
to headings and sub-headings in web pages that are generated by sphinx.

I have noticed that sphinx automatically generates anchors for such links.
For example, using sphinx v4.1.2, if the test_link.rst file contains the 
text

Title
#

Heading 1
*

Heading 2
*

Heading-2
*

The the file test_link.hmtl generated by sphinx will contain the following
link anchor for the headings in test_link.html:

Title: href="#title"
Heading 1: href="#heading-1"
Heading 2: href="#heading-2"
Heading-2: href="#id1"

It seems that the heading text has been converted to lower case and that
spaces ' ' have been converted to dashes '-'. It also seems if a conversion
would yield the same value as a previous coversion, then a numbered id, that
increases by one each time it is needed, is used for the link.

1.  Are these conversion rules for link anchors correct ?

2.  Are there ther conversion rules; e.g., other times that the numbered ids
are inserted (and hence increase by one).

2.  Are these rules part of the sphinx API; i.e., will it be the same in 
future versions of sphinx ?

-- 
You received this message because you are subscribed to the Google Groups 
"sphinx-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sphinx-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sphinx-users/fb03ed68-56ee-4611-af6b-a246bb7c7bben%40googlegroups.com.