Günter Milde [Tue, 5 Feb 2019 10:31:27 +0000 (11:31 +0100)]
Check for CJK instead of CJKutf8.
The specific test was introduced in ef6be5f4 because
CJKutf8 was relatively new (cf. lyx.org/trac/ticket/5386).
10 years on, CJKutf8 is an established part of the CJK bundle
and we can skip the special test for CJKutf8 to make the logic
considerabely simpler to read, maintain and debug.
Günter Milde [Sun, 3 Feb 2019 21:04:17 +0000 (22:04 +0100)]
Prevent fallback to "utf8" if "inputenc" package is not loaded.
Since April 2018, pdflatex falls back to input-encoding utf8 if
it does not detect an input encoding setting.
https://www.latex-project.org/news/latex2e-news/ltnews28.pdf
This leads to failure with CJK legacy encodings and may not
be what you want if selecting "Language Default (no inputenc)"
as document input-encoding.
Kornel Benko [Tue, 5 Feb 2019 07:04:47 +0000 (08:04 +0100)]
Findadv: Handle \lettrine{} in initials.module
The problem here is, that selecting any subset of a \lettrine{}
line always creates an initials header. That makes it impossible
to our search engine to find strings, because the regex does not
contain that info. So we have to discard the leading \lettrine part
completely.
We place now a marker (\endarguments) to determine that removable
part.
Günter Milde [Wed, 30 Jan 2019 14:14:45 +0000 (15:14 +0100)]
Do not use \inputencoding when the buffer input encoding is one of the "legacy" CJK encodings.
If Document>Settings>Language>Encoding is set to any value except "auto" or "default", we
expect the whole document to use this encoding. Wiht encodings from the CJK package, this means
one big "CJK" environment and no encoding switches.
Characters that are not handled by the CJK package need to be "forced" in lib/unicodesymbols.
This is completed for "euc-cn", the others will follow.
Additionally, correct the cursor by an offset equal to the variation of paragraph size : if change tracking is on, deleting a space may mean that it is just marked as deleted.
Kornel Benko [Tue, 29 Jan 2019 12:21:05 +0000 (13:21 +0100)]
Amend a25b9702, lyx2lyx: Corrected handling of system-font-specs
In the lines specifying the font, e.g.
\font_typewriter "DejaVuSansMono" "DejaVu Sans Mono"
the system font specs may contain words separated by spaces
Günter Milde [Thu, 24 Jan 2019 13:40:19 +0000 (14:40 +0100)]
Fix second part of #5386.
A \clearpage command issued right before \end{CJK} is recommended by the
package author to prevent any un-processed CJK chars outside the
\begin{CJK} and \end{CJK} scope. Otherwise, TOC, header, footer,
and may contain CJK chars but get processed outside the CJK environment scope.
Tha new dedicated export test fails without the fix.
Otherwise, we will ask about it again next time, when the file
may have changed. Also, if we crash again, we'll over-write that
file, which we may not want to do.
Günter Milde [Thu, 17 Jan 2019 23:20:19 +0000 (00:20 +0100)]
Improve a warning in lyx2lyx.
If get_containing_layout() finds a layout without name,
it will return an empty string as layoutname.
Calling functions can thus differentiate between missing
\begin_layout and missing layoutname and give a more specific
response or warning.
Scott Kostyshak [Wed, 16 Jan 2019 23:30:25 +0000 (18:30 -0500)]
Fix lyx2lyx export of long tables
For some .lyx files with long tables, this fix reduces the
differences in LaTeX export of master, compared to LaTeX export of
the lyx2lyx exported file. Further, this export fixes the lyx2lyx
roundtrip convergence for these cases. For discussion, see:
This is a follow-up to 714b731e. This fixes the issue when the cursor
is in front of a space
abc| def
and one inserts another space (to start a word). DEPM would eat one
space and produce
abc |def
instead of
abc | def
Additionally, fix the same_par boolean, wheich did not take the cell
index into account.
Scott Kostyshak [Sun, 13 Jan 2019 19:18:25 +0000 (14:18 -0500)]
ctests: ignore latex8 LyX 2.2.x and 2.3.x tests
The cls is obsolete, so all PDF exports are disabled. We keep the
1.6.x and 2.1.x tests because those only check roundtrip
convergence, and do not export to PDF.
The PATH prefix modified through the GUI was set without
replacing embedded environment variables. This might have
caused problems on Windows with external python installations.
When several lines of text are in the same variable-width tabular
cell, it is not possible to align properly the rows until the cell
width is known.
Therefore a parameter is added to redoParagraph to skip this
computation, so that it can be done later in TextMetrics::metrics.
Other calls to redoParagraph in the code are not affected. It is not
clear at this point whether they may create artefacts.
computeRowMetrics has been renamed to setRowAlignment to better
reflect its use.
Scott Kostyshak [Thu, 10 Jan 2019 00:00:08 +0000 (19:00 -0500)]
ctests: move IEEEtran-Journal_lyx16 to inverted
It used to give an endless loop, so we "ignored" it (did not run the
test). Now it gives a lyx2lyx warning, which is reported at #11455,
so it is appropriate to invert the test.
Günter Milde [Wed, 9 Jan 2019 13:12:37 +0000 (14:12 +0100)]
unicodesymbols: support for LOW ASTERISK, use textcomp for (non-combining) Breve and Caron
The textcomp Unicode support file "ts1enc.dfu" defines 0x204E Low Asterisk
as \textasteriskcentered. LyX should follow suit.
The ASTERISK OPERATOR (correctly) maps to the same macro,
the "deprecated" tag marks the upstream mapping as preferred choice.
Günter Milde [Wed, 9 Jan 2019 07:59:24 +0000 (08:59 +0100)]
Fix Ticket #9904 ("strange dots" with input encoding iso8859-7).
Added "force=iso8859-7" for some characters:
The iso8859-7.def file for the Greek 8-bit input encoding
used \textbullet as placeholder for non-defined characters.
This is fixed in v1.7 2019/01/08.
Once the fixed version is in common use, all "force=iso8859-7"
tags can be removed.
Günter Milde [Tue, 8 Jan 2019 09:52:20 +0000 (10:52 +0100)]
Fix handling of Thai tis620-0 input encoding.
The Thai tis620-0 input encoding is supported via the inputenc "plug in"
(data) file tis620.def from https://ctan.org/pkg/babel-thai.
We can handle it like the other contributed input encodings, e.g.,
Greek (ISO 8859-7) and the several Cyrillic encodings from
http://www.ctan.org/pkg/latex-cyrillic.
Under TeXLive 2018, the input encoding defaults to utf8, if there is no call to
inputenc. The added test file fails without the patch but compiles fine, if the
file "tis620.def" is present in the TEXPATH.