If get_containing_layout() finds a layout without name,
it will return an empty string as layoutname.
Calling functions can thus differentiate between missing
\begin_layout and missing layoutname and give a more specific
response or warning.
* use unicode.transform() instead of loop over replacements
* telling variable names
* remove trailing whitespace
* documentation update
* don't set use_ligature_dashes if both dash types are found
* remove spurious warning, normalize indentation, and use
Python idioms in revert_baselineskip()
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.
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.
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.
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. :-)
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.
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.
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
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
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
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
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
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