Kornel Benko [Sun, 22 Nov 2015 12:44:27 +0000 (13:44 +0100)]
Cmake export tests: Created sub-labels manuals, examples, templates, mathmacros, autotests.
To test all export use 'ctest -L export'. This is unchanged.
The following lists directories and assigned sub-label
lib/doc: manuals
lib/templates: templates
lib/examples: examples
development/mathmacro: mathmacros
autotests: autotests
Georg Baum [Sun, 22 Nov 2015 12:02:39 +0000 (13:02 +0100)]
Fix some thinkos in MSVC regex hack
The changed code is not used, but I tried to use a similar approach for
boost::regex, and found some problems:
- regex_replace and regex_search are implemented in the replacement, so they
must not be used directly
- an smatch object must be given by reference (as in the called methods),
otherwise an exception would be thrown at runtime
- the commented out regex_replace version is actually needed
This code is supposed to be deleted, but nevertheless I wanted to record here
how it had to be modified if it was actually needed.
Günter Milde [Sat, 21 Nov 2015 22:06:24 +0000 (23:06 +0100)]
Fix inputenc for some templates.
Some templates had the inputenc setting "default" (meaning
use the language default encoding, (not TeX's default which is 7-bit ASCII) but
don't load inputenc, leave handling of non-ASCII characters to the author).
This is no apparent problem as long as no non-ASCII character is used in the
document. It is very unsave, however, as any non-ASCII character used in the
document has the potential to either make compilation fail or be
misrepresented in the output.
Scott Kostyshak [Thu, 19 Nov 2015 05:19:00 +0000 (00:19 -0500)]
Clear the error list before second LaTeX run
It was possible for errors that occured in the first run to be shown
in the error list after the second run. Now, the errors are cleared
before the second run.
Although I do not have a reproducible example at hand, I imagine
this situation would occur if a rerun is required and there is still
an error after the rerun.
Scott Kostyshak [Thu, 19 Nov 2015 05:18:40 +0000 (00:18 -0500)]
Update exit code on second LaTeX run (#9765)
Before, the exit code for the first LaTeX run was used to set the
flag, which caused an error to be reported when in fact there was no
error on the second run.
tex2lyx: Add a newline at the end of comment if not at the end of a paragraph.
When importing TeX code like
%comment
TEXT
the LyX document currently becomes
[ERT %comment] TEXT
so that TEXT is now part of the comment.
Now output_comment adds a trailing newline if the token after the
comment is not a newline. Note that the newline that marks the end of
the comment has already been parsed at this point.
tex2lyx tests have been checked manually and updated.
Guillaume Munch [Wed, 11 Nov 2015 21:31:05 +0000 (21:31 +0000)]
Fix bug #9854 "Dataloss after git merge with change tracking"
A plausible scenario is that change tracking is used together with a versioning
system. In this case, parallel modifications might remove an \author line on one
side, and add another change of this author on the other side. This scenario
causes a bad merge after which the added change has no associated author. In
this case, LyX used to display a list of errors on opening and deliberately
removed the corresponding change tracking information.
* If ever a tracked change refers to an author that does not exist, then add a
dummy author. This dummy author is not saved to the file afterwards.
* Have a very clear error message on opening such a corrupt file.
Kornel Benko [Tue, 17 Nov 2015 17:22:45 +0000 (18:22 +0100)]
Cmake export tests: More tests to be inverted, suspended or made non-standard
All comments in revertedTests comes from Günter Milde
Non standard test is new. It should collect all tests
which may not work because of some missing non-standard
tex package or some exotic system font.
This is better because it implements a LRU cache. Indeed, while editing in particular, width of many different strings has to be computed. This is different from the previous situation where only width of single characters was computed and cached.
Georg Baum [Mon, 16 Nov 2015 20:51:30 +0000 (21:51 +0100)]
Fix wrong forward declaration
This popped up in cmake monolithic build once. It looks like BufferView is
included indirectly by some of the other headers (otherwise we would have seen
compile errors for other build configurations as well), bu I'll keep the
forward declaration since we don't want to depend on this indirect header
inclusion.
Georg Baum [Mon, 16 Nov 2015 20:39:03 +0000 (21:39 +0100)]
Fix a cmake monolithic build error
N_() is a preprocessor macro to mark translatable static strings. It is not a
good idea to also name a class member variable N_: It did only work in the
other build configurations because gettext.h was not included.
Uwe Stöhr [Mon, 16 Nov 2015 03:04:11 +0000 (04:04 +0100)]
installer: support texindy
texindy requires some more Perl and unfortunately the path tho the perl.exe in Windows' PATh environment variable.
The new EnvVarUpdate.nsh contains a function to modify Windows environment variables easily.
Georg Baum [Sat, 14 Nov 2015 09:25:07 +0000 (10:25 +0100)]
Fix sorting
No single translation has been changed, but pt_BR and pt_PT are now correctly
sorted. This removes the artifical diffs that running
make ../lib/layouttranslations
did produce previously.
Georg Baum [Sat, 14 Nov 2015 09:14:59 +0000 (10:14 +0100)]
Add experimental mode to save files with LyX
Thanks Scott for the idea to modify the document. This seems to work, but I am
not surer whether it is safe in all cases, so better warn if this is used.
Scott Kostyshak [Fri, 13 Nov 2015 18:14:45 +0000 (13:14 -0500)]
Update examples/templates to 2.2.0alpha1 format
Also MacOSX ReadMe files. Note that a few lib/doc files are
also "updated" because trailing spaces are removed, but their file
formats are the same because they were recently updated at 83672113.
I did "git checkout LFUNs.lyx" because this file is generated
automatically and has a special header.
Günter Milde [Thu, 12 Nov 2015 16:07:56 +0000 (17:07 +0100)]
Ensure the Greek Intro.lyx compiles with non-TeX fonts.
Prevent loading of lmodern.sty if non-TeX fonts are set and
Define DejaVu as non-TeX font.
This ensures that non-TeX fonts are used if requested (lmodern.sty set
the 8-bit version of LatinModern if compiling with LuaTeX).
Also ensure that a font with all characters is used. (LatinModern misses small
Greek characters.)
Similar actions for other manuals and examples with Greek or Cyrillic script
will solve some more export tests with non-TeX fonts.
Prevent encoding changes whenever the TeX engine is XeTeX or LuaTeX,
as XeTeX/LuaTeX use only one encoding per document:
* with useNonTeXFonts: "utf8plain",
* with XeTeX and TeX fonts: "ascii" (inputenc fails),
* with LuaTeX and TeX fonts: only one encoding accepted by luainputenc.
+1 no needless encoding switches
+1 runparams.encoding matches the correct encoding at any time
+1 less complicated code.
-1 there may still be problems with CJK (possibly impossible to
solve for Xe/LuaTeX with TeX fonts).
For LuaTeX & TeX fonts, the complete document uses the encoding
of the global document language.
Scott Kostyshak [Wed, 11 Nov 2015 23:06:07 +0000 (18:06 -0500)]
Revert "Update previews on preference change (#9507)"
The referenced commit lead to performance issues and possibly
crashes in some cases when saving preferences. Thanks to Guillaume
for discovering the issues. See #9828 for more discussion.
Georg Baum [Wed, 11 Nov 2015 21:25:18 +0000 (22:25 +0100)]
Fix \origin lines
These were fixed manually. I tried to add an option to updatedocs.py to
open and save a file with LyX, but that did not work, since
lyx -x 'command-sequence buffer-write ; lyx-quit' does not write and does
not quit.
Georg Baum [Wed, 11 Nov 2015 20:48:20 +0000 (21:48 +0100)]
Update LFUNs.lyx to current format
gen_lfuns.py does now produce the current file format, and and LFUNs.lyx was
re-created with the updated script.
There is one difference if you compare this version of LFUNs.lyx with the old
version updated by lyx2lyx: All occurences of LyX, TeX etc. in the lfun
descriptions are no longer output as logos. I do consider this as a feature,
since the old version did also output the TeX part of BibTeX as a logo, as well
as places where the names were part of some syntax, e.g. lyx::LyXRC::LyXRCTags.
Georg Baum [Wed, 11 Nov 2015 20:35:12 +0000 (21:35 +0100)]
Set \origin correctly when upgrading docs
lyx2lyx did not yet know about /systemlyxdir/ and set \origin to the path
where my git tree lives instead. This path is not usable except on my machine,
so better write something more usable instead.
This is a special command line switch of lyx2lyx, so it does not interfere
with normal usage. I did not try to deduce the systemlyxdir from lyx2lyx to
be on the safe side.
Richard Heck [Tue, 10 Nov 2015 17:39:24 +0000 (12:39 -0500)]
Fix bug #9554: When we save a file that was not originally in the current
LyX format, create a backup of the original file. We put it in the backup
directory, if one exists, otherwise in the directory the original file is
in. This is the same strategy as for normal backups. Basically, the only
diferences are: (i) what name we use and (ii) we do not over-write any
backups that may already exist.
Actually, the changed tests were used to prevent overwriting the encoding
changed in Buffer::writeLaTeX with a language-default encoding.
This is still required for XeTeX with TeX-fonts unless a proper solution is found.
Documents with more than one encoding and TeX-fonts fail with LuaTeX,
as "luainputenc" can only handle one encoding.