diff --git a/.github/workflows/adoc_build.yml b/.github/workflows/adoc_build.yml index 0eb366dd..6c12c33a 100644 --- a/.github/workflows/adoc_build.yml +++ b/.github/workflows/adoc_build.yml @@ -57,7 +57,7 @@ jobs: - name: Build cf-conventions.pdf uses: Analog-inc/asciidoctor-action@v1.2 with: - shellcommand: 'asciidoctor-pdf --verbose ${FINAL_TAG} -d book cf-conventions.adoc -D conventions_build' + shellcommand: 'asciidoctor-pdf --verbose ${FINAL_TAG} -d book -a pdf-theme=default-theme-CF-version.yml --trace cf-conventions.adoc -D conventions_build' # Upload artifact containing cf-conventions.html, cf-conventions.pdf - name: Upload cf-conventions doc preview uses: actions/upload-artifact@v2 diff --git a/.gitignore b/.gitignore index 2b310dac..d73bd9c4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .DC_Store *~ -# Do not store generated HTML files +# Do not store generated HTML and PDF files cf-conventions.html +cf-conventions.pdf diff --git a/cf-conventions.adoc b/cf-conventions.adoc index fd721256..0ab503e7 100644 --- a/cf-conventions.adoc +++ b/cf-conventions.adoc @@ -1,7 +1,7 @@ include::version.adoc[] = NetCDF Climate and Forecast (CF) Metadata Conventions -Brian{nbsp}Eaton; Jonathan{nbsp}Gregory; Bob{nbsp}Drach; Karl{nbsp}Taylor; Steve{nbsp}Hankin; Jon{nbsp}Blower; John{nbsp}Caron; Rich{nbsp}Signell; Phil{nbsp}Bentley; Greg{nbsp}Rappa; Heinke{nbsp}Höck; Alison{nbsp}Pamment; Martin{nbsp}Juckes; Martin{nbsp}Raspaud; Randy{nbsp}Horne; Timothy{nbsp}Whiteaker; David{nbsp}Blodgett; Charlie{nbsp}Zender; Daniel{nbsp}Lee; David{nbsp}Hassell; Alan{nbsp}D.{nbsp}Snow; Tobias{nbsp}Kölling; Dave{nbsp}Allured; Aleksandar{nbsp}Jelenak; Anders{nbsp}Meier{nbsp}Soerensen; Lucile{nbsp}Gaultier; Sylvain{nbsp}Herlédan; Fernando{nbsp}Manzano; Lars{nbsp}Bärring; Chris{nbsp}Barker -Version {current-version}, 31 August, 2022 +Brian{nbsp}Eaton; Jonathan{nbsp}Gregory; Bob{nbsp}Drach; Karl{nbsp}Taylor; Steve{nbsp}Hankin; Jon{nbsp}Blower; John{nbsp}Caron; Rich{nbsp}Signell; Phil{nbsp}Bentley; Greg{nbsp}Rappa; Heinke{nbsp}Höck; Alison{nbsp}Pamment; Martin{nbsp}Juckes; Martin{nbsp}Raspaud; Randy{nbsp}Horne; Timothy{nbsp}Whiteaker; David{nbsp}Blodgett; Charlie{nbsp}Zender; Daniel{nbsp}Lee; David{nbsp}Hassell; Alan{nbsp}D.{nbsp}Snow; Tobias{nbsp}Kölling; Dave{nbsp}Allured; Aleksandar{nbsp}Jelenak; Anders{nbsp}Meier{nbsp}Soerensen; Lucile{nbsp}Gaultier; Sylvain{nbsp}Herlédan; Fernando{nbsp}Manzano; Lars{nbsp}Bärring +Version {current-version}, 31 August, 2022: See https://cfconventions.org for further information :doctype: book :pdf-folio-placement: physical :sectanchors: @@ -63,9 +63,6 @@ The extensions include metadata that provides a precise definition of each varia Since climate and forecast data are often not simply representative of points in space/time, other extensions provide for the description of coordinate intervals, multidimensional cells and climatological time coordinates, and indicate how a data value is representative of an interval or cell. This standard also relaxes the COARDS constraints on dimension order and specifies methods for reducing the size of datasets. -:numbered!: -include::pr01.adoc[] - :numbered: include::ch01.adoc[] diff --git a/default-theme-CF-version.yml b/default-theme-CF-version.yml new file mode 100644 index 00000000..6983f21b --- /dev/null +++ b/default-theme-CF-version.yml @@ -0,0 +1,276 @@ +font: + catalog: + # Noto Serif supports Latin, Latin-1 Supplement, Latin Extended-A, Greek, Cyrillic, Vietnamese & an assortment of symbols + Noto Serif: + normal: GEM_FONTS_DIR/notoserif-regular-subset.ttf + bold: GEM_FONTS_DIR/notoserif-bold-subset.ttf + italic: GEM_FONTS_DIR/notoserif-italic-subset.ttf + bold_italic: GEM_FONTS_DIR/notoserif-bold_italic-subset.ttf + # M+ 1mn supports ASCII and the circled numbers used for conums + M+ 1mn: + normal: GEM_FONTS_DIR/mplus1mn-regular-subset.ttf + bold: GEM_FONTS_DIR/mplus1mn-bold-subset.ttf + italic: GEM_FONTS_DIR/mplus1mn-italic-subset.ttf + bold_italic: GEM_FONTS_DIR/mplus1mn-bold_italic-subset.ttf +page: + background_color: FFFFFF + layout: portrait + initial_zoom: FitH + margin: [0.5in, 0.67in, 0.67in, 0.67in] + # margin_inner and margin_outer keys are used for recto/verso print margins when media=prepress + margin_inner: 0.75in + margin_outer: 0.59in + size: A4 +base: + text_align: justify + font_color: 333333 + font_family: Noto Serif + font_size: 10.5 + # line_height_length is really just a vertical spacing variable; it's not actually the height of a line + line_height_length: 12 + # The Noto font family has a built-in line height of 1.36 + # With this line_height, a line of text will occupy a height of 15.78pt + line_height: $base_line_height_length / 10.5 + font_size_large: round($base_font_size * 1.25) + font_size_small: round($base_font_size * 0.85) + font_size_min: $base_font_size * 0.75 + font_style: normal + border_color: EEEEEE + border_radius: 4 + border_width: 0.5 +role: + lead: + font_size: $base_font_size_large + line-through: + text_decoration: line-through + underline: + text_decoration: underline + big: + font_size: 1.2em + small: + font_size: 0.8em + subtitle: + font_color: 999999 + font_size: 0.8em + font_style: normal_italic +vertical_rhythm: $base_line_height_length +horizontal_rhythm: $base_line_height_length +link: + font_color: 428BCA +# codespan is currently used for monospaced phrases and table cells +codespan: + font_color: B12146 + font_family: M+ 1mn +button: + content: "[\u2009%s\u2009]" + font_style: bold +kbd: + background_color: F5F5F5 + border_color: CCCCCC + border_offset: 2 + border_radius: 2 + border_width: 0.5 + font_family: $codespan_font_family + separator: "\u202f+\u202f" +mark: + background_color: FFFF00 + border_offset: 1 +menu: + caret_content: " \u203a " + font_style: bold +heading: + text_align: left + font_color: $base_font_color + font_style: bold + # h1 is used for part titles (book doctype) or the doctitle (article doctype) + h1_font_size: floor($base_font_size * 2.6) + # h2 is used for chapter titles (book doctype only) + h2_font_size: floor($base_font_size * 2.15) + h3_font_size: round($base_font_size * 1.7) + h4_font_size: $base_font_size_large + h5_font_size: $base_font_size + h6_font_size: $base_font_size_small + # rely on built-in line height in Noto + line_height: 1 + margin_top: $vertical_rhythm * 0.4 + margin_bottom: $vertical_rhythm * 0.9 + min_height_after: $base_line_height_length * 1.5 +title_page: + align: right + logo: + top: 10% + title: + top: 55% + font_size: $heading_h1_font_size + font_color: $role_subtitle_font_color + line_height: 0.9 + subtitle: + font_size: $heading_h3_font_size + font_style: bold_italic + line_height: 1 + authors: + margin_top: $base_font_size * 1.25 + font_size: $base_font_size_large + font_color: 181818 + revision: + margin_top: $base_font_size * 1.25 +block: + margin_bottom: $vertical_rhythm +caption: + align: left + font_size: $base_font_size * 0.95 + font_style: italic + # FIXME perhaps set line_height instead of / in addition to margins? + margin_inside: $vertical_rhythm / 3 + margin_outside: 0 +abstract: + font_color: 5C6266 + font_size: $role_lead_font_size + line_height: 1.4 + font_style: italic + first_line_font_style: bold + title: + text_align: center + font_color: $heading_font_color + font_size: $heading_h4_font_size + font_style: $heading_font_style +admonition: + column_rule_color: $base_border_color + column_rule_width: $base_border_width + padding: [$vertical_rhythm / 3.0, $horizontal_rhythm, $vertical_rhythm / 3.0, $horizontal_rhythm] + label: + text_transform: uppercase + font_style: bold +quote: + font_size: $base_font_size_large + border_color: $base_border_color + border_width: 0 + border_left_width: $horizontal_rhythm / 3 + padding: [$vertical_rhythm / 4, $horizontal_rhythm, $vertical_rhythm / 4, $horizontal_rhythm + $quote_border_left_width / 2] + cite: + font_size: $base_font_size_small + font_color: $role_subtitle_font_color +verse: + font_size: $quote_font_size + border_color: $quote_border_color + border_width: $quote_border_width + border_left_width: $quote_border_left_width + padding: $quote_padding + cite: + font_size: $quote_cite_font_size + font_color: $quote_cite_font_color +# code is used for literal, listing, and source blocks and literal table cells +code: + font_color: $base_font_color + font_family: $codespan_font_family + font_size: ceil($base_font_size) + padding: $code_font_size + line_height: 1.25 + # line_gap is an experimental property to control how a background color is applied to an inline block element + line_gap: 3.8 + background_color: F5F5F5 + border_color: CCCCCC + border_radius: $base_border_radius + border_width: 0.75 +conum: + font_family: $codespan_font_family + font_color: $codespan_font_color + font_size: $base_font_size + line_height: 4 / 3 + glyphs: circled +example: + border_color: $base_border_color + border_radius: $base_border_radius + border_width: 0.75 + background_color: $page_background_color + padding: [$vertical_rhythm, $horizontal_rhythm, $vertical_rhythm, $horizontal_rhythm] +image: + align: left +prose: + margin_bottom: $block_margin_bottom +sidebar: + background_color: EEEEEE + border_color: E1E1E1 + border_radius: $base_border_radius + border_width: $base_border_width + padding: [$vertical_rhythm, $vertical_rhythm * 1.25, $vertical_rhythm, $vertical_rhythm * 1.25] + title: + text_align: center + font_color: $heading_font_color + font_size: $heading_h4_font_size + font_style: $heading_font_style +thematic_break: + border_color: $base_border_color + border_style: solid + border_width: $base_border_width + padding: [$vertical_rhythm * 0.5, 0] +list: + indent: $horizontal_rhythm * 1.5 + #marker_font_color: 404040 + # NOTE list_item_spacing only applies to list items that do not have complex content + item_spacing: $vertical_rhythm / 2 +description_list: + term_font_style: bold + term_spacing: $vertical_rhythm / 4 + description_indent: $horizontal_rhythm * 1.25 +callout_list: + margin_top_after_code: -$block_margin_bottom / 2 +table: + background_color: $page_background_color + border_color: DDDDDD + border_width: $base_border_width + grid_width: $base_border_width + cell_padding: 3 + head: + font_style: bold + border_bottom_width: $base_border_width * 2.5 + body: + stripe_background_color: F9F9F9 + foot: + background_color: F0F0F0 +toc: + indent: $horizontal_rhythm + line_height: 1.4 + dot_leader: + #content: ". " + font_color: A9A9A9 + #levels: 2 3 +footnotes: + font_size: round($base_font_size * 0.75) + item_spacing: $list_item_spacing / 2 +index: + column_gap: $vertical_rhythm +header: + font_size: $base_font_size_small + # NOTE if background_color is set, background and border will span width of page + border_color: DDDDDD + border_width: 0.25 + height: $base_line_height_length * 2.5 + line_height: 1 + vertical_align: middle + recto: + center: + content: '{doctitle} - {current-version}' + verso: + center: + content: '{doctitle} - {current-version}' + +footer: + font_size: $base_font_size_small + # NOTE if background_color is set, background and border will span width of page + border_color: DDDDDD + border_width: 0.25 + height: $base_line_height_length * 2.5 + line_height: 1 + padding: [$base_line_height_length / 2, 1, 0, 1] + vertical_align: top + recto: + right: + content: '*{page-number}*' + left: + content: 'See https://cfconventions.org for further information' + verso: + left: + content: '*{page-number}*' + right: + content: 'See https://cfconventions.org for further information' diff --git a/no-lead-theme.yml b/no-lead-theme.yml deleted file mode 100644 index 80ea824e..00000000 --- a/no-lead-theme.yml +++ /dev/null @@ -1,249 +0,0 @@ -# -# A modified copy of the 'default-theme.yml' file that is shipped with -# asciidoctor-pdf v1.5.0.alpha.10. -# -# The lead_font_size and lead_line_height properties are modified to -# prevent the "List of Tables" and "List of Examples" content from -# using a larger than normal font. -# -font: - catalog: - # Noto Serif supports Latin, Latin-1 Supplement, Latin Extended-A, Greek, Cyrillic, Vietnamese & an assortment of symbols - Noto Serif: - normal: notoserif-regular-subset.ttf - bold: notoserif-bold-subset.ttf - italic: notoserif-italic-subset.ttf - bold_italic: notoserif-bold_italic-subset.ttf - # M+ 1mn supports ASCII and the circled numbers used for conums - M+ 1mn: - normal: mplus1mn-regular-ascii-conums.ttf - bold: mplus1mn-bold-ascii.ttf - italic: mplus1mn-italic-ascii.ttf - bold_italic: mplus1mn-bold_italic-ascii.ttf - # M+ 1p supports Latin, Latin-1 Supplement, Latin Extended, Greek, Cyrillic, Vietnamese, Japanese & an assortment of symbols - # It also provides arrows for ->, <-, => and <= replacements in case these glyphs are missing from font - M+ 1p Fallback: - normal: mplus1p-regular-fallback.ttf - bold: mplus1p-regular-fallback.ttf - italic: mplus1p-regular-fallback.ttf - bold_italic: mplus1p-regular-fallback.ttf - fallbacks: - - M+ 1p Fallback -page: - background_color: ffffff - layout: portrait - margin: [0.5in, 0.67in, 0.67in, 0.67in] - size: LETTER -base: - align: justify - # color as hex string (leading # is optional) - font_color: 333333 - # color as RGB array - #font_color: [51, 51, 51] - # color as CMYK array (approximated) - #font_color: [0, 0, 0, 0.92] - #font_color: [0, 0, 0, 92%] - font_family: Noto Serif - # choose one of these font_size/line_height_length combinations - #font_size: 14 - #line_height_length: 20 - #font_size: 11.25 - #line_height_length: 18 - #font_size: 11.2 - #line_height_length: 16 - font_size: 10.5 - #line_height_length: 15 - # correct line height for Noto Serif metrics - line_height_length: 12 - #font_size: 11.25 - #line_height_length: 18 - line_height: $base_line_height_length / $base_font_size - font_size_large: round($base_font_size * 1.25) - font_size_small: round($base_font_size * 0.85) - font_size_min: $base_font_size * 0.75 - font_style: normal - border_color: eeeeee - border_radius: 4 - border_width: 0.5 -# FIXME vertical_rhythm is weird; we should think in terms of ems -#vertical_rhythm: $base_line_height_length * 2 / 3 -# correct line height for Noto Serif metrics (comes with built-in line height) -vertical_rhythm: $base_line_height_length -horizontal_rhythm: $base_line_height_length -# QUESTION should vertical_spacing be block_spacing instead? -vertical_spacing: $vertical_rhythm -link: - font_color: 428bca -# literal is currently used for inline monospaced in prose and table cells -literal: - font_color: b12146 - font_family: M+ 1mn -heading: - #font_color: 181818 - font_color: $base_font_color - font_family: $base_font_family - font_style: bold - # h1 is used for part titles - h1_font_size: floor($base_font_size * 2.6) - # h2 is used for chapter titles - h2_font_size: floor($base_font_size * 2.15) - h3_font_size: round($base_font_size * 1.7) - h4_font_size: $base_font_size_large - h5_font_size: $base_font_size - h6_font_size: $base_font_size_small - #line_height: 1.4 - # correct line height for Noto Serif metrics (comes with built-in line height) - line_height: 1.2 - margin_top: $vertical_rhythm * 0.2 - margin_bottom: $vertical_rhythm * 0.8 -title_page: - align: right - logo: - top: 10% - title: - top: 55% - font_size: $heading_h1_font_size - font_color: 999999 - line_height: 0.9 - subtitle: - font_size: $heading_h3_font_size - font_style: bold_italic - line_height: 1 - authors: - margin_top: $base_font_size * 1.25 - font_size: $base_font_size_large - font_color: 181818 - revision: - margin_top: $base_font_size * 1.25 -block: - margin_top: 0 - margin_bottom: $vertical_rhythm -caption: - align: left - font_style: italic - # FIXME perhaps set line_height instead of / in addition to margins? - margin_inside: $vertical_rhythm / 3 - #margin_inside: $vertical_rhythm / 4 - margin_outside: 0 -lead: - font_size: $base_font_size - line_height: $base_line_height -abstract: - font_color: 5c6266 - font_size: $lead_font_size - line_height: $lead_line_height - font_style: italic -admonition: - border_color: $base_border_color - border_width: $base_border_width - padding: [0, $horizontal_rhythm, 0, $horizontal_rhythm] -blockquote: - font_color: $base_font_color - font_size: $base_font_size_large - border_color: $base_border_color - border_width: 5 - padding: [$vertical_rhythm / 2, $horizontal_rhythm, $vertical_rhythm / -2, $horizontal_rhythm + $blockquote_border_width / 2] - cite_font_size: $base_font_size_small - cite_font_color: 999999 -# code is used for source blocks (perhaps change to source or listing?) -code: - font_color: $base_font_color - font_family: $literal_font_family - font_size: ceil($base_font_size) - padding: $code_font_size - line_height: 1.25 - background_color: f5f5f5 - border_color: cccccc - border_radius: $base_border_radius - border_width: 0.75 -conum: - font_family: M+ 1mn - font_color: $literal_font_color - font_size: $base_font_size - line_height: 4 / 3 -example: - border_color: $base_border_color - border_radius: $base_border_radius - border_width: 0.75 - background_color: transparent - # FIXME reenable margin bottom once margin collapsing is implemented - padding: [$vertical_rhythm, $horizontal_rhythm, 0, $horizontal_rhythm] -image: - align: left -prose: - margin_top: 0 - margin_bottom: $vertical_rhythm -sidebar: - border_color: $page_background_color - border_radius: $base_border_radius - border_width: $base_border_width - background_color: eeeeee - # FIXME reenable margin bottom once margin collapsing is implemented - padding: [$vertical_rhythm, $vertical_rhythm * 1.25, 0, $vertical_rhythm * 1.25] - title: - align: center - font_color: $heading_font_color - font_family: $heading_font_family - font_size: $heading_h4_font_size - font_style: $heading_font_style -thematic_break: - border_color: $base_border_color - border_style: solid - border_width: $base_border_width - margin_top: $vertical_rhythm * 0.5 - margin_bottom: $vertical_rhythm * 1.5 -description_list: - term_font_style: italic - term_spacing: $vertical_rhythm / 4 - description_indent: $horizontal_rhythm * 1.25 -outline_list: - indent: $horizontal_rhythm * 1.5 - # NOTE item_spacing applies to list items that do not have complex content - item_spacing: $vertical_rhythm / 2 - #marker_font_color: 404040 -table: - background_color: $page_background_color - #head_background_color: - #head_font_color: $base_font_color - head_font_style: bold - even_row_background_color: f9f9f9 - #odd_row_background_color: - foot_background_color: f0f0f0 - border_color: dddddd - border_width: $base_border_width - # HACK accounting for line-height - cell_padding: [3, 3, 6, 3] -toc: - dot_leader_color: dddddd - #dot_leader_content: '. ' - indent: $horizontal_rhythm - line_height: 1.4 -# NOTE In addition to footer, header is also supported -footer: - font_size: $base_font_size_small - font_color: $base_font_color - # NOTE if background_color is set, background and border will span width of page - border_color: dddddd - border_width: 0.25 - height: $base_line_height_length * 2.5 - line_height: 1 - padding: [$base_line_height_length / 2, 1, 0, 1] - vertical_align: top - #image_vertical_align: or - # additional attributes for content: - # * {page-count} - # * {page-number} - # * {document-title} - # * {document-subtitle} - # * {chapter-title} - # * {section-title} - # * {section-or-chapter-title} - recto_content: - #right: '{section-or-chapter-title} | {page-number}' - #right: '{document-title} | {page-number}' - right: '{page-number}' - #center: '{page-number}' - verso_content: - #left: '{page-number} | {chapter-title}' - left: '{page-number}' - #center: '{page-number}' diff --git a/pr01.adoc b/pr01.adoc deleted file mode 100644 index 3c825da4..00000000 --- a/pr01.adoc +++ /dev/null @@ -1,12 +0,0 @@ -[[preface]] -[preface] -== Preface - -Home page: :: -Contains links to: previous draft and current working draft documents; applications for processing CF conforming files; email list for discussion about interpretation, clarification, and proposals for changes or extensions to the current conventions. -link:$$http://cfconventions.org/$$[http://cfconventions.org/] - -Revision history: :: -This document will be updated to reflect agreed changes to the standard and to correct mistakes according to the rules of -link:$$http://cfconventions.org/governance.html$$[CF governance]. -See <> for the full revision history.