From cce9adc1859f0134800c2405200f1467c8564b13 Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Sun, 11 Aug 2019 08:15:57 +0200 Subject: [PATCH] Force LTR for numeric citations Fixes: #3005 --- src/insets/InsetCitation.cpp | 12 ++++++++++++ src/insets/InsetCitation.h | 2 ++ 2 files changed, 14 insertions(+) diff --git a/src/insets/InsetCitation.cpp b/src/insets/InsetCitation.cpp index 401d0142b5..a6a2738a9a 100644 --- a/src/insets/InsetCitation.cpp +++ b/src/insets/InsetCitation.cpp @@ -445,6 +445,18 @@ docstring InsetCitation::basicLabel(bool for_xhtml) const return '[' + label + ']'; } + +bool InsetCitation::forceLTR(OutputParams const & rp) const +{ + // We have to force LTR for numeric references + // [= plain BibTeX, numeric natbib and biblatex]. + // Except for XeTeX/bidi . See #3005. + if (rp.useBidiPackage()) + return false; + return (buffer().masterParams().citeEngine() == "basic" + || buffer().masterParams().citeEngineType() == ENGINE_TYPE_NUMERICAL); +} + docstring InsetCitation::screenLabel() const { return cache.screen_label; diff --git a/src/insets/InsetCitation.h b/src/insets/InsetCitation.h index 7c8231c538..d94aefe4e0 100644 --- a/src/insets/InsetCitation.h +++ b/src/insets/InsetCitation.h @@ -70,6 +70,8 @@ public: UpdateType utype, TocBackend & backend) const; /// std::string contextMenuName() const; + /// + bool forceLTR(OutputParams const &) const; //@} /// \name Static public methods obligated for InsetCommand derived classes -- 2.39.2