diff --git a/sphinx/themes/basic/genindex-single.html b/sphinx/themes/basic/genindex-single.html
index 5ca9c2736..1e98ba9c9 100644
--- a/sphinx/themes/basic/genindex-single.html
+++ b/sphinx/themes/basic/genindex-single.html
@@ -13,33 +13,26 @@
{% trans key=key %}Index – {{ key }}{% endtrans %}
-
-
-{%- set breakat = count // 2 %}
-{%- set numcols = 1 %}
-{%- set numitems = 0 %}
-{% for entryname, (links, subitems) in entries %}
-- {%- if links -%}{{ entryname|e }}
- {%- for link in links[1:] %}, [{{ loop.index }}]{% endfor -%}
- {%- else -%}
-{{ entryname|e }}
- {%- endif -%}
- {%- if subitems %}
-
+
+ {%- for column in entries|slice(2) if column %}
+
+ {%- for entryname, (links, subitems) in column %}
+ - {% if links %}{{ entryname|e }}
+ {%- for link in links[1:] %}, [{{ loop.index }}]{% endfor %}
+ {%- else %}{{ entryname|e }}{% endif %}
+ {%- if subitems %}
+
{%- for subentryname, subentrylinks in subitems %}
- - {{ subentryname|e }}
- {%- for link in subentrylinks[1:] %}, [{{ loop.index }}]{% endfor -%}
-
+ - {{ subentryname|e }}
+ {%- for link in subentrylinks[1:] %}, [{{ loop.index }}]{% endfor -%}
+
{%- endfor %}
{%- endif -%}
-{%- set numitems = numitems + 1 + (subitems|length) -%}
-{%- if numcols < 2 and numitems > breakat -%}
-{%- set numcols = numcols+1 -%}
- |
-{%- endif -%}
{%- endfor %}
- |
+ |
+{%- endfor %}
+
{% endblock %}
diff --git a/sphinx/themes/basic/genindex-split.html b/sphinx/themes/basic/genindex-split.html
index c33bda865..d068a96a6 100644
--- a/sphinx/themes/basic/genindex-split.html
+++ b/sphinx/themes/basic/genindex-split.html
@@ -15,6 +15,7 @@
{{ _('Index pages by letter') }}:
+
{% endblock %}
diff --git a/sphinx/themes/basic/genindex.html b/sphinx/themes/basic/genindex.html
index ba335fe43..4d46380f1 100644
--- a/sphinx/themes/basic/genindex.html
+++ b/sphinx/themes/basic/genindex.html
@@ -19,8 +19,6 @@
{%- endfor %}
-
-
{%- for key, entries in genindexentries %}
{{ key }}
@@ -28,7 +26,7 @@
{%- for entryname, (links, subitems) in column %}
- {% if links %}{{ entryname|e }}
- {% for link in links[1:] %}, [{{ loop.index }}]{% endfor %}
+ {%- for link in links[1:] %}, [{{ loop.index }}]{% endfor %}
{%- else %}{{ entryname|e }}{% endif %}
{%- if subitems %}
|