diff options
Diffstat (limited to 'org/out_latex.org')
-rw-r--r-- | org/out_latex.org | 189 |
1 files changed, 95 insertions, 94 deletions
diff --git a/org/out_latex.org b/org/out_latex.org index cb73d5c..9424078 100644 --- a/org/out_latex.org +++ b/org/out_latex.org @@ -4,14 +4,15 @@ #+FILETAGS: :spine:output:latex:pdf: #+AUTHOR: Ralph Amissah #+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] -#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah +#+COPYRIGHT: Copyright (C) 2015 - 2020 Ralph Amissah #+LANGUAGE: en -#+STARTUP: indent content hideblocks hidestars -#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t -#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc -#+OPTIONS: author:nil email:nil creator:nil timestamp:nil -#+PROPERTY: header-args :results silent :padline no :exports code :cache no :noweb yes -#+EXPORT_SELECT_TAGS: export +#+STARTUP: content hideblocks hidestars noindent entitiespretty +#+PROPERTY: header-args :exports code +#+PROPERTY: header-args+ :noweb yes +#+PROPERTY: header-args+ :eval no +#+PROPERTY: header-args+ :results no +#+PROPERTY: header-args+ :cache no +#+PROPERTY: header-args+ :padline no - [[./spine.org][spine]] [[./][org/]] - [[./output_hub.org][output_hub]] @@ -48,7 +49,7 @@ template outputLaTeX() { ** write latex output :latex:out: -#+name: output_latex +#+NAME: output_latex #+BEGIN_SRC d void writeOutputLaTeX(T,M)( const T latex_content, @@ -89,7 +90,7 @@ void writeOutputLaTeX(T,M)( ** latex output hub [#A] :latex:pdf:out: -#+name: output_latex +#+NAME: output_latex #+BEGIN_SRC d void outputLaTeX(D,M)( const D doc_abstraction, @@ -111,7 +112,7 @@ void outputLaTeX(D,M)( * stuff ** output imports -#+name: output_latex_imports +#+NAME: output_latex_imports #+BEGIN_SRC d import doc_reform.io_out; import @@ -125,7 +126,7 @@ import ** shared *** paper dimensions (struct) -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d auto paper() { struct PaperType { @@ -242,7 +243,7 @@ import *** latex \escape special characters **** general -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string sp_char_esc(O)( string _txt, @@ -271,7 +272,7 @@ import } #+END_SRC -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string sp_char_esc_txt()( string _txt, @@ -313,7 +314,7 @@ import - bold, italics, underscore, strikethrough -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string fontface()( string _txt, @@ -336,7 +337,7 @@ _txt = _txt **** spaces ***** leading hardspace -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string leading_hardspaces()( string _txt, @@ -353,7 +354,7 @@ _txt = _txt ***** nbsp character -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string nbsp_char()(string _txt) { if (_txt.match(rgx.nbsp_char)) { @@ -365,7 +366,7 @@ _txt = _txt ***** remove nbsp character -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string nbsp_char_to_space()(string _txt) { if (_txt.match(rgx.nbsp_char)) { @@ -378,7 +379,7 @@ _txt = _txt **** links and images ***** links / urls -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string links_and_images(O,M)( string _txt, @@ -430,7 +431,7 @@ _txt = _txt *** footnotes **** footnotes -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string footnotes()( string _txt, @@ -451,7 +452,7 @@ _txt = _txt **** footnote remove -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string remove_footnotes()( string _txt, @@ -466,7 +467,7 @@ _txt = _txt *** para **** para -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string para(O)( string _txt, @@ -487,7 +488,7 @@ _txt = _txt **** bookindex para -#+name: output_latex_shared +#+NAME: output_latex_shared #+BEGIN_SRC d @safe string bookindex(O)( string _txt, @@ -508,7 +509,7 @@ _txt = _txt *** bullets & indentation -#+name: output_latex_head +#+NAME: output_latex_head #+BEGIN_SRC d @safe string bullets_and_indentation(O)( string _txt, @@ -553,7 +554,7 @@ _txt = _txt *** heading -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d @safe string heading(O,M)( string _txt, @@ -727,7 +728,7 @@ _txt = _txt - (hardspace not honored) clear hardspace marker -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d string group(O,M)( string _txt, @@ -755,7 +756,7 @@ string group(O,M)( - (hardspace honored) \hardspace -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d string block(O,M)( string _txt, @@ -787,7 +788,7 @@ string block(O,M)( - (hardspace honored) \hardspace -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d string verse(O,M)( string _txt, @@ -819,7 +820,7 @@ string verse(O,M)( - (hardspace honored) \begin{lstlisting} clear hardspace marker -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d string codeblock(O,M)( string _txt, @@ -851,7 +852,7 @@ string codeblock(O,M)( ***** tablarize -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d auto tablarize(O)( string _txt, @@ -890,7 +891,7 @@ auto tablarize(O)( ***** table -#+name: output_latex_shared_0 +#+NAME: output_latex_shared_0 #+BEGIN_SRC d string table(O,M)( string _txt, @@ -945,7 +946,7 @@ string table(O,M)( *** latex head :head: **** latex head function -#+name: output_latex_head +#+NAME: output_latex_head #+BEGIN_SRC d string latex_head(M)( M doc_matters, @@ -956,7 +957,7 @@ string latex_head(M)( ***** paper type dimensions ****** struct -#+name: output_latex_head +#+NAME: output_latex_head #+BEGIN_SRC d struct paperType { string a4_portrait; @@ -969,7 +970,7 @@ string latex_head(M)( ****** footer -#+name: output_latex_head +#+NAME: output_latex_head #+BEGIN_SRC d string _footer(M)(M doc_matters) { string _ft = "\\lfoot[\\textrm{\\thepage}]"; @@ -1003,18 +1004,18 @@ string latex_head(M)( ****** a4, portrait -#+name: output_latex_head_1_format_string +#+NAME: output_latex_head_1_format_string #+BEGIN_SRC d paper.a4_portrait = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \documentclass[12pt,a4paper,titlepage]{scrartcl} \setlength{\textheight}{228mm} \setlength{\textwidth}{160mm} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1022,18 +1023,18 @@ string latex_head(M)( ****** a4, landscape -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d paper.a4_landscape = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \documentclass[11pt,a4paper,landscape,titlepage,twocolumn]{scrartcl} \setlength{\textheight}{160mm} \setlength{\textwidth}{238mm} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1041,18 +1042,18 @@ string latex_head(M)( ****** us letter, portrait -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d paper.us_letter_portrait = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \documentclass[12pt,letterpaper,titlepage]{scrartcl} \setlength{\textheight}{212mm} \setlength{\textwidth}{166mm} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1060,18 +1061,18 @@ string latex_head(M)( ****** us letter, landscape -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d paper.us_letter_landscape = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \documentclass[11pt,letterpaper,landscape,titlepage,twocolumn]{scrartcl} \setlength{\textheight}{166mm} \setlength{\textwidth}{226mm} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1080,7 +1081,7 @@ string latex_head(M)( ***** paper margins ****** struct -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d struct paperMargins { string portrait; @@ -1091,19 +1092,19 @@ string latex_head(M)( ****** portrait -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d margins.portrait = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \setlength{\oddsidemargin}{0mm} \setlength{\evensidemargin}{0mm} \setlength{\topmargin}{-12pt} \setlength{\headheight}{12pt} \setlength{\headsep}{35pt} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1111,19 +1112,19 @@ string latex_head(M)( ****** landscape -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d margins.landscape = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \setlength{\oddsidemargin}{6mm} \setlength{\evensidemargin}{6mm} \setlength{\topmargin}{-12mm} \setlength{\headheight}{12pt} \setlength{\headsep}{20pt} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1132,7 +1133,7 @@ string latex_head(M)( ***** multicol ****** struct -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d struct columnsMulti { string portrait; @@ -1143,17 +1144,17 @@ string latex_head(M)( ****** portrait -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d multicol.portrait = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \usepackage{multicol} #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1161,7 +1162,7 @@ string latex_head(M)( ****** landscape -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d multicol.landscape = ""; #+END_SRC @@ -1169,7 +1170,7 @@ string latex_head(M)( ***** color links ****** struct -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d struct colorLinks { string mono; @@ -1180,12 +1181,12 @@ string latex_head(M)( ****** mono -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d links.mono = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \usepackage[xetex, colorlinks=true, @@ -1194,7 +1195,7 @@ string latex_head(M)( linkcolor=myblack, #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d ┃", ); @@ -1202,12 +1203,12 @@ string latex_head(M)( ****** color -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC d links.color = format(q"┃ #+END_SRC -#+name: output_latex_head_1_tex +#+NAME: output_latex_head_1_tex #+BEGIN_SRC latex \usepackage[xetex, colorlinks=true, @@ -1216,7 +1217,7 @@ string latex_head(M)( linkcolor=myred, %% \href{...} and \pageref{...} #+END_SRC -#+name: output_latex_head_1_format_string_variables +#+NAME: output_latex_head_1_format_string_variables #+BEGIN_SRC d ┃", ); @@ -1224,14 +1225,14 @@ string latex_head(M)( **** latex head starts -#+name: output_latex_head_0_format_string +#+NAME: output_latex_head_0_format_string #+BEGIN_SRC d string _latex_head = format(q"┃%%%% spine LaTeX output #+END_SRC ***** description comment -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex %%%% Generated by: %s %%%% D version: %s @@ -1247,7 +1248,7 @@ string latex_head(M)( - paper.us_letter_portrait - paper.us_letter_landscape -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex %s #+END_SRC @@ -1257,14 +1258,14 @@ string latex_head(M)( - margins.portrait - margins.landscape -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex %s #+END_SRC ***** margin shared -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \setlength{\marginparsep}{4mm} \setlength{\marginparwidth}{8mm} @@ -1272,14 +1273,14 @@ string latex_head(M)( ***** multicol (portrait | landscape) -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex %s #+END_SRC ***** language & font -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage{polyglossia, ucs, fontspec, xltxtra, xunicode} \setmainlanguage{%s} @@ -1293,7 +1294,7 @@ string latex_head(M)( ***** latex head -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage{alltt} \usepackage{thumbpdf} @@ -1301,14 +1302,14 @@ string latex_head(M)( ***** color links: no = mono | yes = color -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex %s #+END_SRC ***** metadata -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex pdftitle={%s}, pdfauthor={%s}, @@ -1342,7 +1343,7 @@ string latex_head(M)( ***** define colors -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage[usenames]{color} \definecolor{myblack}{rgb}{0,0,0} @@ -1354,7 +1355,7 @@ string latex_head(M)( ***** latex head -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage{url} \urlstyle{sf} @@ -1364,7 +1365,7 @@ string latex_head(M)( ***** latex head -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage{textcomp} \usepackage[parfill]{parskip} @@ -1386,7 +1387,7 @@ string latex_head(M)( ***** indent, bullet, list -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage[multiple,ragged]{footmisc} \setlength\footnotemargin{12pt} @@ -1430,7 +1431,7 @@ string latex_head(M)( ***** part, section, subsection, paragraph, subparagraph -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \usepackage{fancyhdr} \lhead{} @@ -1464,7 +1465,7 @@ string latex_head(M)( ***** latex head misc. including defined commands -#+name: output_latex_head_0_tex +#+NAME: output_latex_head_0_tex #+BEGIN_SRC latex \selectlanguage{%s} \lhead[ ]{ } @@ -1525,7 +1526,7 @@ string latex_head(M)( **** latex head format inclusions -#+name: output_latex_head_0_format_string_variables +#+NAME: output_latex_head_0_format_string_variables #+BEGIN_SRC d ┃", doc_matters.opt.action.debug_do ? "" : doc_matters.generator_program.name_and_version.strip, @@ -1549,7 +1550,7 @@ string latex_head(M)( **** latex head return -#+name: output_latex_head_close +#+NAME: output_latex_head_close #+BEGIN_SRC d return _latex_head.strip; } @@ -1558,7 +1559,7 @@ string latex_head(M)( *** ↻ latex body :content:body: **** latex body function -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d string latex_body(D,M)( const D doc_abstraction, @@ -1571,7 +1572,7 @@ string latex_body(D,M)( **** ↻ loop open -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d foreach (part; doc_matters.has.keys_seq.latex) { foreach (obj; doc_abstraction[part]) { @@ -1581,7 +1582,7 @@ string latex_body(D,M)( **** ↻ within loop ***** frontmatter -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d case "frontmatter": assert(part == "head" || "toc"); _txt = obj.text @@ -1608,7 +1609,7 @@ string latex_body(D,M)( ***** body -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d case "body": assert(part == "body" || "head"); // surprise _txt = obj.text @@ -1670,7 +1671,7 @@ string latex_body(D,M)( ***** backmatter -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d case "backmatter": assert(part == "endnotes" || "glossary" || "bibliography" || "bookindex" || "blurb" || "tail"); @@ -1730,7 +1731,7 @@ string latex_body(D,M)( ***** after -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d case "comment": break; @@ -1755,7 +1756,7 @@ string latex_body(D,M)( **** latex body return -#+name: output_latex_body +#+NAME: output_latex_body #+BEGIN_SRC d return _latex_body; } @@ -1764,7 +1765,7 @@ string latex_body(D,M)( *** latex tail :tail: **** latex tail function -#+name: output_latex_tail +#+NAME: output_latex_tail #+BEGIN_SRC d string latex_tail(M)( M doc_matters, @@ -1773,7 +1774,7 @@ string latex_tail(M)( **** latex tail starts -#+name: output_latex_tail +#+NAME: output_latex_tail #+BEGIN_SRC d string _latex_tail = format(q"┃ #+END_SRC @@ -1783,7 +1784,7 @@ string latex_tail(M)( ***** latex document end -#+name: output_latex_tail_tex +#+NAME: output_latex_tail_tex #+BEGIN_SRC latex \end{document} @@ -1791,7 +1792,7 @@ string latex_tail(M)( **** latex tail format inclusions -#+name: output_latex_tail_close +#+NAME: output_latex_tail_close #+BEGIN_SRC d ┃", // doc_matters.conf_make_meta.meta.title_full, @@ -1801,7 +1802,7 @@ string latex_tail(M)( **** latex tail return -#+name: output_latex_tail_close +#+NAME: output_latex_tail_close #+BEGIN_SRC d return _latex_tail; } |