Commit Graph

40457 Commits

Author SHA1 Message Date
José Matos
ad96fd835b Divide the python detection in three functions, with a clear delegation of responsibilities
python23_call: determines if the binary given is appropriate and adds the necessary calling options

find_python_binary: get a list of candidates and choose the right one using python23_call

python: returns the name of the python interpreter that can be found on PATH, using find_python_binary
2019-06-08 12:49:30 +01:00
José Matos
02ee471d9d Move python related functions together to make it easy to read the code. 2019-06-08 12:22:26 +01:00
José Matos
35c299f86d Remove alternative operator representations (and,or) and improve comments for python binary detection. 2019-06-08 09:15:03 +01:00
Jean-Marc Lasgouttes
41c0fc171a Revert "Remove unneeded std::move"
This confuses gcc 4.9

This reverts commit 44e88a4c13.
2019-06-07 19:41:16 +02:00
Pavel Sanda
bf99ece736 Start reporting missing citations and broken references in LaTeX build.
Now we report these in the same way as LaTeX errors (but let the user to
see the result anyway). It remains to be shown much is this disturbing
to users. Generally, ignoring these is not a good idea, because they are
harder to manually spot in longer documents.

The details of reported error varies because log linebreaks at 90
induced by pdflatex make log harder to parse.
The committed code is more robust than previous, in which some missing
cits/refs with long keys would go unnoticed.

Tested on bibtex and natbib.

https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg208912.html
2019-06-07 16:47:04 +02:00
José Matos
adb779a692 Change python run time detection to privilege python 3 over python 2.
This should work as before but now we also control the python version and ignore it if it is not in the supported range.
2019-06-07 15:27:25 +01:00
Jean-Marc Lasgouttes
44e88a4c13 Remove unneeded std::move
Signalled by gcc 9.
2019-06-06 15:23:42 +02:00
Jean-Marc Lasgouttes
b8b5ed8b31 Clean up Language.cpp
Use range-base for loops everywhere.

Rename languagelist to languagelist_, since it is private.
2019-06-05 16:28:37 +02:00
Jean-Marc Lasgouttes
bf88ad495c Make Word Wrap property confiurable by language
It is now possible to specify in the lib/language file whether screen
rows can be broken anywhere (CJK languages) or only at work boundary.

Set WordWrap to false for the CJK languages (notice that japanese-cjk
had been forgotten before).

Moreover, remove a test for separators in row element that was not
really helpful.

Fixes part of ticket #10299.
2019-06-05 15:50:53 +02:00
José Matos
58734edff6 Make the lyx2lyx code compatible between python2 and python3.
FWIW this code is important for very old versions of lyx, older than 1.1.5 (released 19 years ago - 2000/06/06).

Funny fact of the day, byte strings do not behave as regular strings in python3 when taking and index.
To get a sub-string we need to pass a range, a integer index will not work as it happens in a regular string:

$ ipython3
...
In [30]: line
Out[30]: b'#This file was created by <mike> Tue Jan 25 10:36:51 2000'

In [31]: line[0]
Out[31]: 35

In [32]: line[0:1]
Out[32]: b'#'

The range notations works for both byte and regular strings in python 3, and it also works in python 2.
Thus the change is simple and effective. In any case I should confess that I was quite surprised by this. :-)
2019-06-05 14:06:09 +01:00
Günter Milde
051de65db9 Fix remainder of #11115.
Implement GUI suggestions from
https://www.lyx.org/trac/ticket/11115#comment:26
2019-06-05 11:18:36 +02:00
José Matos
4268a9e812 Remove code that is redudant.
Both for python2 and python3 output is always a string.
2019-06-04 18:26:13 +01:00
Juergen Spitzmueller
2519666166 Use a somewhat more realistic trigloss example 2019-06-04 14:01:06 +02:00
Juergen Spitzmueller
24814759a1 de/Linguistics: minor corrections 2019-06-04 13:40:02 +02:00
Kornel Benko
596b4ab090 Update sk.po 2019-06-04 12:44:17 +02:00
Juergen Spitzmueller
1eae74abe5 de.po 2019-06-04 12:04:29 +02:00
Juergen Spitzmueller
9f0dd70ed3 de/Linguistics: update 2019-06-04 11:51:18 +02:00
Juergen Spitzmueller
2f648cc17a small correction 2019-06-04 11:10:54 +02:00
Juergen Spitzmueller
e2f81b3a84 Rework linguistic gloss support
This now uses the new and enhanced \digloss ad \trigloss macros of
convington 2.0 rather than the deficient self-baked ones.

File format change.
2019-06-04 11:01:19 +02:00
Juergen Spitzmueller
550f46a188 Remove covington backwards compatibility code
The new environments are out now long enough, and we are going to require
covington 2.0 for the glosses in 2.4 anyway.
2019-06-04 08:20:02 +02:00
José Matos
639b5da1af Fix the remaing issues with comparisons with objects of different types.
In python it is possible to compare tuples with a lexicographic order.

Take advantage of that since there is no need to resort to the C-trick of converting a version in hex format.

We need to set a dummy version in case we are using ImageMagick to ensure that version is always an integer 3-tuple.
2019-06-03 19:07:20 +01:00
José Matos
a8937b53ec Fix bug in python comparison.
It worked in python2 but not the way the authors imagined. Because hex always returns a string.

From python2:
>>> 1 > "2"
False
>>> "2" > 1
True
>>> "1" > 2
True

The rational is that an integer is always smaller than a string.

In python 3 this because it does not make sense to compare objects of different types.
2019-06-03 17:15:09 +01:00
Günter Milde
bab2316092 ctests Arabic: mark non-Arabic text parts as English, fix inversion pattern. 2019-06-03 16:58:10 +02:00
Günter Milde
f1e7f5267d lyx2lyx refactoring and minor fixes. 2019-06-03 16:58:10 +02:00
Günter Milde
b2cee3dcc5 Support more languages (file format change).
Format incremented to 576:
Support for the document languages azerbaijani, bengali,
churchslavonic, and oldrussian.
2019-06-03 16:58:10 +02:00
Günter Milde
8e06c2ffa9 Fix some problems with lyx2lyx_tools.revert_languages().
Amends 7bb30286.

Tested cases are now handled fine.

(There are still many cases where the language support emulation
is too complex for lyx2lyx and manual fixes are required after
lyx2lyx conversion.)
2019-06-03 16:58:10 +02:00
Enrico Forestieri
1df3151b6a Math autocorret: cycle through dots
Also remove the unknown symbols \hdots and \udots.
2019-06-03 16:55:55 +02:00
Jean-Marc Lasgouttes
d02244c8fb Make caret visible inside math macros arguments
The first step is to move the MathRow cache to BufferView, alongside
coordCache. This was on the todo list anyway, since it allows to let
go the math row information when the math equation is not on the
screen anymore. With the old scheme, it would always remain in memory.

Then, when computing caret size in MathData::metrics, make sure that
the mathrow of the elements that are linearized in the MathRow object
get their caret size information initialized too.

Fixes bug #11587.
2019-06-03 16:28:16 +02:00
Juergen Spitzmueller
18ebcab403 Properly reset lineno_opts 2019-06-03 14:33:08 +02:00
Enrico Forestieri
16d87a615b Some more tweaks to math autocorrect
In particular, make the '>' and '<' symbols followed by '*' cycle
through some sensible group of symbols.
2019-06-03 12:32:13 +02:00
Enrico Forestieri
3b1ee92167 Close cycle and correct typo
I think that the autocorrect file needs an overhaul.
2019-06-03 11:37:15 +02:00
Isaac
3519be2292 Removed shortcuts to toggle autocorrect.
They are not really needed now that autocorrection can be undone. This
increases autocorrect usability.
2019-06-03 11:09:09 +02:00
Jean-Marc Lasgouttes
af0c6abd21 Add Isaac Oscar to credits 2019-06-03 10:53:49 +02:00
Enrico Forestieri
9bf8c87315 Use the new autocorrect feature
Correct or activate some already present shortcuts, and add new ones
for easily obtaining the most common fixed size delimiters.
Pressing '*' after a delimiter will cycle through all sizes.
2019-06-03 10:21:40 +02:00
José Matos
f9bf53f35a Make verbose switch consistent.
Someday we should probably unify these two switches. Because the debug switch is verbose
and the verbose switch is mostly used for debuging.
2019-06-03 07:31:05 +01:00
Jean-Marc Lasgouttes
64396717db Allow to undo partly math autocorrect
To this end, introduce Undo::splitUndoGroup, which ends currently
group and creates a new one with same nesting level.
2019-06-02 21:17:26 +02:00
Isaac
bed546d6f6 Make math autocorrrect work with more than 2 chars
Currently, math autocorrect allows to transform a couple of characters
to a new one. This patch allows to transform a couple (sequence,
character) to a new character.

No example are implemented right now. One possible idea would be
"--" + ">" => \longrightarrow
2019-06-02 21:12:12 +02:00
Juergen Spitzmueller
d2b6232ce7 Fix lineno options param
This has been written even if empty -- and thus caused reading errors.
2019-06-02 19:07:01 +02:00
José Matos
a810d779d7 Import lyxpreview_tools directly and not only inside *if* conditions.
This is related to the bug #11457 saga and it was my fault.

The debug files should be written only be on if the argument --debug is passed and not --verbose as it was done by mistake.
2019-06-02 17:24:40 +01:00
Juergen Spitzmueller
c7efb677f8 New InsetLayout tag ParbreakIgnored
This effectively allow paragraph breaks in insets only for cosmetic
reasons (e.g., to align contents on different lines).

This is the last change necessary for an enhanced covington gloss support
(which uses the new covington gloss ui)
2019-06-02 18:16:30 +02:00
Juergen Spitzmueller
9e6d22ea9c Add InsertOnNewline argument tag
This adds a paragraph break before auto-inserting arguments in flex
insets.

Useful for specific arguments (particularly ling glosses)
2019-06-02 18:07:10 +02:00
Juergen Spitzmueller
cb6c183225 Amend 9f04eeae03 2019-06-02 16:55:11 +02:00
Juergen Spitzmueller
9f04eeae03 Support FreeSpacing in InsetArgument 2019-06-02 16:33:06 +02:00
Juergen Spitzmueller
378c7e8edb Allow for auto-inserting multiple arguments 2019-06-02 09:26:32 +02:00
Juergen Spitzmueller
532765c03a Enable AutoInsert with post arguments 2019-06-02 09:25:56 +02:00
Günter Milde
7bb3028607 fixes to lyx2lyx's revert_language tool. 2019-06-02 00:04:34 +02:00
Günter Milde
fc99ef2ab3 ctest test documents for lyx2lyx.
Currently failing due to an error in revert_language().
2019-06-02 00:04:34 +02:00
Günter Milde
d8c913fe59 lyx2lyx refactoring
Reduce code duplication in revert_language, no change to output.
2019-06-02 00:04:34 +02:00
Juergen Spitzmueller
ec4fddb72f de.po 2019-06-01 09:28:21 +02:00
Kornel Benko
bfd58bb6b6 Update sk.po 2019-05-31 20:15:06 +02:00