]> git.lyx.org Git - features.git/commitdiff
Fix bug #7998 and related issues:
authorGeorg Baum <georg.baum@post.rwth-aachen.de>
Tue, 31 Jan 2012 20:49:49 +0000 (20:49 +0000)
committerGeorg Baum <georg.baum@post.rwth-aachen.de>
Tue, 31 Jan 2012 20:49:49 +0000 (20:49 +0000)
- 0x200c is equivalent to \textcompwordmark
- 0x2011 is equivalent to \nobreakdash-
- 0x2009 is a breakable thin space (the old definition was non-breakable)
- 0x202f is a non-breakable thin space
- add spaces 0x2007, 0x2008, 0x200a and 0x200b

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40694 a592a061-630c-0410-9148-cb99ea01b6c8

lib/unicodesymbols
src/insets/InsetSpecialChar.cpp

index 01cf173f4ccb8f342f309caa5a39b65ba1b0ab65..06f9f2146a6d6a5aca110e18b7fb918e4a810b65 100644 (file)
 0x2004 "\\;"                      "" "" "\\;" "" # THREE-PER-EM SPACE
 0x2005 "\\:"                      "" "" "\\:" "" # FOUR-PER-EM SPACE
 0x2006 "\\,"                      "" "" "\\," "" # SIX-PER-EM SPACE
-#0x2007 ""                         "" "" "" "" # FIGURE SPACE
-#0x2008 ""                         "" "" "" "" # PUNCTUATION SPACE
-0x2009 "\\,"                      "" "" "\\," "" # THIN SPACE
-#0x200a ""                         "" "" "" "" # HAIR SPACE
-#0x200b ""                         "" "" "" "" # ZERO WIDTH SPACE
-#0x200c ""                         "" "" "" "" # ZERO WIDTH NON-JOINER
+0x2007 "\\LyXFigureSpace" "\\newcommand*\\LyXFigureSpace{\\hphantom{0}}" "" "\\LyXFigureSpace" "\\newcommand*\\LyXFigureSpace{\\hphantom{0}}" # FIGURE SPACE
+0x2008 "\\LyXPunctSpace" "\\newcommand*\\LyXPunctSpace{\\hphantom{,}}" "" "\\LyXPunctSpace" "\\newcommand*\\LyXPunctSpace{\\hphantom{,}}" # PUNCTUATION SPACE
+0x2009 "\\LyXThinSpace" "\\newcommand*\\LyXThinSpace{\\,\\hspace{0pt}}" "" "\\LyXThinSpace" "\\newcommand*\\LyXThinSpace{\\,\\hspace{0pt}}" # THIN SPACE
+0x200a "\\LyXHairSpace" "\\newcommand*\\LyXHairSpace{\\hspace{1pt}}" "" "\\LyXHairSpace" "\\newcommand*\\LyXHairSpace{\\hspace{1pt}}" # HAIR SPACE
+0x200b "\\LyXZeroWidthSpace" "\\newcommand*\\LyXZeroWidthSpace{\\hspace{0pt}}" "" "\\LyXZeroWidthSpace" "\\newcommand*\\LyXZeroWidthSpace{\\hspace{0pt}}" # ZERO WIDTH SPACE
+0x200c "\\textcompwordmark"       "" "" "" "" # ZERO WIDTH NON-JOINER
 #0x200d ""                         "" "" "" "" # ZERO WIDTH JOINER
 #0x200e ""                         "" "" "" "" # LEFT-TO-RIGHT MARK
 #0x200f ""                         "" "" "" "" # RIGHT-TO-LEFT MARK
 0x2010 "-"                        "" "" "" "" # HYPHEN # identic in LaTeX to FIGURE DASH
-#0x2011 ""                         "" "" "" "" # NON-BREAKING HYPHEN
+0x2011 "\\nobreakdash-"           "amsmath" "" "" "" # NON-BREAKING HYPHEN
 0x2012 "-"                        "" "" # FIGURE DASH
 0x2013 "\\textendash"             "" "" # EN DASH
 0x2014 "\\textemdash"             "" "" # EM DASH
 0x201c "\\textquotedblleft"       "" "" # LEFT DOUBLE QUOTATION MARK
 0x201d "\\textquotedblright"      "" "" # RIGHT DOUBLE QUOTATION MARK
 0x201e "\\quotedblbase"           "" "" # DOUBLE LOW-9 QUOTATION MARK
-#0x201f ""                         "" "" # DOUBLE LOW-REVERSED-9 QUOTATION MARK
+#0x201f ""                         "" "" # DOUBLE HIGH-REVERSED-9 QUOTATION MARK
 0x2020 "\\dag"                    "" "" "\\dagger" "" # DAGGER
 0x2021 "\\ddag"                   "" "" "\\ddagger" "" # DOUBLE DAGGER
 0x2022 "\\textbullet"             "textcomp" "" # BULLET
 #0x202c ""                         "" "" "" "" # POP DIRECTIONAL FORMATTING
 #0x202d ""                         "" "" "" "" # LEFT-TO-RIGHT OVERRIDE
 #0x202e ""                         "" "" "" "" # RIGHT-TO-LEFT OVERRIDE
-#0x202f ""                         "" "" "" "" # NARROW NO-BREAK SPACE
+0x202f "\\,"                      "" "" "\\," "" # NARROW NO-BREAK SPACE
 0x2030 "\\textperthousand"        "textcomp" "" # PER MILLE SIGN
 0x2031 "\\textpertenthousand"     "textcomp" "" # PER TEN THOUSAND SIGN
 0x2032 "\\textasciiacute"         "textcomp" "" "\\prime" "" # PRIME
index 1fe6840df59f20cbe69af8a86b51dbf71d2dc84b..9e7346ffbf6c307fb2064a991438ab294ea8338a 100644 (file)
@@ -243,8 +243,10 @@ int InsetSpecialChar::plaintext(odocstream & os, OutputParams const &) const
 {
        switch (kind_) {
        case HYPHENATION:
-       case LIGATURE_BREAK:
                return 0;
+       case LIGATURE_BREAK:
+               os.put(0x200c);
+               return 1;
        case END_OF_SENTENCE:
                os << '.';
                return 1;
@@ -258,7 +260,7 @@ int InsetSpecialChar::plaintext(odocstream & os, OutputParams const &) const
                os << '/';
                return 1;
        case NOBREAKDASH:
-               os << '-';
+               os.put(0x2011);
                return 1;
        }
        return 0;
@@ -295,7 +297,9 @@ docstring InsetSpecialChar::xhtml(XHTMLStream & xs, OutputParams const &) const
 {
        switch (kind_) {
        case HYPHENATION:
+               break;
        case LIGATURE_BREAK:
+               xs << XHTMLStream::ESCAPE_NONE << "&#8204;";
                break;
        case END_OF_SENTENCE:
                xs << '.';
@@ -310,7 +314,7 @@ docstring InsetSpecialChar::xhtml(XHTMLStream & xs, OutputParams const &) const
                xs << XHTMLStream::ESCAPE_NONE << "&frasl;";
                break;
        case NOBREAKDASH:
-               xs << '-';
+               xs << XHTMLStream::ESCAPE_NONE << "&#8209;";
                break;
        }
        return docstring();