commit e665715fc488c31476facfab6a8fcf6f7b7a3528
Author: Günter Milde <[email protected]>
Date: Wed Feb 27 14:01:53 2019 +0100
Don't switch encodings when a document wide encoding is specified.
Remove special code for CJK that is no longer required after
we use CJKutf8 document-wide with inputenc "utf8-cjk"
(and "utf8" for languages requiring CJK) (since 7bbf333fa100).
CJK characters can no longer be used with a document-wide 8-bit encoding.
(Hint: Use utf8-cjk or one of the CJK legacy encodings if your document
contains CJK characters.)
---
src/output_latex.cpp | 16 ++++------------
1 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/src/output_latex.cpp b/src/output_latex.cpp
index 8beb096..07007cc 100644
--- a/src/output_latex.cpp
+++ b/src/output_latex.cpp
@@ -1418,7 +1418,7 @@ void latexParagraphs(Buffer const & buf,
&& bparams.language->encoding()->package() ==
Encoding::CJK)
// FIXME: should test if any language requires
CJK
// && LaTeXFeatures::mustProvide("CJK"))
- // error: cannot call member function ‘bool
lyx::LaTeXFeatures::mustProvide(const string&) const’ without object
+ // error: cannot call member function ‘bool
lyx::LaTeXFeatures::mustProvide(const string&) const’ without object
)) {
docstring const cjkenc = bparams.encoding().iconvName() ==
"UTF-8"
?
from_ascii("UTF8") : from_ascii(bparams.encoding().latexName());
@@ -1611,14 +1611,7 @@ pair<bool, int> switchEncoding(odocstream & os,
BufferParams const & bparams,
Encoding const & oldEnc = *runparams.encoding;
bool moving_arg = runparams.moving_arg;
- // If we switch from/to CJK, we need to switch anyway, despite custom
inputenc,
- // except if we use CJKutf8 or explicitely set inputenc to a CJK
encoding
- bool const from_to_cjk =
- ((oldEnc.package() == Encoding::CJK && newEnc.package() !=
Encoding::CJK)
- || (oldEnc.package() != Encoding::CJK && newEnc.package() ==
Encoding::CJK))
- && bparams.encoding().iconvName() != "UTF8"
- && bparams.encoding().package() != Encoding::CJK;
- if (!force && !from_to_cjk
+ if (!force
&& ((bparams.inputenc != "auto" && bparams.inputenc != "default")
|| moving_arg))
return make_pair(false, 0);
@@ -1692,9 +1685,8 @@ pair<bool, int> switchEncoding(odocstream & os,
BufferParams const & bparams,
os << "\\egroup";
count += 7;
}
- docstring const cjkenc =
(bparams.encoding().iconvName() == "UTF-8"
- ?
from_ascii("UTF8") : from_ascii(newEnc.latexName()));
- os << "\\begin{CJK}{" << cjkenc << "}{"
+ os << "\\begin{CJK}{"
+ << from_ascii(newEnc.latexName()) << "}{"
<< from_ascii(bparams.fonts_cjk) << "}";
state->open_encoding_ = CJK;
return make_pair(true, count + 15);