From d8a6b0b04eb690e9d8611bec4ee9d99499cddff1 Mon Sep 17 00:00:00 2001 From: Miran Date: Thu, 22 Oct 2020 12:16:19 +0200 Subject: [PATCH] [backport: 1.4] Better linebreaks (#15658) --- compiler/docgen.nim | 14 +-- config/nimdoc.cfg | 4 +- doc/nimdoc.css | 1 - .../expected/index.html | 2 +- .../expected/subdir/subdir_b/utils.html | 10 +- nimdoc/testproject/expected/testproject.html | 110 +++++++++--------- 6 files changed, 67 insertions(+), 74 deletions(-) diff --git a/compiler/docgen.nim b/compiler/docgen.nim index 3945a30f8d..1d950f835a 100644 --- a/compiler/docgen.nim +++ b/compiler/docgen.nim @@ -867,19 +867,13 @@ proc genItem(d: PDoc, n, nameNode: PNode, k: TSymKind, docFlags: DocFlags) = xmltree.escape(getPlainDocstring(e).docstringSummary)) d.toc[k].add(ropeFormatNamedVars(d.conf, getConfigVar(d.conf, "doc.item.toc"), - ["name", "header", "desc", "itemID", "header_plain", "itemSym", - "itemSymOrID", "itemSymEnc", "itemSymOrIDEnc", "attype"], - [rope(getName(d, nameNode, d.splitAfter)), result, comm, - itemIDRope, plainNameRope, plainSymbolRope, symbolOrIdRope, - plainSymbolEncRope, symbolOrIdEncRope, attype])) + ["name", "header_plain", "itemSymOrIDEnc"], + [nameRope, plainNameRope, symbolOrIdEncRope])) d.tocTable[k].mgetOrPut(cleanPlainSymbol, nil).add(ropeFormatNamedVars( d.conf, getConfigVar(d.conf, "doc.item.tocTable"), - ["name", "header", "desc", "itemID", "header_plain", "itemSym", - "itemSymOrID", "itemSymEnc", "itemSymOrIDEnc", "attype"], - [rope(getName(d, nameNode, d.splitAfter)), result, comm, - itemIDRope, plainNameRope, plainSymbolRope, - symbolOrIdRope, plainSymbolEncRope, symbolOrIdEncRope, attype])) + ["name", "header_plain", "itemSymOrID", "itemSymOrIDEnc"], + [nameRope, plainNameRope, rope(symbolOrId.replace(",", ",")), symbolOrIdEncRope])) # Ironically for types the complexSymbol is *cleaner* than the plainName # because it doesn't include object fields or documentation comments. So we diff --git a/config/nimdoc.cfg b/config/nimdoc.cfg index db86af0218..a99af70ed8 100644 --- a/config/nimdoc.cfg +++ b/config/nimdoc.cfg @@ -57,13 +57,13 @@ $seeSrc # See doc.item for available substitution variables. doc.item.toc = """
  • $name$attype
  • + title="$header_plain">$name """ # This is used for TOC items which are grouped by the same name (e.g. procs). doc.item.tocTable = """
  • $itemSymOrID$attype
  • + title="$header_plain">$itemSymOrID """ diff --git a/doc/nimdoc.css b/doc/nimdoc.css index e0c5a1de4b..457f024b52 100644 --- a/doc/nimdoc.css +++ b/doc/nimdoc.css @@ -155,7 +155,6 @@ body { .three.columns { width: 22%; - line-break: anywhere; } .nine.columns { diff --git a/nimdoc/test_out_index_dot_html/expected/index.html b/nimdoc/test_out_index_dot_html/expected/index.html index 58ab4fc6da..65241d356f 100644 --- a/nimdoc/test_out_index_dot_html/expected/index.html +++ b/nimdoc/test_out_index_dot_html/expected/index.html @@ -96,7 +96,7 @@ function main() {