]> granicus.if.org Git - multimarkdown/commitdiff
ADDED: Add ODF Header metadata and fix issue with LaTeX Header metadata
authorFletcher T. Penney <fletcher@fletcherpenney.net>
Tue, 17 Jul 2018 15:45:23 +0000 (11:45 -0400)
committerFletcher T. Penney <fletcher@fletcherpenney.net>
Tue, 17 Jul 2018 15:45:23 +0000 (11:45 -0400)
Sources/libMultiMarkdown/html.c
Sources/libMultiMarkdown/latex.c
Sources/libMultiMarkdown/opendocument.c
tests/MMD6Tests/MMD Header and Footer.fodt
tests/MMD6Tests/MMD Header and Footer.html
tests/MMD6Tests/MMD Header and Footer.htmlc
tests/MMD6Tests/MMD Header and Footer.tex
tests/MMD6Tests/MMD Header and Footer.text

index e639d39cad27309868b6df6e58b10fbe928d1ac1..68e03bef9d233af379e4402152f1df8631facd45 100644 (file)
@@ -2316,12 +2316,14 @@ void mmd_start_complete_html(DString * out, const char * source, scratch_pad * s
                } else if (strcmp(m->key, "latexbegin") == 0) {
                } else if (strcmp(m->key, "latexconfig") == 0) {
                } else if (strcmp(m->key, "latexfooter") == 0) {
+               } else if (strcmp(m->key, "latexheader") == 0) {
                } else if (strcmp(m->key, "latexheaderlevel") == 0) {
                } else if (strcmp(m->key, "latexinput") == 0) {
                } else if (strcmp(m->key, "latexleader") == 0) {
                } else if (strcmp(m->key, "latexmode") == 0) {
                } else if (strcmp(m->key, "mmdfooter") == 0) {
                } else if (strcmp(m->key, "mmdheader") == 0) {
+               } else if (strcmp(m->key, "odfheader") == 0) {
                } else if (strcmp(m->key, "quoteslanguage") == 0) {
                } else if (strcmp(m->key, "title") == 0) {
                        print_const("\t<title>");
@@ -2346,6 +2348,17 @@ void mmd_start_complete_html(DString * out, const char * source, scratch_pad * s
 
 
 void mmd_end_complete_html(DString * out, const char * source, scratch_pad * scratch) {
+       meta * m;
+
+       // Iterate over metadata keys
+
+       for (m = scratch->meta_hash; m != NULL; m = m->hh.next) {
+               if (strcmp(m->key, "htmlfooter") == 0) {
+                       print(m->value);
+                       print_char('\n');
+               }
+       }
+
        print_const("\n\n</body>\n</html>\n");
 }
 
index df657fd304535ed0d390be929369d32239e6987f..952fed4a00eeaf642b5826c890b6e310a7ac1422 100644 (file)
@@ -2387,6 +2387,7 @@ void mmd_start_complete_latex(DString * out, const char * source, scratch_pad *
                } else if (strcmp(m->key, "latexmode") == 0) {
                } else if (strcmp(m->key, "mmdfooter") == 0) {
                } else if (strcmp(m->key, "mmdheader") == 0) {
+               } else if (strcmp(m->key, "odfheader") == 0) {
                } else if (strcmp(m->key, "quoteslanguage") == 0) {
                } else if (strcmp(m->key, "title") == 0) {
                        print_const("\\def\\mytitle{");
index e2277233dc0f86c965417921b511923b31238330..aa8be9ee0fcaa9149b60337df8b68b9c8e57ac76 100644 (file)
@@ -189,12 +189,15 @@ char * opendocument_metadata(mmd_engine * e, scratch_pad * scratch) {
                } else if (strcmp(m->key, "latexbegin") == 0) {
                } else if (strcmp(m->key, "latexconfig") == 0) {
                } else if (strcmp(m->key, "latexfooter") == 0) {
+               } else if (strcmp(m->key, "latexheader") == 0) {
                } else if (strcmp(m->key, "latexheaderlevel") == 0) {
                } else if (strcmp(m->key, "latexinput") == 0) {
                } else if (strcmp(m->key, "latexleader") == 0) {
                } else if (strcmp(m->key, "latexmode") == 0) {
                } else if (strcmp(m->key, "mmdfooter") == 0) {
                } else if (strcmp(m->key, "mmdheader") == 0) {
+               } else if (strcmp(m->key, "odfheader") == 0) {
+                       mmd_print_string_opendocument(out, m->value);
                } else if (strcmp(m->key, "quoteslanguage") == 0) {
                } else if (strcmp(m->key, "title") == 0) {
                        print_const("\t<dc:title>");
index 75e3936da04f444df63615b3f8eb4d4f555411f9..defafa94a1d2adf8c3759cb5f9de457a2ab362c2 100644 (file)
@@ -275,7 +275,7 @@ office:mimetype="application/vnd.oasis.opendocument.text">
  </office:master-styles>
 <office:meta>
        <dc:title>MMD Header and Footer</dc:title>
-</office:meta>
+ODF header.</office:meta>
 <office:body>
 <office:text>
 <text:p text:style-name="Standard">MultiMarkdown <text:span text:style-name="MMD-Italic">header</text:span>.</text:p>
index a8eede5c735a2fcdd9560c9565b290d49dfe47ad..86ec7c066870a2dc30235f19fb1de85be3e83671 100644 (file)
@@ -3,6 +3,7 @@
 <head>
        <meta charset="utf-8"/>
        <title>MMD Header and Footer</title>
+HTML <em>header</em>.
 </head>
 <body>
 
@@ -10,7 +11,8 @@
 
 <p>Main Body</p>
 
-<p>MultiMarkdown <em>footer</em>.</p>
+<p>MultiMarkdown <em>footer</em>.</p>HTML <em>footer</em>.
+
 
 </body>
 </html>
index a7922b3f9ce3f55bc64d0776ad08a1f394d00daa..ba539efef86813b28c25c185f7993f459d66f703 100644 (file)
@@ -1,6 +1,10 @@
 <p>Title:      MMD Header and Footer
 latex config:  article
 MMD Header:    {{header.txt}}
-MMD Footer:    {{footer.txt}}</p>
+MMD Footer:    {{footer.txt}}
+HTML Header: HTML <em>header</em>.
+HTML Footer: HTML <em>footer</em>.
+LaTeX Header: \LaTeX \emph{header}
+ODF Header: ODF header.</p>
 
 <p>Main Body</p>
index de240a355e65be1a5b4d50dea39730a402a2f760..bbc795f5a0380fe4b2536535c0dd449a738a4700 100644 (file)
@@ -1,5 +1,6 @@
 \input{mmd6-article-leader}
 \def\mytitle{MMD Header and Footer}
+\LaTeX \emph{header}
 \input{mmd6-article-begin}
 
 MultiMarkdown \emph{header}.
index a7edbe79b579a7462b6fcef8d64001523b5780ad..b04be433af472b60d9678e9fbb660b76ccac1151 100644 (file)
@@ -2,5 +2,10 @@ Title: MMD Header and Footer
 latex config:  article
 MMD Header:    {{header.txt}}
 MMD Footer:    {{footer.txt}}
+HTML Header: HTML <em>header</em>.
+HTML Footer: HTML <em>footer</em>.
+LaTeX Header: \LaTeX \emph{header}
+ODF Header: ODF header.
+
 
 Main Body