continue
j = find_end_of_inset(document.body, i)
if j == -1:
continue
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in revert_rotfloat.")
i += 1
continue
addedLines = 0
i += 1
continue
addedLines = 0
continue
j = find_end_of_inset(document.body, i)
if j == -1:
continue
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in revert_widesideways.")
i += 1
continue
if get_value(document.body, 'sideways', i, j) == "false" or \
i += 1
continue
if get_value(document.body, 'sideways', i, j) == "false" or \
return
j = find_end_of_inset(document.body, i)
if j == -1:
return
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in revert_inset_embedding.")
i = i + 1
continue
k = find_token(document.body, "\tembed", i, j)
i = i + 1
continue
k = find_token(document.body, "\tembed", i, j)
return
endInset = find_end_of_inset(document.body, i)
if endInset == -1:
return
endInset = find_end_of_inset(document.body, i)
if endInset == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in convert_subfig.")
i += 1
continue
k = find_token(document.body, '\tsubcaption', i, endInset)
i += 1
continue
k = find_token(document.body, '\tsubcaption', i, endInset)
i = find_token(document.body, '\\begin_inset Float ', i)
if i == -1:
return
i = find_token(document.body, '\\begin_inset Float ', i)
if i == -1:
return
+ j = 0
+ addedLines = 0
+ while j != -1:
j = find_end_of_inset(document.body, i)
if j == -1:
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset' (float).")
- i = i + 1
- continue
+ document.warning("Malformed lyx document: Missing '\\end_inset' (float) at line " + str(i + len(document.header)) + ".\n\t" + document.body[i])
+ # document.warning(document.body[i-1] + "\n" + document.body[i+1])
+ i += 1
+ continue # this will get us back to the outer loop, since j == -1
# look for embedded float (= subfloat)
# whitespace intended (exclude \\begin_inset FloatList)
k = find_token(document.body, '\\begin_inset Float ', i + 1, j)
# look for embedded float (= subfloat)
# whitespace intended (exclude \\begin_inset FloatList)
k = find_token(document.body, '\\begin_inset Float ', i + 1, j)
l = find_end_of_inset(document.body, k)
if l == -1:
document.warning("Malformed lyx document: Missing '\\end_inset' (embedded float).")
l = find_end_of_inset(document.body, k)
if l == -1:
document.warning("Malformed lyx document: Missing '\\end_inset' (embedded float).")
+ i += 1
+ j == -1
+ continue # escape to the outer loop
m = find_default_layout(document, k + 1, l)
# caption?
cap = find_token(document.body, '\\begin_inset Caption', k + 1, l)
caption = ''
shortcap = ''
m = find_default_layout(document, k + 1, l)
# caption?
cap = find_token(document.body, '\\begin_inset Caption', k + 1, l)
caption = ''
shortcap = ''
if cap != -1:
capend = find_end_of_inset(document.body, cap)
if capend == -1:
if cap != -1:
capend = find_end_of_inset(document.body, cap)
if capend == -1:
caption += line.strip()
if len(label) > 0:
caption += "\\backslash\nlabel{" + label + "}"
caption += line.strip()
if len(label) > 0:
caption += "\\backslash\nlabel{" + label + "}"
- document.body[l] = '\\begin_layout Plain Layout\n\\begin_inset ERT\nstatus collapsed\n\n' \
- '\\begin_layout Plain Layout\n\n}\n\\end_layout\n\n\\end_inset\n\n\\end_layout\n\n\\begin_layout Plain Layout\n'
- del document.body[cap:capend+1]
+ subst = '\\begin_layout Plain Layout\n\\begin_inset ERT\nstatus collapsed\n\n' \
+ '\\begin_layout Plain Layout\n\n}\n\\end_layout\n\n\\end_inset\n\n' \
+ '\\end_layout\n\n\\begin_layout Plain Layout\n'
+ subst = subst.split('\n')
+ document.body[l : l+1] = subst
+ addedLines = len(subst) - 1
+ # this is before l and so is unchanged by the multiline insertion
+ if cap != capend:
+ del document.body[cap:capend+1]
+ addedLines -= (capend + 1 - cap)
del document.body[k+1:m-1]
del document.body[k+1:m-1]
+ addedLines -= (m - 1 - (k + 1))
insertion = '\\begin_inset ERT\nstatus collapsed\n\n' \
insertion = '\\begin_inset ERT\nstatus collapsed\n\n' \
- '\\begin_layout Plain Layout\n\n\\backslash\n' \
- 'subfloat'
+ '\\begin_layout Plain Layout\n\n\\backslash\n' \
+ 'subfloat'
if len(shortcap) > 0:
insertion = insertion + "[" + shortcap + "]"
if len(caption) > 0:
insertion = insertion + "[" + caption + "]"
insertion = insertion + '{%\n\\end_layout\n\n\\end_inset\n\n\\end_layout\n'
if len(shortcap) > 0:
insertion = insertion + "[" + shortcap + "]"
if len(caption) > 0:
insertion = insertion + "[" + caption + "]"
insertion = insertion + '{%\n\\end_layout\n\n\\end_inset\n\n\\end_layout\n'
- document.body[k] = insertion
+ insertion = insertion.split('\n')
+ document.body[k : k + 1] = insertion
+ addedLines += len(insertion) - 1
add_to_preamble(document,
['\\usepackage{subfig}\n'])
add_to_preamble(document,
['\\usepackage{subfig}\n'])
def revert_wrapplacement(document):
def revert_wrapplacement(document):
return
j = find_end_of_inset(document.body, i)
if j == -1:
return
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in revert_pdfpages.")
i = i + 1
continue
if get_value(document.body, 'template', i, j) == "PDFPages":
i = i + 1
continue
if get_value(document.body, 'template', i, j) == "PDFPages":
return
j = find_end_of_inset(document.body, i)
if j == -1:
return
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed lyx document: Missing '\\end_inset'.")
+ document.warning("Malformed lyx document: Missing '\\end_inset' in revert_graphics_group.")
i = i + 1
continue
k = find_token(document.body, " groupId", i, j)
i = i + 1
continue
k = find_token(document.body, " groupId", i, j)