Commit Graph

3693 Commits

Author SHA1 Message Date
Richard Kimberly Heck
01c23b3864 Fixes for the build script. 2018-08-28 15:18:53 -04:00
Richard Kimberly Heck
53bf5beae0 Prepare for 2.3.1. 2018-08-27 14:07:29 -04:00
Enrico Forestieri
e1fa3cb248 Update the server_monitor example client to Qt5
(cherry picked from commit ab72f94595)
2018-08-08 13:12:33 +02:00
Kornel Benko
889d10cda3 Cmake build: Adapt to compile with qt5.11
Since qt5_use_modules() is removed from QT5 (as spotted
by Jürgen Spitzmüller), we had to create own version
of this macro.

According to this page:
http://doc.qt.io/qt-5/cmake-manual.html
the way to replace use of qt5_use_modules() for module "_mod" and target "_target"
is to use
  1.) cmake_minimum_required(VERSION 3.1.0)
  2.) find_package(Qt5${_mod} CONFIG REQUIRED)
  3.) target_link_libraries(${_target} Qt5::${_mod})
The last one sets all reguired libraries, compile flags and needed includes for the ${_target}

Disable possible warn about not known policy

Extend Clang compiler detection to cover Apple CLang

(cherry picked from commit d6b21e20e2)
(cherry picked from commit 72a2f92239)
(cherry picked from commit 6343452a73)
(cherry picked from commit cb08d4a879)
(cherry picked from commit 1bf4d7b0fc)
2018-06-20 00:09:19 +02:00
Pavel Sanda
0eccf87797 lyx-build: check sig in case one really uses download instead of local tarball. 2018-06-19 23:58:19 +02:00
Richard Heck
bcb002039b Merge branch '2.3.2-staging' into 2.3.x 2018-04-14 23:52:31 -04:00
Juergen Spitzmueller
10335b93b4 Support new hunspell C++ ABI if LyX is built against hunspell >= 1.5
Fixes: #10547
2018-04-14 10:35:59 +02:00
Jean-Marc Lasgouttes
b3cca8086d Add support for enchant 2.x
As of enchant 2.x, it is required to create a Broker instance instead
of relying on a static one provided by the library.

Add autoconf and cmake (courtesy of Kornel) tests that check whether
one can indeed instantiate a Broker object, and act on the result in a
new broker() helper function.

Fixes bug #10986.

(cherry picked from commit 63a4e82874)
2018-03-19 17:33:17 +01:00
Uwe Stöhr
48aae9bcb5 Win installer: convert all files to Unicode
- at the moment some files were in Unicode, some in CP1252 which can make unnecessary troubles
- remove an obsolete file
- update InstallerStructure.odg
2018-02-18 15:52:57 +01:00
Uwe Stöhr
ae76c030d3 Win installer: backport recent changes for LyX 2.3.0 2018-02-18 06:16:22 +01:00
Jean-Marc Lasgouttes
a71610b9d7 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

(cherry picked from commit 9e2da4a3ea)
2018-02-15 12:29:25 +01:00
Jean-Marc Lasgouttes
4ecbff0019 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.

(cherry picked from commit 8d8988de47)
2018-02-15 12:29:25 +01:00
Jean-Marc Lasgouttes
410605385f 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.
2018-02-15 12:29:25 +01:00
Jean-Marc Lasgouttes
8bb7ce4e4a Update the painting process documentation 2018-02-15 12:29:25 +01:00
Uwe Stöhr
55d5c20d93 Win installer: upgrade to Qt 5.9.4 2018-01-24 03:26:34 +01:00
Uwe Stöhr
cd8c6d4d2b build5*.bat: update to Qt 5.9.4
- also adjust build5-2015-x64.bat
2018-01-24 01:19:19 +01:00
Scott Kostyshak
968afbbadd ctests: invert for new ru example_lyxified.lyx
Consistent with the ru splash.lyx, we invert the texF tests for the
ru example_lyxified.lyx, which was recently added at 69ef4bc1.

(cherry picked from commit dc06714adb)
2018-01-18 00:03:05 -05:00
Scott Kostyshak
66b5538339 ctest comment: be more clear about what "!" means
The "!" line only affects tests in that file.

This amends c6d4380c.

Thanks to Kornel for spotting this.

(cherry picked from commit 39c22913a2)
2018-01-17 01:09:36 -05:00
Scott Kostyshak
7a9aa76a1a Comment: explain interpretation of "!"
The "!" line takes precedence, since it is first.

(cherry picked from commit c6d4380c89)
2018-01-15 17:31:48 -05:00
Scott Kostyshak
6474b0fb04 Whitespace 2018-01-15 17:07:55 -05:00
Scott Kostyshak
fcfc95e41c Merge branch 'ja_knitr_sweave_updates'
This merges updates from Koji Yokota, and adapts the ctests
accordingly.

(cherry picked from commit 299b730318)
2018-01-15 17:05:22 -05:00
Scott Kostyshak
2c20f06d25 ctests: allow excluding patterns
This allows us to exclude matches of certain patterns in
invertedTests, ignoredTests, unreliableTests, and suspendedTests.

To use this new functionality, prefix "!" to the pattern.

This functionality serves as a workaround in some cases to not being
able to use advanced regular expression techniques, such as
"negative lookahead", with CMake's regular expression engine.

Output of "ctest -N" is unchanged by this commit.

This functionality will be used soon (see next commits).

Patch from Kornel Benko.

(cherry picked from commit 10cd5dd223)
2018-01-15 16:58:59 -05:00
Uwe Stöhr
41fe69e5d0 Win installer: start an an RC2 installer
- also fix a typo and update a file size
2018-01-14 22:16:23 +01:00
Scott Kostyshak
b40e58d641 ctests: invert tests for Arabic splash
The Arabic splash only compiles with XeTeX + system fonts.

(cherry picked from commit 291d2f1037)
2017-12-18 23:33:22 -05:00
Uwe Stöhr
029b76b011 Win installer: improvement from Yuriy
- also suppress an unnecessary message
2017-12-11 00:30:31 +01:00
Uwe Stöhr
5d3811c7da Win installer: new Russian translations thanks to Yuriy 2017-12-09 19:05:17 +01:00
Uwe Stöhr
8997270a77 unix2dos.py: make it ready for python 3
fixes bug #10838
2017-12-09 00:24:20 +01:00
Uwe Stöhr
b3ad82f1f7 Win installer: code review
- use https in URLs
- remove unused code
- use variables if possible
- LyX 2.3.x won't support Windows Vista because Qt 5.9 does not and other third-party programs will follow soon
2017-12-06 15:31:10 +01:00
Uwe Stöhr
2005764402 Win installer: update rsvg-convert
- also fix some typos in the license file
2017-12-06 03:08:00 +01:00
Uwe Stöhr
1961052a2e build5-2015.bat: also update the build files for Windows 2017-11-24 00:18:48 +01:00
Uwe Stöhr
b95800898d Win installer: update to Qt 5.9.3 2017-11-24 00:13:11 +01:00
Uwe Stöhr
0621138daa Win installer: check that the Win installer is not already running 2017-11-22 00:33:29 +01:00
Uwe Stöhr
9a3d795e24 Win installer: add two more required packages and correct a word
- vntex is necessary for Vietnamese, greek-fontenc for Greek
- use correct term for Farsi
2017-11-21 01:11:51 +01:00
Uwe Stöhr
4e83fcf9e6 Win installer: backport also the CMake build removal
This might be controversial but as it is it doesn't work (new NSIS backend changed NSIS plugins etc.)
2017-11-20 21:14:18 +01:00
Uwe Stöhr
ecfa11358f Win installer: backport the file cleanup 2017-11-20 21:10:58 +01:00
Uwe Stöhr
59c1c09712 Win installer: update package list
these are the packages required to compile all LyX doc, examples and template files that are not yet installed by MiKTeX on a fresh installation.
2017-11-20 02:50:41 +01:00
Uwe Stöhr
3b04e114e0 Win installer: add file info to the installer executable file 2017-11-18 16:55:05 +01:00
Uwe Stöhr
467ae50e6d Win installer: backport recent changes 2017-11-18 15:25:38 +01:00
Pavel Sanda
25333ea74d Add patcheset for building with gcc 4.6.
Reverts couple patches (external file monitor stuff) committed
while ago by GM. One can expect some bugs wrt external
file monitoring; don't use this patch blindly.
2017-11-17 13:58:49 +01:00
Uwe Stöhr
a9e15e667e Win installer: update to Qt 5.9.2 also fro LyX 2.3
I tested LyX with Qt 5.9 intensively and it works well.
2017-11-13 21:26:49 +01:00
Uwe Stöhr
92b7370b2a 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:20:11 +01:00
Uwe Stöhr
d5f15f4a6d Win installer: update MiKTeX
- also remove Qt5XML in the installer as it appears not to be used by LyX
- add a note that pdfview is not yet ready for full Unicode support
2017-11-11 18:37:16 +01:00
Uwe Stöhr
3ec7171842 Win installer: make it a real Unicode program 2017-11-07 02:16:34 +01:00
Uwe Stöhr
c7508e638e Win installer: translate 2 installer sections 2017-11-05 22:35:44 +01:00
Uwe Stöhr
aa36c455b3 Win Installer: update also Catalan translation 2017-11-05 21:16:38 +01:00
Uwe Stöhr
49576dda9e Win installer: convert the translations to Unicode and prepare a new installer
- since NSIS 3 Unicode is allowed and even required.
The first installer for RC1 used the non-Unicode and therefore users of non-Latin script languages could not see readable text in the installer.

- also remove some JabRef residues
2017-11-05 21:05:51 +01:00
Uwe Stöhr
0f04731b93 Makefile.am: add missing CMake file 2017-11-02 22:02:28 +01:00
Uwe Stöhr
77237fd895 Win installer: backport recent changes from RC1 2017-11-02 21:51:36 +01:00
Uwe Stöhr
2a20dac130 Win installer: correct name for RC1
(cherry picked from commit 61a703a9c0)
2017-10-30 03:10:37 -04:00
Scott Kostyshak
2baea7bf7e Update preference format for cygwin and Win
As noted in prefs2prefs, no conversion is necessary from 22 to 23.
2017-10-27 13:00:02 -04:00
Günter Milde
9086db662d cmake documentation handling: sort out encoding problems.
Let srcipt work under Python2 and Python3,
also if the locale is not set to utf8.
2017-10-21 22:25:59 +02:00
Kornel Benko
72122beee8 Cmake doc creations: Setting environment PYTHONIOENCODING
1. 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.
  cherry-picked from a68ef98 and f3c8884
2. Python is choking on '\\'
  cherry-picked from 65deb30

Omiting changes to ReplaceValues.py, which will be hopefully done by Günter Milde
2017-10-21 11:18:02 +02:00
Juergen Spitzmueller
e040ccb0e8 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).

(cherry picked from commit 648ddd25ec)
2017-10-16 11:22:13 +02:00
Uwe Stöhr
1940a1f080 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:47:48 +02:00
Kornel Benko
11386f4601 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.

(cherry picked from commit 847c68960a)
2017-10-08 08:30:16 +02:00
Scott Kostyshak
7ea9210853 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
(cherry picked from commit 0c7e5c115d)
2017-10-07 22:40:05 -04:00
Kornel Benko
88cba7dee3 Cmake build: Don't use temporary doc-files as source for installation
(cherry picked from commit 336f94d12f)
2017-10-06 22:02:44 +02:00
Kornel Benko
9da29ac788 Add suffixed lyxconvert to cmake build.
This should amend f93ec4a, but is not tested on apple
2017-10-03 22:09:57 +02:00
Kornel Benko
9f5f4e2aa0 cmake tests: Try to use valid locales for testing 2017-10-03 22:09:06 +02:00
Stephan Witt
c75d9bf7c4 Add Qt-based fallback-converter for Mac to compensate missing ImageMagick convert utility
(cherry picked from commit f93ec4a1f4)
2017-10-03 20:10:29 +02:00
Stephan Witt
0faf6ff22b 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.

(cherry picked from commit 350ef993e5)
2017-10-03 20:07:35 +02:00
Stephan Witt
ccf33ccf5f #10762 open lyx pipe only once to read the answer
(cherry picked from commit c7efc9df28)
2017-09-15 08:17:41 +02:00
Stephan Witt
3081e3661c #10762 update format and copyright 2017-09-14 12:01:19 +02:00
Stephan Witt
615afdc5a3 #10762 don't hard-code the location of LyX bundle - use script path name for lyxrc.dist lookup
(cherry picked from commit 8cbed5ef4a)
2017-09-14 11:44:15 +02:00
Stephan Witt
9b6cee5af4 #10762 read complete answer from LyX server and echo it
(cherry picked from commit 81d70b41a1)
2017-09-14 11:41:52 +02:00
Stephan Witt
4599a1b6f1 #10762 correct user preferences file lookup
(cherry picked from commit 4939741a73)
2017-09-14 11:41:31 +02:00
Stephan Witt
024c9d315b #10762 avoid back ticks for sub-shell execution where possible
(cherry picked from commit bec5b579b0)
2017-09-14 11:41:22 +02:00
Uwe Stöhr
78221d4cb8 Win installer: adapt a path 2017-09-10 17:05:49 +02:00
Uwe Stöhr
608a62cec1 backport Win installer: record a package that LyX uses now for Japanese documents 2017-09-10 01:58:06 +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