int InsetSpecialChar::plaintext(odocstringstream & os, OutputParams const &, size_t) const { switch (kind_) { case HYPHENATION: return 0; case LIGATURE_BREAK: os.put(0x200c); return 1; case END_OF_SENTENCE: os << '.'; return 1; case LDOTS: os << "..."; return 3; case MENU_SEPARATOR: os << "->"; return 2; case SLASH: os << '/'; return 1; case NOBREAKDASH: os.put(0x2011); return 1; } return 0; }
int InsetSpecialChar::plaintext(odocstringstream & os, OutputParams const &, size_t) const { switch (kind_) { case HYPHENATION: return 0; case ALLOWBREAK: // U+200B ZERO WIDTH SPACE (ZWSP) os.put(0x200b); return 1; case LIGATURE_BREAK: // U+200C ZERO WIDTH NON-JOINER os.put(0x200c); return 1; case END_OF_SENTENCE: os << '.'; return 1; case LDOTS: // … U+2026 HORIZONTAL ELLIPSIS os.put(0x2026); return 1; case MENU_SEPARATOR: os << "->"; return 2; case SLASH: os << '/'; return 1; case NOBREAKDASH: // ‑ U+2011 NON-BREAKING HYPHEN os.put(0x2011); return 1; case PHRASE_LYX: os << "LyX"; return 3; case PHRASE_TEX: os << "TeX"; return 3; case PHRASE_LATEX2E: os << "LaTeX2"; // ε U+03B5 GREEK SMALL LETTER EPSILON os.put(0x03b5); return 7; case PHRASE_LATEX: os << "LaTeX"; return 5; } return 0; }
int InsetERT::plaintext(odocstringstream & os, OutputParams const & rp, size_t max_length) const { if (!rp.inIndexEntry) // do not output TeX code return 0; ParagraphList::const_iterator par = paragraphs().begin(); ParagraphList::const_iterator end = paragraphs().end(); while (par != end && os.str().size() <= max_length) { pos_type siz = par->size(); for (pos_type i = 0; i < siz; ++i) { char_type const c = par->getChar(i); // output the active characters switch (c) { case '|': case '!': case '@': os.put(c); break; default: break; } } ++par; } return 0; }