]> git.lyx.org Git - features.git/commitdiff
Do the translation the right way.
authorRichard Heck <rgheck@comcast.net>
Mon, 29 Mar 2010 20:21:30 +0000 (20:21 +0000)
committerRichard Heck <rgheck@comcast.net>
Mon, 29 Mar 2010 20:21:30 +0000 (20:21 +0000)
By the way, has anyone noticed that _() returns empty if you call it
on a string we don't know how to translate? Might it be better if it
returned the original string?

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

src/BiblioInfo.cpp
src/BiblioInfo.h

index 4ee075e596f7e99ec6ca1066951d980ca1a66418..acff8dc9711d3138785aacfc0ac09144cb1515ca 100644 (file)
@@ -18,6 +18,7 @@
 #include "buffer_funcs.h"
 #include "Encoding.h"
 #include "InsetIterator.h"
+#include "Language.h"
 #include "Paragraph.h"
 #include "TextClass.h"
 #include "TocBackend.h"
@@ -433,7 +434,9 @@ docstring BibTeXInfo::expandFormat(string const & format,
                                        // a translatable bit
                                        string const val = 
                                                buf.params().documentClass().getCiteMacro(key);
-                                       ret += _(val);
+                                       docstring const trans = 
+                                               translateIfPossible(from_utf8(val), buf.params().language->code());
+                                       ret += trans;
                                } else {
                                        docstring const val = getValueForKey(key, xref);
                                        ret += val;
index 05b61f64cbbceebabdf9048fbf67077e33333614..33a7625bd3ccf96d08d20d41f257fe2132782a20 100644 (file)
@@ -117,6 +117,10 @@ private:
        /// material intended only for rich text (HTML) output should be 
        /// wrapped in "{!" and "!}". it will be removed if richtext is
        /// false.
+       /// a simple macro facility is also available. keys that look like
+       /// "%!key%" are substituted with their definition.
+       /// moreover, keys that look like "%_key%" are treated as translatable
+       /// so that things like "pp." and "vol." can be translated.
        docstring expandFormat(std::string const & fmt,
                        BibTeXInfo const * const xref, 
                        Buffer const & buf, bool richtext) const;