Fix bug #8587 properly, by using local language for translation.

(cherry picked from commit 3057bce3f2)
This commit is contained in:
Richard Heck 2013-03-19 11:30:09 -04:00
parent 4be96ee78a
commit 7c5caaff24
3 changed files with 6 additions and 7 deletions

View File

@ -2787,6 +2787,7 @@ docstring Paragraph::simpleLyXHTMLOnePar(Buffer const & buf,
if (inset) { if (inset) {
if (!runparams.for_toc || inset->isInToc()) { if (!runparams.for_toc || inset->isInToc()) {
OutputParams np = runparams; OutputParams np = runparams;
np.local_font = &font;
if (!inset->getLayout().htmlisblock()) if (!inset->getLayout().htmlisblock())
np.html_in_par = true; np.html_in_par = true;
retval += inset->xhtml(xs, np); retval += inset->xhtml(xs, np);

View File

@ -16,6 +16,7 @@
#include "Cursor.h" #include "Cursor.h"
#include "DispatchResult.h" #include "DispatchResult.h"
#include "InsetLabel.h" #include "InsetLabel.h"
#include "Language.h"
#include "LaTeXFeatures.h" #include "LaTeXFeatures.h"
#include "LyX.h" #include "LyX.h"
#include "OutputParams.h" #include "OutputParams.h"
@ -201,7 +202,7 @@ int InsetRef::docbook(odocstream & os, OutputParams const & runparams) const
} }
docstring InsetRef::xhtml(XHTMLStream & xs, OutputParams const &) const docstring InsetRef::xhtml(XHTMLStream & xs, OutputParams const & op) const
{ {
docstring const & ref = getParam("reference"); docstring const & ref = getParam("reference");
InsetLabel const * il = buffer().insetLabel(ref); InsetLabel const * il = buffer().insetLabel(ref);
@ -218,9 +219,8 @@ docstring InsetRef::xhtml(XHTMLStream & xs, OutputParams const &) const
display_string = value; display_string = value;
else if (cmd == "pageref" || cmd == "vpageref") else if (cmd == "pageref" || cmd == "vpageref")
// normally would be "on page #", but we have no pages. // normally would be "on page #", but we have no pages.
// FIXME this is wrong, as it should be the current language, display_string = translateIfPossible(from_ascii("elsewhere"),
// but it is better than _(), which is what we had before. op.local_font->language()->lang());
display_string = buffer().B_("elsewhere");
else if (cmd == "eqref") else if (cmd == "eqref")
display_string = '(' + value + ')'; display_string = '(' + value + ')';
else if (cmd == "formatted" else if (cmd == "formatted"

View File

@ -116,9 +116,7 @@ What's new
- Reset counters properly when outputting included XHTML files (bug 8598). - Reset counters properly when outputting included XHTML files (bug 8598).
- Translate "elsewhere" to the Buffer language when outputting XHTML. - Translate "elsewhere" when outputting XHTML (bug 8587).
This is not quite right, but it is better than translating it to the
UI language (partial fix for #8587).
* USER INTERFACE * USER INTERFACE