From 73345c7dc06a6488f34d4a76906a62171a519278 Mon Sep 17 00:00:00 2001
From: Aleksey Veresov ");
+ opened_block = header_6;
} else if (piece.level == 2) {
- exporter.Put("h5>");
+ exporter.Put("
");
+ opened_block = header_5;
} else if (piece.level == 3) {
- exporter.Put("h4>");
+ exporter.Put("
");
+ opened_block = header_4;
} else if (piece.level == 4) {
- exporter.Put("h3>");
+ exporter.Put("
");
+ opened_block = header_3;
} else if (piece.level == 5) {
- exporter.Put("h2>");
+ exporter.Put("
");
+ opened_block = header_2;
} else {
- exporter.Put("h1>");
+ exporter.Put("
");
+ opened_block = header_1;
}
}
void TexoProducerHTML::Put(const TexoParagraph &piece)
{
- if (piece.closing) {
- exporter.Put("
"); - } + Close(); + opened_block = paragraph; + exporter.Put("
"); } void TexoProducerHTML::Put(const TexoCode &piece) { - if (piece.closing) { - exporter.Put(""); - } else { - exporter.Put("
");
- }
+ Close();
+ opened_block = code;
+ exporter.Put("");
}
void TexoProducerHTML::Put(const TexoQuote &piece)
{
- if (piece.closing) {
- exporter.Put("");
- } else {
- exporter.Put("");
- }
+ Close();
+ opened_block = quote;
+ exporter.Put("
");
}
void TexoProducerHTML::Put(const TexoMono &piece)
{
- if (piece.closing) {
+ static bool closing = false;
+ if (closing) {
exporter.Put("");
} else {
exporter.Put("");
}
+ closing = !closing;
}
void TexoProducerHTML::Put(const TexoBold &piece)
{
- if (piece.closing) {
+ static bool closing = false;
+ if (closing) {
exporter.Put("");
} else {
exporter.Put("");
}
+ closing = !closing;
}
void TexoProducerHTML::Put(const TexoItalic &piece)
{
- if (piece.closing) {
+ static bool closing = false;
+ if (closing) {
exporter.Put("");
} else {
exporter.Put("");
}
+ closing = !closing;
}
void TexoProducerHTML::Put(const TexoUnderline &piece)
{
- if (piece.closing) {
+ static bool closing = false;
+ if (closing) {
exporter.Put("");
} else {
exporter.Put("");
}
+ closing = !closing;
}
void TexoProducerHTML::Put(const TexoStrike &piece)
{
- if (piece.closing) {
+ static bool closing = false;
+ if (closing) {
exporter.Put("");
} else {
exporter.Put("");
}
+ closing = !closing;
}
void TexoProducerHTML::Put(const TexoImage &piece)
@@ -154,14 +167,25 @@ void TexoProducerHTML::Put(const TexoLink &piece)
}
}
-void TexoProducerHTML::Put(const TexoLineBreak &piece)
+void TexoProducerHTML::Put(const TexoHorizontalRule &piece)
{
- exporter.Put("
");
+ exporter.Put("
");
}
-void TexoProducerHTML::Put(const TexoHorizontalRule &piece)
+void TexoProducerHTML::Close()
{
- exporter.Put("
");
+ switch (opened_block) {
+ case none: break;
+ case header_1: exporter.Put(""); break;
+ case header_2: exporter.Put(""); break;
+ case header_3: exporter.Put(""); break;
+ case header_4: exporter.Put(""); break;
+ case header_5: exporter.Put(""); break;
+ case header_6: exporter.Put(""); break;
+ case paragraph: exporter.Put("
"); break;
+ case quote: exporter.Put("
"); break;
+ case code: exporter.Put("
"); break;
+ }
}
--
cgit v1.2.3