Commit Graph

3680 Commits

Author SHA1 Message Date
Kornel Benko
597dcbb5be Cmake export tests: Use pre-compiled regular expressions
The expressions are used for determining the used external files
in a lyx-source. Using pre-compiled expr makes it more readable.
2017-11-17 17:53:52 +01:00
Uwe Stöhr
fab94e0e5a Win installer: dvips is necessary for instant preview
dvips is no longer installed by default in MiKTeX
2017-11-13 21:23:32 +01:00
Uwe Stöhr
9fe1e0f8df Win installer: disable a feature
checking that the Win installer is already currently running doesn't work with the current Unicode compatible NSIS plugin
2017-11-13 01:19:45 +01:00
Uwe Stöhr
241bf7d58b Win installer: update to Qt 5.9
- also remove Qt5XML in the installer as it appears not to be used by LyX
- update to latest MikTeX installer which resolves some problems
- add a note that pdfview is not yet ready for full Unicode support
2017-11-11 18:34:25 +01:00
Jean-Marc Lasgouttes
9e2da4a3ea Remove row crc computation
This computation did not make sense anymore since we began to put the
contents in the Row object. The fact that it worked was a coincidence.

Instead, we set rows as changed() on creation and reset that once they
have been drawn. This will allow in the future for a finer definition
of what to redraw or not.

Also update the PAINTING_ANALYSIS document
2017-11-11 13:24:08 +01:00
Uwe Stöhr
d06ef7469e Win installer: make it a real Unicode program 2017-11-07 02:11:50 +01:00
Uwe Stöhr
b3ecdf74d0 Win installer: translate 2 installer sections 2017-11-05 22:37:44 +01:00
Uwe Stöhr
bece376c63 Win installer: convert the translations to Unicode
- since NSIS 3 Unicode is allowed and even required
2017-11-05 21:23:41 +01:00
Kornel Benko
6011d6cdca Cmake build: Install subscript.sty only for WIN32 (using MikTeX) 2017-11-05 17:06:38 +01:00
Uwe Stöhr
ad5e8887d2 Win installer: update RC format 2017-11-02 21:48:10 +01:00
Uwe Stöhr
3a6abf2847 Win installer: final changes for 2.3-RC1
- fix detection of 64bit Krita and 64bit JabRef
- JabRef is no longer installed with the bundle installer
2017-11-01 14:33:03 +01:00
Uwe Stöhr
8757550015 Win installer: fix a MiKTeX package issue
since a few months MiKTeX's package manager required the option "--admin" when calling it with admin privileges

- also register the .lyx21 file extension for LyX 2.3
- also update the LyXRC version number
2017-10-31 22:15:54 +01:00
Kornel Benko
51e32a36d6 cmake documentation handling: sort out encoding problems.
Let srcipt work under Python2 and Python3,
also if the locale is not set to utf8.

Patch from Günter Milde, sort of cherry-pick from 9086db662d
2017-10-29 09:49:39 +01:00
Uwe Stöhr
61a703a9c0 Win installer: correct name for RC1 2017-10-28 13:12:52 +02:00
Uwe Stöhr
7d39f4af04 Win installer: updates for 2.3RC1 2017-10-28 02:23:33 +02:00
Uwe Stöhr
3d4358f101 Makefile.am: add missing cmake file 2017-10-28 02:21:09 +02:00
Kornel Benko
d8a31f1ee6 Cmake export tests: Collect list of all used wrong paths before terminating
Also try to ignore references for files that are part of latex. If they are wrong, so
latex should handle the errors.
2017-10-27 13:22:17 +02:00
Kornel Benko
6720a8ca7c Cmake export tests: Add the die-message to the diestack() param.
Spotted by Scott.
2017-10-26 22:43:24 +02:00
Kornel Benko
d63a866106 Cmake export tests: Make test fail if there is some non-existant sub-file 2017-10-26 21:48:33 +02:00
Jean-Marc Lasgouttes
8d8988de47 Allow multiple calls to processUpdateFlags before redraw
The goal of this commit is to ensure that a processUpdateFlags call
that requires no redraw will not override a previous one that did
require a redraw.

To this end, the semantics of the flag argument is now different: its
value is now OR'ed with a private update_flags_ variable. This
variable is only reset after the buffer view has actually been
redrawn.

A new Update::ForceRedraw flag has been added. It requires a full
redraw but no metrics computation. It is not used in the main code
(yet), but avoids to compute metrics repeatedly in consecutive
processUpdateFlags calls.

The process is now as follows:
- if flags is just None, return immediately, there is nothing to do.
- the Force flag is honored (full metrics computation) and replaced
  with ForceDraw.
- the FitCursor flag is honored and removed from the flags.
- the SinglePar update is added if ForceDraw is not in flags and only
  the current par has been modified.

The remaining flags are only then added to the BufferView update
flags, and the update strategy is computed for the next paint event.

Finally the dubious call to updateMacros in updateMetrics has been
removed for performance reasons.
2017-10-24 22:25:29 +02:00
Jean-Marc Lasgouttes
b4294a7b06 Revert "Allow multiple calls to processUpdateFlags before redraw"
The concept is correct, but it seems a bit too disruptive.

This reverts commit c19c54dd5b.
2017-10-17 20:10:11 +02:00
Kornel Benko
65deb30c24 Cmake doc creation: Python is choking on '\\' 2017-10-17 17:12:29 +02:00
Kornel Benko
f3c8884eee Cmake doc creations: Correct indentation 2017-10-17 12:35:57 +02:00
Kornel Benko
a68ef98103 Cmake doc creations: Setting environment PYTHONIOENCODING
This should force the python executable to use the desired encoding.
The command is moved to a wrapper script to be able to set the environment
at make-run-time.
2017-10-17 12:28:36 +02:00
Uwe Stöhr
3835b473c7 ReplaceValues.py: partly revert commit f075f8ad
we need a string output not a byte
2017-10-17 00:23:19 +02:00
Uwe Stöhr
f075f8ad0a ReplaceValues.py: make the file compilable with Python 3
see the mailing list thread "compilation of LyX 2.3 fails with Python 3.6.2" for details
2017-10-16 23:29:57 +02:00
Jean-Marc Lasgouttes
c19c54dd5b Allow multiple calls to processUpdateFlags before redraw
The goal of this commit is to ensure that a processUpdateFlags call
that requires no redraw will not override a previous one that did
require a redraw.

To this end, the semantics of the flag argument is now different: its
value is now OR'ed with a private update_flags_ variable. This
variable is only reset after the buffer view has actually been
redrawn.

A new Update::ForceRedraw flag has been added. It requires a full
redraw but no metrics computation. It is not used in the main code
(yet), but avoids to compute metrics repeatedly in consecutive
processUpdateFlags calls.

Finally the dubious call to updateMacros in updateMetrics has been
removed for performance reasons.
2017-10-16 11:05:52 +02:00
Juergen Spitzmueller
648ddd25ec Collapsable -> Collapsible (part 1)
The current spelling is not strictly wrong, but flagged as unusual or
historical by some authorities. It is also found fault with many
spell checkers. Thus we decided to move to the more standard "-ible"
form once and for all.

See #10678 for discussion

This part only covers the usage in comments and the like. More to follow.

This will all also all be backported to 2.3.x, for the sake of backwards
compatibility (cherry-picking).
2017-10-16 10:03:05 +02:00
Uwe Stöhr
e68fd9ed03 Win installer: one DLL was removed in Qt 5.6.3 2017-10-15 16:52:07 +02:00
Uwe Stöhr
b7f7c857ad Win installer: update Qt
- Qt 5.6.3 uses a different path name scheme
- one DLL was removed in Qt 5.6.3
2017-10-15 16:50:20 +02:00
Juergen Spitzmueller
69b03d2545 updatelayouts.py: consider citeengines. 2017-10-13 16:08:23 +02:00
Kornel Benko
23e67a3829 Cmake tests: Another case of using temporary files
Ctest misinterprets '#' in filenames as comment start,
2017-10-08 11:04:17 +02:00
Günter Milde
54df2f5446 Seminar export fails with latest TeXLive.
Also update the comment on wrong output with "seminar".
2017-10-08 10:36:24 +02:00
Scott Kostyshak
0c7e5c115d Uninvert Japanese tests after fix to #8823
The export ja/lilypond_pdf fails because ps2pdf gives an error. It
is thus still inverted, under the category 'externalissues'. As
Jürgen discovered, ps2pdf succeeds if the -dNOSAFER flag is used.

Note that Kornel is seeing strange behavior with the sweave test,
and thus the label of that test might be changed soon (e.g. to
"unreliable"). For discussion, see:

https://www.mail-archive.com/search?l=mid&q=20171001032524.fr5xfngylththwv2%40steph
2017-10-07 22:37:42 -04:00
Kornel Benko
847c68960a Cmake build: Needed variable for creation of debian package
The variable CPACK_DEBIAN_PACKAGE_RELEASE has to be in the form
of "^[A-Za-z0-9.+~]+$". We will use the abbreviated commit revision for now.
Without this change cmake 3.10 emits error.
2017-10-07 10:47:17 +02:00
Kornel Benko
336f94d12f Cmake build: Don't use temporary doc-files as source for installation 2017-10-05 20:16:52 +02:00
Kornel Benko
92628a2990 cmake tests: Try to use valid locales for testing 2017-10-02 10:35:57 +02:00
Kornel Benko
c2eb1a1a72 Add suffixed lyxconvert to cmake build.
This should amend f93ec4a, but is not tested on apple
2017-10-02 02:00:47 +02:00
Stephan Witt
f93ec4a1f4 Add Qt-based fallback-converter for Mac to compensate missing ImageMagick convert utility 2017-09-30 18:13:37 +02:00
Stephan Witt
350ef993e5 add inkscape wrapper script for Mac OS
The wrapper script is placed in the binary directory of the LyX bundle.
It tries to find the real inkscape command line converter in the
Inkscape.app bundle and starts it or reports an error.
The configure.py is changed for Mac OS to check the presence of
the real inkscape binary in the Inkscape.app bundle.
2017-09-24 11:55:20 +02:00
Stephan Witt
c7efc9df28 #10762 open lyx pipe only once to read the answer 2017-09-15 08:16:50 +02:00
Stephan Witt
5699791d0f #10762 update format and copyright 2017-09-14 11:32:11 +02:00
Stephan Witt
8cbed5ef4a #10762 don't hard-code the location of LyX bundle - use script path name for lyxrc.dist lookup 2017-09-14 11:13:47 +02:00
Stephan Witt
81d70b41a1 #10762 read complete answer from LyX server and echo it 2017-09-14 11:13:47 +02:00
Stephan Witt
4939741a73 #10762 correct user preferences file lookup 2017-09-14 11:13:47 +02:00
Stephan Witt
bec5b579b0 #10762 avoid back ticks for sub-shell execution where possible 2017-09-14 11:13:47 +02:00
Uwe Stöhr
b186b08cff Win installer: record a package that lyX uses now for Japanese documents 2017-09-09 20:43:30 +02:00
Jean-Marc Lasgouttes
fb655725b7 Remove workaround that is not necessary anymore.
This code was necessary to handle cases where the insets positions
were not yet in cache. This cannot happen anymore thanks to the
nodraw stage.
2017-09-08 16:57:21 +02:00
Jean-Marc Lasgouttes
8edadee145 Update the painting process documentation 2017-09-08 16:57:21 +02:00
Richard Heck
e6cb0c56ff Fix some issues found by the shellcheck script, and move an old
file to the attic.
2017-08-21 17:16:30 -04:00
Christian Ridderström
4c4db93645 Set n:o digits in abbrev. hash in script that checks commit log.
Expliclyt set n:o digits in abbrev. hash in script that checks the
commit log to make script behave the same way on different platforms.

Also improve help text.
2017-08-20 18:34:25 +02:00
Kornel Benko
854d7e1619 Windows only: A try to compile with LYX_CONSOLE again
The use of the value "FORCE" was wrong anyway, since LYX_CONSOLE
is of type "BOOL".
2017-08-18 12:07:03 +02:00
Tommaso Cucinotta
a0e95a2c1b generate_manuals_for_web: switch to xhtml, and use a random userdir while exporting, so no cached pic can be found. 2017-08-18 02:53:32 +02:00
Pavel Sanda
e8b324a984 oops, git is playing games with me. 2017-08-17 01:24:44 +02:00
Pavel Sanda
ca0813915c Push Tommaso's script for publishing mans. 2017-08-17 01:14:56 +02:00
Pavel Sanda
7f4e46440d Push Tommaso script for manuals generation. 2017-08-17 00:10:15 +02:00
Uwe Stöhr
a7c1496837 Win installer: updates for beta 1 2017-08-15 21:06:19 +02:00
Scott Kostyshak
b45be0ecf8 Update docs to 2.3.0beta1 format 2017-08-14 02:31:24 -04:00
Scott Kostyshak
fc81243ada Update the formats of lyxrc.dist.in to 22
In the end, no changes were needed. This was decided by prefs2prefs
for MacOSX and cygwin, and by manual inspection for Win32.
2017-08-14 02:02:57 -04:00
Scott Kostyshak
513f79ad30 Set pre-release version as beta1 2017-08-14 00:39:58 -04:00
Kornel Benko
9a42154107 Cmake export tests: Ignore missing glyphs also for doc/(fr|es)/UserGuide 2017-08-12 14:08:12 +02:00
Uwe Stöhr
1a6e10474c Win installer: check a package that LyX uses for instant preview 2017-08-05 20:26:25 +02:00
Uwe Stöhr
e4b9b4c27c Win installer: check another package used now by LyX 2017-08-05 19:33:29 +02:00
Kornel Benko
37bcf5392a keytests: Allow for checking multiple log files
Handle name may be arbitrary string mathing '[A-Za-z0-9]*'.
This is then used by appending to the commands for the control file.
For instance select 'Alpha' as handle for the control file 'abc'
'COAlpha: abc' ==> open 'abc' for write
'CCAlpha:' ==> close 'abc'
2017-08-04 11:56:19 +02:00
Enrico Forestieri
dd884a6bfa Small tweak for 64bit Cygwin
Don't specify the main entry point because on 64bit Cygwin the leading
underscore is missing and that is the default entry anyway.
2017-08-03 15:56:41 +02:00
Christian Ridderström
601f70f8fe Add script for CI job to check git log for non @lyx.org-adressses
The idea is to let a CI job regurlarly invoke this script in order to
check that there hasn't been any new commits where the author of the
commit doesn't have an @lyx.org e-mail address.  If this is the case,
the CI job is expected to fail and a warning e-mail will be sent to
lyx-devel@lists.lyx.org.
2017-07-30 20:28:42 +02:00
Kornel Benko
401b54b3f6 ctests: eu_UserGuide_pdf[25] compiles again 2017-07-27 13:39:16 +02:00
Uwe Stöhr
49b83acf12 Win installer: add necessary LaTeX packages for minted 2017-07-26 23:02:20 +02:00
Kornel Benko
3cc78bba75 Cmake export tests: Ignore missing glyphs also for doc/de/UserGuide 2017-07-26 12:39:46 +02:00
Uwe Stöhr
52025d5c9b Win installer: prepare for a new 2.3 release (hopefully a beta) 2017-07-25 00:31:45 +02:00
Jean-Marc Lasgouttes
9fe8190364 Make "devel mode" configurable at run time
Traditionally LyX behaves differently when the directive DEVEL_VERSION
is defined at compile time. This covers
* more detailed description of current position in status bar
* the help files are open in read/write mode
* more detailed debug output in the View Source panel

This patch introduces the new function devel-mode-toggle that allows
to use devel mode in stable releases, and vice versa.

The information is saved in the session file. The default is to
disable devel mode.

Remove all traces of DEVEL_VERSION in autoconf and cmake
2017-07-24 22:00:44 +02:00
Kornel Benko
12a2565b97 Cmake build: Use the same destination for lyx-tex-files as in automake 2017-07-14 11:24:20 +02:00
Kornel Benko
e23e65a973 Cmake build: Install lyx-provided fonts to where GuiFontLoader.cpp expects them 2017-07-10 13:17:29 +02:00
Kornel Benko
acf8df28b3 Sort images file list also for cmake
This is not needed for recent cmake versions, but since we expect
also older cmake version be used, sort the list nevertheless.
See https://reproducible-builds.org/ for why this matters.

Amends b8e3615
2017-06-27 19:18:24 +02:00
Kornel Benko
a550f7d91e Cmake export tests: Ignore missing glyphs on some tests
Could not find a suitable tex font for the following tests:
	export/doc/uk/Intro_pdf4_texF
	export/examples/uk/splash_pdf4_texF
	export/examples/minted-filelisting_pdf4_texF
2017-06-27 10:26:27 +02:00
Kornel Benko
195e55d3f4 Cmake export tests: Adapt to minted listings
1.) Handle also 'LatexCommand inputminted' in lyxStatus.pm
2.) Add '-shell-escape' to the appropriate converters.
  This applies only to the ctest-environment iff calling
  the script 'prefTest.pl' in the build directory.
2017-06-16 11:39:26 +02:00
Scott Kostyshak
98da276164 Typo in comment 2017-06-09 13:15:58 -04:00
Enrico Forestieri
8dab1cfe7e Fix bug #9101
Update the listings inset to optionally use the minted package
(instead of the listings one) for typesetting code listings.
Only one of the two packages can be used in a document, but it
is possible to switch packages without issues if the used options
are the same. If a switch is made and the options differ, one needs
to manually adjust them if they were entered in the advanced options
tab, or apply again the gui settings.
Note that minted requires the -shell-escape option for the latex
backend and the installation of additional software (python pygments).
2017-06-07 00:55:23 +02:00
Kornel Benko
bf62343924 Cmake export tests: Ignore some acmart tests for now 2017-06-01 11:07:22 +02:00
Kornel Benko
9e0b09e0a1 keytests: Do not save the session info in bug-10636-test
Otherwise the following tests start with 'display source code' enabled.
2017-05-29 13:53:39 +02:00
Kornel Benko
03df04fd3b Add test for #10636 (fixed in master) 2017-05-27 19:54:59 +02:00
Kornel Benko
ca40fdc569 keytests: Add a small delay to each special key
keytest.py: This gives the os some time to update the status.
  All keys with modifier and all possible shortcuts are affected.

Shortcut use corrected in findadv-11-in.txt and findadv-17-in.txt
2017-05-27 11:18:58 +02:00
Kornel Benko
d547ef7c5e keytests: rewritten testcases to use the new searching engine searchPatterns.pl 2017-05-24 16:29:32 +02:00
Kornel Benko
c03d2f17e9 keytests: Adapt to new shortcuts.
Also, due to resolved shortcut clash in slovak gui, there is now no need to
select 'search whole words' twice.
(\Ac\Ac ==> \Ae)
2017-05-22 18:42:44 +02:00
Kornel Benko
176670fc56 keytests: Move shortcut handling into own class 2017-05-22 08:49:26 +02:00
Kornel Benko
b5229cc5a2 keytests: Wrong check for empty key in associative array 2017-05-21 18:38:48 +02:00
Kornel Benko
fa3e656af7 keytests: Implemented use of additional shortcuts in keytest.py
Now, before starting a test with 'TestBegin' in any *-in.txt file
we can create ne shortcuts used by this test.
Defining a shortcut:
	UseShortcut "<shortcut>" "<function>"
Actually adding the new shortcuts to be used by the next lyx-session:
	PrepareShortcuts

Use example is found in findadv-combined-in.txt
The UseShortcut-entries will be traslated into '\bind "<shortcut>" "<function>"'
and with the PrepareShortcuts-entry added to the active use file 'user.bind'
2017-05-21 12:55:47 +02:00
Kornel Benko
7c72823061 keytests: Shorten the output of wrong matches to 10 lines 2017-05-19 12:58:32 +02:00
Kornel Benko
b8eecc2108 keytests: amend 8f74cac381 2017-05-19 12:56:43 +02:00
Kornel Benko
0abdc3dd59 keytests: Handle function-keys for xvkbd too
Function keys are sent to xvkbd as e.g. \[F15], so we should
not split a sequence like "\C\[F15]" into two text pieces.
(Do it like other keys not having a digit in their name (e.g. \[Return]) )
2017-05-19 12:52:59 +02:00
Kornel Benko
8f74cac381 keytests: Add more controls for the *-in.txt files
The controls are described in hello-world-in.txt as
Cr: not expected regex search pattern before next expected match
Cp: not expected search pattern before next expected match

See also findadv-re-04-in.txt for an example
In this test-case, searching for case sensitive and format considering
search is failing.
2017-05-18 13:05:36 +02:00
Kornel Benko
46e472dcf9 keytests: Allow controlfile (used by searchPatterns.pl) to be opened for 'append'
This allows collecting search strings of multiple tests in one file
2017-05-18 00:03:50 +02:00
Scott Kostyshak
8180b9f97c ctests: invert doc/fr/EmbeddedObjects_pdf4_texF
This test started failing after 8bf3d7bb. I did not look deeply into
why, because the corresponding de and es tests were already
inverted, and because in general we do not expect texF tests to work
well.
2017-05-17 15:18:29 -04:00
Kornel Benko
3bdffab7c8 keytests: Polishing 2017-05-17 13:52:54 +02:00
Kornel Benko
09e5acba11 keytests: Rewritten to use searchPatterns.pl instead of pcregrep
Also corrected output of keytest.py. Messages from called
programs were output to stdout wile own printed messages
were still cached.
2017-05-17 12:12:55 +02:00
Kornel Benko
80bc39ebc9 keytests: Extend the search algorithm to pattern with more as 2 lines 2017-05-16 16:45:18 +02:00
Kornel Benko
9b14eb16f5 keytests: Use flush stdout before exiting
Without the flush, often messages are lost at test-end
2017-05-16 13:01:43 +02:00
Kornel Benko
d870a0f2fd keytests: Added some new controls for the *-in.txt files
The controls are described in hello-world-in.txt as
CO: for control file open for write
CN: control notice
CP: simple search pattern
CR: regex search pattern
CC: close control file

The control-file will be used at the end of test by searchPatterns.pl
2017-05-16 09:16:18 +02:00
Kornel Benko
36a3cca3ea keytests: New script to replace 'pcregrep' in more complex cases.
Suppose, we want to test a key sequence which should produce
logs in defined sequence. ATM, we use pcregrep to see, if
a pattern occurs in the log-file. This is OK, if using only single
tests with only one message to care about.
But it is not OK for combined tests.
As an example, the file 'findadv-combine-in.txt' is combining
tests findadv-re-01-in.txt, findadv-re-02-in.txt and findadv-re-03-in.txt.
This test runns here about 25 seconds, while the time for the other three
is about 144 secs.
(Most time is with starting/stopping lyx)
2017-05-14 18:58:55 +02:00
Scott Kostyshak
00f7a95f62 ctests: invert acmart check_load test
The root issue is known and was reported to maintainer.
2017-05-14 04:30:14 -04:00