From 19907beb6d876ea3bced83e7767d77295c6cf136 Mon Sep 17 00:00:00 2001 From: Steve Glaser Date: Mon, 24 Feb 2020 21:58:07 -0800 Subject: [PATCH 1/2] Support formatting of sections nested above h6, correct nesting level Computation of nesting level assumed single digit / character section numbers. Headers deeper than h6 will be of form
--- src/core/structure.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/core/structure.js b/src/core/structure.js index 13a9145bf0..91c8df3bb2 100644 --- a/src/core/structure.js +++ b/src/core/structure.js @@ -76,7 +76,7 @@ function scanSections(sections, maxTocLevel, { prefix = "" } = {}) { : appendixMode ? alphabet.charAt(index - lastNonAppendix) : prefix + index; - const level = Math.ceil(secno.length / 2); + const level = parents(section.element, "section").length + 1; if (level === 1) { secno += "."; // if this is a top level item, insert @@ -202,11 +202,18 @@ function renameSectionHeaders() { return; } headers.forEach(header => { - const depth = Math.min(parents(header, "section").length + 1, 6); - const h = `h${depth}`; + const depth = parents(header, "section").length + 1; + const h = `h${Math.min(depth, 6)}`; if (header.localName !== h) { renameElement(header, h); } + if (depth > 6) { + if (header.classList) { + header.classList.add(`h${depth}`); + } else { + header.className = `h${depth}`; + } + } }); } From 372f175ff1ee9d62ab439650936855767d28fd32 Mon Sep 17 00:00:00 2001 From: Steve Glaser Date: Tue, 25 Feb 2020 08:17:17 -0800 Subject: [PATCH 2/2] Remove unnecessary check on empty classList --- src/core/structure.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/core/structure.js b/src/core/structure.js index 91c8df3bb2..300c3301e6 100644 --- a/src/core/structure.js +++ b/src/core/structure.js @@ -208,11 +208,7 @@ function renameSectionHeaders() { renameElement(header, h); } if (depth > 6) { - if (header.classList) { - header.classList.add(`h${depth}`); - } else { - header.className = `h${depth}`; - } + header.classList.add(`h${depth}`); } }); }