From 8dde791281d89baa8c1c4a2455218d34d740105c Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Mon, 28 Feb 2022 10:40:04 -0500 Subject: latex select papersize & orientation - cfte, doc collection config, cli e.g. --set-papersize="a4,letter.portrait,b4.portrait" --- src/doc_reform/io_out/latex.d | 12 ++++----- src/doc_reform/meta/conf_make_meta_yaml.d | 42 +++++++++++++++---------------- 2 files changed, 27 insertions(+), 27 deletions(-) (limited to 'src') diff --git a/src/doc_reform/io_out/latex.d b/src/doc_reform/io_out/latex.d index 68ac2f9..3bea60d 100644 --- a/src/doc_reform/io_out/latex.d +++ b/src/doc_reform/io_out/latex.d @@ -708,10 +708,10 @@ string table(O,M)( switch (paper_size_orientation) { case "a4.portrait": pw = (paper.a4.portrait.w - 20); break; case "a4.landscape": pw = (paper.a4.landscape.w - 20); break; - case "a5.portrait": pw = (paper.a5.portrait.w - 20); break; - case "a5.landscape": pw = (paper.a5.landscape.w - 20); break; case "b4.portrait": pw = (paper.b4.portrait.w - 20); break; case "b4.landscape": pw = (paper.b4.landscape.w - 20); break; + case "a5.portrait": pw = (paper.a5.portrait.w - 20); break; + case "a5.landscape": pw = (paper.a5.landscape.w - 20); break; case "letter.portrait": pw = (paper.letter.portrait.w - 20); break; case "letter.landscape": pw = (paper.letter.landscape.w - 20); break; case "legal.portrait": pw = (paper.legal.portrait.w - 20); break; @@ -792,10 +792,10 @@ string table(O,M)( struct paperTypeLatex { string a4_portrait; string a4_landscape; - string a5_portrait; - string a5_landscape; string b4_portrait; string b4_landscape; + string a5_portrait; + string a5_landscape; string us_letter_portrait; string us_letter_landscape; string us_legal_portrait; @@ -907,10 +907,10 @@ string table(O,M)( switch (paper_size_orientation) { case "a4.portrait": paper_size_orientation_latex = set_paper(paper.a4.portrait); break; case "a4.landscape": paper_size_orientation_latex = set_paper(paper.a4.landscape); break; - case "a5.portrait": paper_size_orientation_latex = set_paper(paper.a5.portrait); break; - case "a5.landscape": paper_size_orientation_latex = set_paper(paper.a5.landscape); break; case "b4.portrait": paper_size_orientation_latex = set_paper(paper.b4.portrait); break; case "b4.landscape": paper_size_orientation_latex = set_paper(paper.b4.landscape); break; + case "a5.portrait": paper_size_orientation_latex = set_paper(paper.a5.portrait); break; + case "a5.landscape": paper_size_orientation_latex = set_paper(paper.a5.landscape); break; case "letter.portrait": paper_size_orientation_latex = set_paper(paper.letter.portrait); break; case "letter.landscape": paper_size_orientation_latex = set_paper(paper.letter.landscape); break; case "legal.portrait": paper_size_orientation_latex = set_paper(paper.legal.portrait); break; diff --git a/src/doc_reform/meta/conf_make_meta_yaml.d b/src/doc_reform/meta/conf_make_meta_yaml.d index ff0bcf5..5af22ad 100644 --- a/src/doc_reform/meta/conf_make_meta_yaml.d +++ b/src/doc_reform/meta/conf_make_meta_yaml.d @@ -518,16 +518,6 @@ template contentYAMLtoSpineStruct() { case "a4.landscape": _selected_sizes ~= _size; break; - case "a5": - _selected_sizes ~= "a5.portrait"; - _selected_sizes ~= "a5.landscape"; - break; - case "a5.portrait": - _selected_sizes ~= _size; - break; - case "a5.landscape": - _selected_sizes ~= _size; - break; case "b4": _selected_sizes ~= "b4.portrait"; _selected_sizes ~= "b4.landscape"; @@ -538,6 +528,16 @@ template contentYAMLtoSpineStruct() { case "b4.landscape": _selected_sizes ~= _size; break; + case "a5": + _selected_sizes ~= "a5.portrait"; + _selected_sizes ~= "a5.landscape"; + break; + case "a5.portrait": + _selected_sizes ~= _size; + break; + case "a5.landscape": + _selected_sizes ~= _size; + break; case "letter": _selected_sizes ~= "letter.portrait"; _selected_sizes ~= "letter.landscape"; @@ -563,24 +563,24 @@ template contentYAMLtoSpineStruct() { } return _selected_sizes; } + string _set_papersize; if (_opt_action.latex_papersize.length > 0) { - _struct_composite.conf.set_papersize = selected_papersize(_opt_action.latex_papersize); - } else if ( - "default" in _yaml - && _yaml["default"].type.sequence - && _yaml["default"].type.mapping - && _yaml["default"].tag.match(rgx.yaml_tag_is_map) - ) { + _set_papersize + = _opt_action.latex_papersize; + } else { + _set_papersize + = (_cfg.default_papersize.empty) + ? "a4,letter.portrait" + : _cfg.default_papersize; if ("papersize" in _yaml["default"] && _yaml["default"]["papersize"].type.string && _yaml["default"]["papersize"].tag.match(rgx.yaml_tag_is_str) ) { - _struct_composite.conf.set_papersize = selected_papersize(_yaml["default"]["papersize"].get!string); + _set_papersize + = _yaml["default"]["papersize"].get!string; } } - if (_struct_composite.conf.set_papersize.length == 0) { - _struct_composite.conf.set_papersize = ["a4.portrait", "a4.landscape"]; - } + _struct_composite.conf.set_papersize = selected_papersize(_set_papersize); if ( "default" in _yaml && _yaml["default"].type.sequence -- cgit v1.2.3