]> git.lyx.org Git - lyx.git/blobdiff - src/BiblioInfo.cpp
Whitespace.
[lyx.git] / src / BiblioInfo.cpp
index c68e18ae4c2d00d871428b24427dc8543b9d9e90..66fcd39fe1bb1952a1fd62ee241662f1451fbea5 100644 (file)
@@ -129,10 +129,14 @@ docstring convertLaTeXCommands(docstring const & str)
                        scanning_cmd = false;
                }
 
-               // was the last character a \? If so, then this is something like: \\,
-               // or \$, so we'll just output it. That's probably not always right...
+               // was the last character a \? If so, then this is something like:
+               // \\ or \$, so we'll just output it. That's probably not always right...
                if (escaped) {
-                       ret += ch;
+                       // exception: output \, as THIN SPACE
+                       if (ch == ',')
+                               ret.push_back(0x2009);
+                       else
+                               ret += ch;
                        val = val.substr(1);
                        escaped = false;
                        continue;
@@ -170,7 +174,8 @@ docstring convertLaTeXCommands(docstring const & str)
                        val.insert(2, from_ascii("{"));
                }
                docstring rem;
-               docstring const cnvtd = Encodings::fromLaTeXCommand(val, rem);
+               docstring const cnvtd = Encodings::fromLaTeXCommand(val, rem,
+                                                       Encodings::TEXT_CMD);
                if (!cnvtd.empty()) {
                        // it did, so we'll take that bit and proceed with what's left
                        ret += cnvtd;
@@ -217,9 +222,9 @@ docstring const BibTeXInfo::getAbbreviatedAuthor() const
                return authors;
        }
 
-       docstring author = operator[]("author");
+       docstring author = convertLaTeXCommands(operator[]("author"));
        if (author.empty()) {
-               author = operator[]("editor");
+               author = convertLaTeXCommands(operator[]("editor"));
                if (author.empty())
                        return bib_key_;
        }
@@ -669,13 +674,13 @@ string citationStyleToString(const CitationStyle & s)
        string cite = citeCommands[s.style];
        if (s.full) {
                CiteStyle const * last = citeStylesFull + nCiteStylesFull;
-               if (find(citeStylesFull, last, s.style) != last)
+               if (std::find(citeStylesFull, last, s.style) != last)
                        cite += '*';
        }
 
        if (s.forceUpperCase) {
                CiteStyle const * last = citeStylesUCase + nCiteStylesUCase;
-               if (find(citeStylesUCase, last, s.style) != last)
+               if (std::find(citeStylesUCase, last, s.style) != last)
                        cite[0] = 'C';
        }