From: Juergen Spitzmueller Date: Sun, 11 Aug 2019 06:15:57 +0000 (+0200) Subject: Force LTR for numeric citations X-Git-Tag: lyx-2.4.0dev-acb2ca7b~1634 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=cce9adc1859f0134800c2405200f1467c8564b13;p=features.git Force LTR for numeric citations Fixes: #3005 --- 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