Commit Graph

84 Commits

Author SHA1 Message Date
Günter Milde
a77cfef1c6 Fix some more lyx2lyx round-trips.
Also restore corrupted seminar example.
Add default return value to parser_tools.is_in_inset().
2018-01-24 01:04:14 +01:00
Günter Milde
67eca412ff Fix some lyx2lyx round-trip tests.
Fix cases where lyx2lyx adds changes with every round cycle
uncovered by recent ctest change.

Add optional `delete` argument to parser_tools.get*value():
If True, delete the matching line.

More efficient "allowbreak" con/reversion.
2018-01-23 14:01:30 +01:00
Günter Milde
8da6cdcf23 New lyx2lyx tools.
New lyx2lyx parser tools find_complete_lines() (replaces find_slice),
del_complete_lines(), and find_across_lines(). Default value 0
for start argument in utility functions.

Rework the implementation of dash-conversion.
2018-01-23 09:10:50 +01:00
Günter Milde
8e825de4b2 Fix preamble-code removal in lyx2lyx. Do some optimizations.
Fix failure of revert_dashes() found by lyx2lyx ctests
using an efficient function to find a given sequence of lines
in a list of lines.

Some optimizations using Python idioms instead of C-like code.
2018-01-21 19:55:27 +01:00
Günter Milde
6fe2e45f97 Remove trailing whitespace in lyx2lyx. 2018-01-17 09:48:08 +01:00
Richard Heck
73f59e87bd Add ability to use refstyle's plural and capitalization features. 2017-01-02 22:32:36 -05:00
José Matos
cca93dacae Improve the file format upgrade and downgrade for microtype
Add get_bool_value to parser_tools to be used in other places.
Make the upgrade convertion seamless from lyx writing the file (regarding
microtypes, there are still other dragons to chase. :-)
2016-07-13 15:01:17 +01:00
José Matos
9a0d70a45f First step to make lyx2lyx code support both python 2 and python 3 (3.3+)
Most of the changes are related with dictionaries returning views instead of
lists.

xrange -> range (since xrange is gone in python 3)

The code that is special to support both python 2 and 3 is enclosed in a comment
 \# Provide support for both python 2 and 3
and
 \# End of code to support for both python 2 and 3

And so later it can be removed safely when python 2 is no longer supported.
2015-03-11 12:09:18 +00:00
Juergen Spitzmueller
3d8b02b58e Fix bug in get_containing_inset and get_containing_layout
We have to check if this is really a parent (or just the first inset/layout we have).

Candidate for branch.
2015-02-13 10:13:43 +01:00
Juergen Spitzmueller
50a77ab2d1 Fix and simplify par params parsing in get_containing_layout.
The previous verion did not catch \align <alignment>.

Richard, this should go to branch as well.
2014-11-29 10:54:05 +01:00
Richard Heck
f83aab43e5 Whitespace. 2014-04-21 11:52:00 -04:00
Richard Heck
8f044f3c95 Patch to convert Sweave chunk paragraphs to insets (bug #8588). Work
by Liviu (C++) and Richard (Python).
2013-05-30 10:20:34 -04:00
Richard Heck
eba17c9763 Update documentation for parser tools a bit. 2013-05-23 16:11:47 -04:00
Uwe Stöhr
d750b6610f fix some more typos spotted by Yuri 2013-04-19 23:26:58 +02:00
Juergen Spitzmueller
ef541d474c Improve overprint conversion.
Deeply nested sequences are still problematic.
2012-12-20 13:29:04 +01:00
Juergen Spitzmueller
4f36061811 Proper support for beamer overprint environment
This has a list-like structure (with \onslide item commands). The previous implementation was rather useless, since it required lots of ERT. Since the new implementation is so different, we use ERT for conersion/reversion.

The lyx2lyx routines are not yet perfect, though.
2012-12-19 19:33:39 +01:00
Juergen Spitzmueller
d073cfb458 Support for beamer block arguments (#3280) 2012-12-09 17:19:21 +01:00
Juergen Spitzmueller
95934b8d27 Some refinements in the lyx2lyx methods 2012-12-09 13:41:42 +01:00
Juergen Spitzmueller
280861cd7d Consider paragraph params when placing arguments at paragraph start (#8449) 2012-12-09 11:40:14 +01:00
Juergen Spitzmueller
f8df33c2fd Fix unused get_containing_inset and get_containing layout parser methods and use the latter 2012-12-03 08:42:26 +01:00
Georg Baum
efa0f19836 More sensible longtable caption handling (needed for bug #7412)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40522 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-18 21:27:17 +00:00
Georg Baum
3da2eb41aa did anybody test this?
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40520 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-18 17:48:16 +00:00
Pavel Sanda
aef6b16811 Update FSF address, patch from cornelisbb, #7735.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39523 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-25 23:10:36 +00:00
Pavel Sanda
1246a70abd Update years
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37284 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-21 13:24:23 +00:00
Richard Heck
22c7c7b144 Another try at multirow reversion. What makes this so hard is that we
have to account for the possibility of tables within tables.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36230 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-10 13:41:43 +00:00
Richard Heck
cbbc3d34e3 So I now understand why find_token_exact is called what it is, but it
does not do what it is supposed to do, in general. Still, I guess it is
best left as it is.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36129 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 17:09:43 +00:00
Richard Heck
1702cc1fa2 At least rename this argument to something that makes sense.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36128 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 17:02:26 +00:00
Richard Heck
3f47eb1883 More documentation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36127 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:59:27 +00:00
Richard Heck
6cc1d31e38 Just a bit of safety here.
This 0 default for end is wrong. You should be able to do:
  find_token(lines, token, 0, 0)
and have that return -1. As it is, this is equivalent to:
  find_token(lines, token, 0, len(lines))
But I am afraid to change the default, in case something in lyx_1.2.py
relies upon it somehow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36125 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:43:30 +00:00
Richard Heck
f93c44791d Use del_token where it makes sense to do so.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36124 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:33:29 +00:00
Richard Heck
b1c11faf7e This is the del_token that would be helpful.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36123 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:22:26 +00:00
Richard Heck
fbd0436847 Begin a bunch of comments on the parser tools. You can look through the
file, but it is more helpful to have them summarized here.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36121 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:18:20 +00:00
Richard Heck
665c9d78d5 Add two new routines to parser_tools. Somewhere along the way, I wished
I had these. I'm not going to go back and change more code, but these
will be worth having later.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36120 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 16:04:17 +00:00
Richard Heck
d13394a73b Rename and restructure get_containing_inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36117 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 15:18:47 +00:00
Richard Heck
0e9a0224c1 New routine: get_quoted_value.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36113 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 15:11:37 +00:00
Richard Heck
23499e63ba Move get_value_string to lyx_1_6, since it is only used there. A more
suitable replacement is forthcoming.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36112 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 15:07:32 +00:00
Richard Heck
cd99f162b3 Simplify the get_value routines a bit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36103 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 14:26:14 +00:00
Richard Heck
859468234f Comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36100 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 01:24:38 +00:00
Richard Heck
6628aec30c This routine simply does not do what it claims to do in the comment. And
I cannot see why one would want to do what it actually does. The way it
is used in the code assumes it behaves as it now does, so far as I can
see. In particular, if we find:
	option "some string"
with the call:
	get_value(document.body, "option", i)
then this will return '"some'.

Someone please tell me if I am wrong.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36099 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 01:20:50 +00:00
Richard Heck
e0227fa396 Make sure we don't go beyond the end of the lines.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36096 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 01:03:30 +00:00
Richard Heck
0db238a371 Factor out some common code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36084 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-04 17:39:36 +00:00
Richard Heck
f4190c9e23 Update header.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36066 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-04 15:45:51 +00:00
Richard Heck
5e4493d97b Move generally useful parser routines to parser_tools.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36065 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-04 15:44:32 +00:00
Uwe Stöhr
17c3888d25 lyx2lyx: lyx2lyx: lyx_1_6.py, parser_tools.py:
add some comments


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24246 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-12 13:54:30 +00:00
Uwe Stöhr
c594c4d561 lyx2lyx: lyx_1_6.py, parser_tools.py:
add a conversion routine for the PDF options, fixes http://bugzilla.lyx.org/show_bug.cgi?id=4612

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24245 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-12 13:48:17 +00:00
José Matox
6c57005797 fix bug 4639
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23813 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-18 19:41:50 +00:00
Georg Baum
2d6bc1d0aa Avoid endless loops, e.g when an end_deeper is missing
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17225 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 18:33:36 +00:00
José Matox
de0c8aef7c Give to get value a default argument,
if the value is not found the default value is returned.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14556 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-07 13:59:01 +00:00
José Matox
552a471c99 Start to consolidate the functions in parser tools.
Add a unit testing for parser tools functions.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14536 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-02 14:25:43 +00:00
José Matox
8fc2c1dd05 * LyX.py
* lyx_1_1_5.py
	* lyx_1_2.py
	* lyx_1_3.py
	* lyx_1_4.py
	* lyx_1_5.py

	* parser_tools.py: remove functions that are not generic, i.e.
assume a specific pattern for the file format, and move them to the
places where they are used.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14503 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-27 18:30:13 +00:00