55 {% else %}
66 {{ generate_toctree_html("sidebar", maxdepth=4, collapse=False, includehidden=True, titles_only=True) }}
77 {% 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 %} -->
508 </ div >
519</ 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