Kornel Benko [Sun, 14 May 2017 16:57:25 +0000 (18:57 +0200)]
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)
José Matos [Sat, 13 May 2017 14:25:44 +0000 (15:25 +0100)]
Fix call of layout2layout as a module.
If we call parser.parse_args(), thus with no arguments, the parser uses
sys.argv (because that is the default). We should pass argv since that was
the purpose of handling argv in the main function.
We pass argv[1:] since when parsing the arguments we always ignore the name
of the program.
Use the full power of argparse to declare the default value of the end_format.
Guillaume MM [Fri, 12 May 2017 22:51:21 +0000 (00:51 +0200)]
Fix computation of InsetLayout arguments for InsetText
Do not take the optional arguments from the first paragraph, but from the
paragraphs whose layout have no arguments, consistently with the code in
InsetArgument::updateBuffer (i.e. what was shown on screen).
José Matos [Sat, 13 May 2017 12:39:02 +0000 (13:39 +0100)]
Fix call os lyx2lyx as a module.
If we call parser.parse_args(), thus with no arguments, the parser uses
sys.argv (because that is the default). We should pass argv since that was
the purpose of handling argv in the main function.
With these changes, equation numbers are shown properly on screen.
When setting is default, we guess the side using these two rules
* ams(art|book) and siamltex classes are leqno by default. This is
signalled because the classes provide "leqno" (in amsdefs.inc). If
there are other classes that do this in output, the relevant classes
should be updated.
* the language arabic_arabi also sets leqno by default. This is
currently hardcoded for lack of a better idea.
Besides, a few bugs are fixed:
* use mathrm instead of mathbf for numbers metrics
* set spacing between maths and labels in inches
Kornel Benko [Fri, 12 May 2017 11:55:51 +0000 (13:55 +0200)]
keytests: Make reading of /proc for lyx-status more robust
Often the relevant entry (e.g. /proc/xxxx/status) exists,
but is empty. This led to many tests fail, mostly at
the first tests after the start of the OS.
Never, never use a string for something that has 3 values
This commit replaces the string math_number_before by a proper math_number enum.
Note that the _before naming was misleading. It was chosen at a time
when we were not sure whether leqno was always left or could be right
in RtL documents.
Note that the token in LyX document is still \math_number_before and
this should be changed.
José Matos [Fri, 12 May 2017 09:01:48 +0000 (10:01 +0100)]
python3: fix the preview framework to work with both python 2 and 3 (part 4)
Remove support for python 1.x (really)
This code has not been used for a long time, probably never, since some code
above requires at least python 2.4 to work.
I got to this code by running futurize from python-future. There are no
significant warnings, mostly are related with the division but since
we are dividing floats there is no change between python 2 and 3.
Uwe Stöhr [Thu, 11 May 2017 23:06:05 +0000 (01:06 +0200)]
GuiDocument: support also the class option reqno
as discussed our support for the formula numbering side should be complete. There are document classes that uses left numbering as default and with the class option "reqno" this can be changed to right numbering. reqno requires the loading of amsamth.
Guillaume MM [Tue, 9 May 2017 21:28:32 +0000 (23:28 +0200)]
Smarter Ctrl+{Left,Right} in math.
Consider mathbin, mathrel and mathpunct as word separators. This makes
Ctrl+{Left,Right} more intuitive, quicker, and more different from {Left,Right}.
This takes into account all the feedback from the discussion on the general
list. Further feedback welcome.
José Matos [Tue, 9 May 2017 15:53:32 +0000 (16:53 +0100)]
make python string compliant with python 2 and 3
python 2 does not allow to declare a string as raw byte so we double
the backslashes and remove the r preffix
python 3 accepts rb"..." meaning a byte string that is raw. In this context
raw means that the backslash does not has any special meaning and thus it
is not escaped. This is usefull together with regular expressions where the
backslashes are special.
In the worst possible case, like this one, we must use 4 backslashes to represent
one in the regular expression...
Scott Kostyshak [Tue, 9 May 2017 11:43:17 +0000 (07:43 -0400)]
Revert "Change default working directory from ~/ to ".""
Setting the default working directory to '.' is an invasive change
on Mac and Windows, where the current working directory of LyX when
LyX is started from the GUI is not a reasonable choice for the
default directory in e.g. the "save as" file dialog or the "open"
dialog. A similar situation could happen on Linux distributions (I'm
not aware of any, e.g., POSIX standard that defines that the working
directory of a binary started from GUI should be the home
directory). Thus, it is not clear this default is good on any
platform.
If the user wishes to have the behavior of '.', the description in
the "paths" preferences pane provides the information for making the
change.
Kornel Benko [Sun, 7 May 2017 12:40:08 +0000 (14:40 +0200)]
Keytests: optimize for speed.
The culprit in keytest is the possibility to lose some keystrokes.
The idead here is that the keystokes are cached by QT until some
control character is entered forcing e.g. new dialog.
So, splitting input lines at these characters should be enough
to ensure that the next chars are not lost.
Günter Milde [Thu, 4 May 2017 16:05:18 +0000 (18:05 +0200)]
ctests: move issue with nomenclature insets to a dedicated test case.
iconv fails, if a nomenclature inset contains an uncodable character
This led to failure of the indonesian UserGuide in the attic.
Fix it there and add a minimal, specific test sample instead.
Kornel Benko [Thu, 4 May 2017 11:53:09 +0000 (13:53 +0200)]
Keytests: improve handling of strings to be send to xvkbd
1.) Don't modify the line as it happened at start of sendKeystringLocal()
2.) Split lines on each keysym (e.g. \[Return])
3.) Beatify the debug output of the sent text
findadv: hide word-findadv verb from the mini-buffer
The current set of options to provide include names of
the find and replace internal buffers, something out of
reach for the user. Furthermore, options are provided
using a multi-line syntax, which cannot be entered
using the mini-buffer AFAIK.
Kornel Benko [Tue, 2 May 2017 06:16:00 +0000 (08:16 +0200)]
Cmake build: Correct suffixing on non-gcc-compilers
If the value LYX_PROGRAM_SUFFIX is not handled, we have to use
LYX_PACKAGE_SUFFIX.
The naming 'PACKAGE' in our sources is misleading, as it is used
for the name of the debian/rpm packages as well.