diff options
author | Aleksey Veresov <aleksey@veresov.pro> | 2019-10-18 12:37:46 +0300 |
---|---|---|
committer | Aleksey Veresov <aleksey@veresov.pro> | 2019-10-18 12:37:46 +0300 |
commit | 9a23fd146be4ba64b0cb720993bdc73a514fecf2 (patch) | |
tree | 9c8d9554d37f7ab25087e1468c012fb41a6e39ee /src/plain.cpp | |
parent | 7b09f265c1deb12c9e6778c4d92473d66fc5406b (diff) | |
download | texo-9a23fd146be4ba64b0cb720993bdc73a514fecf2.tar texo-9a23fd146be4ba64b0cb720993bdc73a514fecf2.tar.xz texo-9a23fd146be4ba64b0cb720993bdc73a514fecf2.zip |
.
Diffstat (limited to 'src/plain.cpp')
-rw-r--r-- | src/plain.cpp | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/plain.cpp b/src/plain.cpp index db5c63b..b510d58 100644 --- a/src/plain.cpp +++ b/src/plain.cpp @@ -1,42 +1 @@ #include "plain.hpp" - - -TexoPlainImporter::TexoPlainImporter(TexoProducer &producer): - TexoImporter(producer), first(true), space(0), newline(false) -{} - -void TexoPlainImporter::Put(const char c) -{ - if (first) { - first = false; - producer.Put(Texo(Texo::paragraph_begin)); - } - if (c == ' ') { - ++space; - } else if (c == '\n') { - if (newline) { - newline = false; - producer.Put(Texo(Texo::paragraph_end)); - producer.Put(Texo(Texo::paragraph_begin)); - } else { - newline = true; - } - } else if (!c) { - producer.Put(Texo(Texo::paragraph_end)); - } else { - if (newline) { - newline = false; - if (space) { - space = 0; - producer.Put(Texo(Texo::newline)); - } else { - producer.Put(Texo(' ')); - } - } - while (space) { - producer.Put(Texo(' ')); - --space; - } - producer.Put(Texo(c)); - } -} |