]> git.lyx.org Git - lyx.git/blobdiff - src/output_plaintext.C
cleanup after svn hang-up, #undef CursorShape. Should be compilable ganin now.
[lyx.git] / src / output_plaintext.C
index 3a99a8eb2aba293206d330b3ababc7ac43bdddf7..311a0058e746d4a3bd3a5fa685507385aa518c02 100644 (file)
 #include "output.h"
 #include "outputparams.h"
 #include "paragraph.h"
-#include "ParagraphList_fwd.h"
+#include "ParagraphList.h"
 #include "ParagraphParameters.h"
 
 #include "support/lstrings.h"
+#include "support/unicode.h"
 
 #include <fstream>
 
@@ -151,10 +152,10 @@ void asciiParagraph(Buffer const & buf,
 
        case 6: // Abstract
                if (runparams.linelen > 0) {
-                       os << _("Abstract") << "\n\n";
+                       os << lyx::to_utf8(_("Abstract")) << "\n\n";
                        currlinelen = 0;
                } else {
-                       string const abst = _("Abstract: ");
+                       string const abst = lyx::to_utf8(_("Abstract: "));
                        os << abst;
                        currlinelen += abst.length();
                }
@@ -163,10 +164,10 @@ void asciiParagraph(Buffer const & buf,
        case 7: // Bibliography
                if (!ref_printed) {
                        if (runparams.linelen > 0) {
-                               os << _("References") << "\n\n";
+                               os << lyx::to_utf8(_("References")) << "\n\n";
                                currlinelen = 0;
                        } else {
-                               string const refs = _("References: ");
+                               string const refs = lyx::to_utf8(_("References: "));
                                os << refs;
                                currlinelen += refs.length();
                        }
@@ -196,7 +197,7 @@ void asciiParagraph(Buffer const & buf,
        string word;
 
        for (pos_type i = 0; i < par.size(); ++i) {
-               char c = par.getUChar(buf.params(), i);
+               lyx::char_type c = par.getUChar(buf.params(), i);
                switch (c) {
                case Paragraph::META_INSET: {
                        InsetBase const * inset = par.getInset(i);
@@ -232,8 +233,9 @@ void asciiParagraph(Buffer const & buf,
                                "writeAsciiFile: NULL char in structure." << endl;
                        break;
 
-               default:
-                       word += c;
+               default: {
+                       std::vector<char> const tmp = ucs4_to_utf8(c);
+                       word.append(tmp.begin(), tmp.end());
                        if (runparams.linelen > 0 &&
                            currlinelen + word.length() > runparams.linelen)
                        {
@@ -244,6 +246,7 @@ void asciiParagraph(Buffer const & buf,
                        }
                        break;
                }
+               }
        }
        os << word;
 }