diff --git a/chm-nav.dd b/chm-nav.dd
index 20ddf5e2b5..ad595cf5e2 100644
--- a/chm-nav.dd
+++ b/chm-nav.dd
@@ -13,6 +13,7 @@ NBSP=
LATEST=
MENU={"t":"$2","a":"$1"},
MENU_W_SUBMENU=[{"t":"$2"},
+MENU_W_SUBMENU_END=
ITEMIZE=$(ITEMS_HELPER $1, $+)],
ITEMS_HELPER = $1$(ITEMS_HELPER $+)
SUBMENU=$(SUBMENU2 $1,$+)],
diff --git a/dlang.org.ddoc b/dlang.org.ddoc
index 460e9e8294..d2bfe1cb47 100644
--- a/dlang.org.ddoc
+++ b/dlang.org.ddoc
@@ -188,6 +188,7 @@ MDASH=$(T nobr, — )
METACODE=$(SPANC metacode, $0)
MENU =
$+
MENU_W_SUBMENU = $0
+MENU_W_SUBMENU_END =
META_KEYWORDS=D programming language
META_DESCRIPTION=D Programming Language
MODDEFFILE=$(TC pre, moddeffile notranslate, $0)
diff --git a/modlist.d b/modlist.d
index 0fa5a579ac..dd85e15aa9 100644
--- a/modlist.d
+++ b/modlist.d
@@ -35,10 +35,12 @@ struct Tree
void dumpRoot()
{
+ writeln();
writefln("$(MENU_W_SUBMENU $(TT %s))", name);
writefln("$(ITEMIZE");
dumpChildren([name]);
writeln(")");
+ writeln("$(MENU_W_SUBMENU_END)");
}
void dumpChildren(string[] pkgs)