5
5
{% else %}
6
6
{{ generate_toctree_html("sidebar", maxdepth=4, collapse=False, includehidden=True, titles_only=True) }}
7
7
{% endif %}
8
-
9
- <!-- {% if pagename.startswith("reference") %}
10
- {% set toc = generate_toctree_html(
11
- "sidebar",
12
- maxdepth=4,
13
- collapse=True,
14
- includehidden=True,
15
- titles_only=True
16
- ) %}
17
- {% set toc_items = toc.split('<li>') %}
18
- {% set sorted_items = ['<li>' + item for item in toc_items[1:]|sort(case_sensitive=False)] %}
19
- {{ sorted_items|join('')|safe }}
20
- {% else %}
21
- {{ generate_toctree_html("sidebar", maxdepth=4, collapse=False, includehidden=True, titles_only=True) }}
22
- {% endif %} -->
23
-
24
- <!-- {% if pagename.startswith("reference") %}
25
- {% set toc = generate_toctree_html(
26
- "sidebar",
27
- maxdepth=4,
28
- collapse=True,
29
- includehidden=True,
30
- titles_only=True
31
- ) %}
32
- {% set toc_items = toc.split('<li>') %}
33
- {% set sorted_items = ['<li>' + item for item in toc_items[1:]|sort(case_sensitive=False)] %}
34
- <div class="bd-toc-item navbar-nav">
35
- {{ sorted_items|join('')|safe }}
36
- </div>
37
- {% else %}
38
- {{ generate_toctree_html("sidebar", maxdepth=4, collapse=False, includehidden=True, titles_only=True) }}
39
- {% endif %} -->
40
-
41
- <!-- {% if pagename.startswith("reference") %}
42
- {% set toc = generate_toctree_html("sidebar", maxdepth=4, collapse=True, includehidden=True, titles_only=True) %}
43
- {% set items = toc.split('</li>') %}
44
- {% for item in items|sort(case_sensitive=False) %}
45
- {{ item }}</li>
46
- {% endfor %}
47
- {% else %}
48
- {{ generate_toctree_html("sidebar", maxdepth=4, collapse=False, includehidden=True, titles_only=True) }}
49
- {% endif %} -->
50
8
</ div >
51
9
</ nav >
10
+
11
+ < script >
12
+ document . addEventListener ( 'DOMContentLoaded' , function ( ) {
13
+ // Only sort on reference pages
14
+ if ( window . location . pathname . includes ( '/reference/' ) ) {
15
+ const navContainer = document . querySelector ( '#bd-docs-nav .bd-toc-item' ) ;
16
+ if ( navContainer ) {
17
+ const lists = navContainer . querySelectorAll ( 'ul' ) ;
18
+
19
+ lists . forEach ( list => {
20
+ const items = Array . from ( list . children ) ;
21
+
22
+ // Sort items alphabetically
23
+ items . sort ( ( a , b ) => {
24
+ const textA = a . textContent . trim ( ) . toLowerCase ( ) ;
25
+ const textB = b . textContent . trim ( ) . toLowerCase ( ) ;
26
+ return textA . localeCompare ( textB ) ;
27
+ } ) ;
28
+
29
+ // Reattach sorted items
30
+ items . forEach ( item => list . appendChild ( item ) ) ;
31
+ } ) ;
32
+ }
33
+ }
34
+ } ) ;
35
+ </ script >
0 commit comments