From dd43af3be7eddb832c77ef367456fa023fed7d7a Mon Sep 17 00:00:00 2001 From: "nicholas a. evans" Date: Sun, 8 Dec 2024 05:43:43 -0500 Subject: [ruby/rdoc] Use distinct styles for note lists and label lists (https://github.com/ruby/rdoc/pull/1209) * Use the original `label` description list style As a default for all description lists, the original "label" style is more readable. This is slightly different from the original `label` dl though: * slightly increased left margin for `dd` (to 1em) * removed right margin on `dd` * removed `dt` bottom margin and `dd` top margin, to reduce the gap between the term and its description (to only the standard line-height gap). * Add closing tags for description list terms Without the closing tags, the dt elements contain whitespace after the text. This normally isn't a big deal, but does mess some things up, e.g: using `::after` with `content: ", "` in stylesheets. * Restore float:left style for note lists Unlike the original note list styles, this version sets the line-height for all `dt` elements to be the same as the `p` elements contained inside the `dd`, so that the second line has the same indentation as all subsequent lines. * Add commas between note list terms https://github.com/ruby/rdoc/commit/9e69ea6d75 --- lib/rdoc/generator/template/darkfish/css/rdoc.css | 22 +++++++++++++++++++--- lib/rdoc/markup/to_html.rb | 2 +- 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/rdoc/generator/template/darkfish/css/rdoc.css b/lib/rdoc/generator/template/darkfish/css/rdoc.css index 82c1e4baf6..69b1d08577 100644 --- a/lib/rdoc/generator/template/darkfish/css/rdoc.css +++ b/lib/rdoc/generator/template/darkfish/css/rdoc.css @@ -469,14 +469,30 @@ main dl { } main dt { - margin-bottom: 0.5em; + line-height: 1.5; /* matches `main p` */ + font-weight: bold; +} + +main dl.note-list dt { margin-right: 1em; float: left; - font-weight: bold; +} + +main dl.note-list dt:has(+ dt) { + margin-right: 0.25em; +} + +main dl.note-list dt:has(+ dt)::after { + content: ', '; + font-weight: normal; } main dd { - margin: 0 1em 1em 0.5em; + margin: 0 0 1em 1em; +} + +main dd p:first-child { + margin-top: 0; } /* Headers within Main */ diff --git a/lib/rdoc/markup/to_html.rb b/lib/rdoc/markup/to_html.rb index 91cadf9d16..dd37bf9eb3 100644 --- a/lib/rdoc/markup/to_html.rb +++ b/lib/rdoc/markup/to_html.rb @@ -407,7 +407,7 @@ class RDoc::Markup::ToHtml < RDoc::Markup::Formatter "
  • " when :LABEL, :NOTE then Array(list_item.label).map do |label| - "
    #{to_html label}\n" + "
    #{to_html label}
    \n" end.join << "
    " else raise RDoc::Error, "Invalid list type: #{list_type.inspect}" -- cgit v1.2.3