Works with system-fonts due to font substitution in the test-script.
TODO: set system fonts that work in the lyx source(s) to allow compilation
"by hand".
testcases_speed_lyx21 added to suspiciousTests
Handling unknown body token: `\begin_manifest'at line ...
Literate_lyx16 and noweb2lyx_lyx16 added to ignoredTests
Plenty of warnings (~ 390)
New sublabels LyXBug, ERT.
Renamed sublabel TeXLimit to TeXissue.
More sorting and unification of regular expressions.
Removing double entries.
Fixes for some expressions (eu_UserGuide_pdf, examples/ja/(knitr|lilypond|sweave))
Since the stop condition is that the last two consecutive created
files are identical, we do not need to check the last file.
Also checking for load of the created files is not needed, because
exporting the previous file implicitly loads too.
Exporting to some previous lyx format:
Inside the loop
Stop at export with errors/warnings
Stop if exported file not loadable
Stop if exported file identical to previous exported file (OK case)
This is done through creating MD5SUM
We test here, if any \end_{somethig} matches \begin_{something}.
Exeptions are \end_index and \end_branch ATM, they should
match \index and \branch respectively.
Also added new testfile.
Remove patterns matching tests now ignored (CJK/Korean, latex8).
Move patterns matching documents in the attic under new sublabel.
Add more verbose comments.
Comment by Günter Milde:
Actually, *all* Spanish manuals either fail or have wrong output with
Unicode TeX engines and 8-bit fonts. The reason is known: a bug in Babel
that uses utf8 strings whenever Xe- or LuaTeX is detected.
Always-Babel now set in the example document.
Adapted the autotest categorization:
* fails for some developers (why?)
* wrong output with pdflatex/LuaTeX and DVI (missing landscape slides).
he.po in branch contains a number of translations where the translation is
identical with the original text (e.g. for encoding names) which look suspicios
to me. Therefore I did not want to merge these and leave the decision to the
translator. No information is lost, since these "translations" can easily be
recreated from the original texts by copy-paste.
Previously all labels got the depth '7' while processing 'suspiciousTestss'.
The depth is used to sort how our labels are used to build a test-label.
Say a test gets label a, b, and c, with depth 3, 8 and 2.
The constructed test-label will be "b🅰️c"
For new (to be implemented) 'reason-labels' it is more convenient to assign them higher values.
suspiciousTests: Remove Tutorial from the regex
suspendedTests: Explicit list of languages needed
ignoredTests: Language-string is separated from other strings only by '/'. '|', '_', '(' and ')'
This is useful if you know that the translation of a particular language has
not been updated at all in master, but the stable version has been worked on.
Some characters (like ") are escaped in .po files. These are handled correctly
by polib, but the self written parser did not yet take them into account.
We need to remove the #~ prefix of each line, since it is re-added after
wrapping, and because otherwise the comparison with entries from polib
does not work.
Now it is possible to specify the target directory, and the command line syntax
follows the standard rules: It uses options for optional arguments, and one
positional argument for the single required argument.
LyXMacros.cmake: Overseen the macro 'setmarkedtestlabel()' which added it automatically
if the test was to invert the test result.
ExportTests.cmake: Correct label handling
Surprisingly I could not find a tool that merges updated translations into a
.po file in a way that
a) merges only missing translations (does not overwrite existing ones)
b) produces a minimal diff so that there is a chance to manually check the result
Therefore I wrote my own. You can use it for a single language
python development/tools/mergepo.py ../lyx-2.1/po fr
or for all languages:
python development/tools/mergepo.py ../lyx-2.1/po
The python code is not the most elegant one, but it works. What is missing is
a command line switch to merge changed translations as well. This is useful
for languages that have not yet received any translation update in the
development branch, only in the stable branch: In this case we know that
translations that are not identical in both branches should be overtaken from
the stabkle one.
This works around a limitation of the test machinery, which never switches
TeX fonts on for format that need that, it only switches TeX fonts off for
formats needing it.