mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 10:00:33 +00:00
These commands should just take some lines.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36131 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
68ec955a6d
commit
f3ae1e2641
@ -283,104 +283,105 @@ def latex_length(slen):
|
|||||||
return (percent, slen)
|
return (percent, slen)
|
||||||
|
|
||||||
|
|
||||||
def revert_flex_inset(document, name, LaTeXname, position):
|
def revert_flex_inset(lines, name, LaTeXname):
|
||||||
" Convert flex insets to TeX code "
|
" Convert flex insets to TeX code "
|
||||||
i = position
|
i = 0
|
||||||
while True:
|
while True:
|
||||||
i = find_token(document.body, '\\begin_inset Flex ' + name, i)
|
i = find_token(lines, '\\begin_inset Flex ' + name, i)
|
||||||
if i == -1:
|
if i == -1:
|
||||||
return
|
return
|
||||||
z = find_end_of_inset(document.body, i)
|
z = find_end_of_inset(lines, i)
|
||||||
if z == -1:
|
if z == -1:
|
||||||
document.warning("Malformed LyX document: Can't find end of Flex " + name + " inset.")
|
document.warning("Can't find end of Flex " + name + " inset.")
|
||||||
return
|
i += 1
|
||||||
|
continue
|
||||||
# remove the \end_inset
|
# remove the \end_inset
|
||||||
document.body[z - 2:z + 1] = put_cmd_in_ert("}")
|
lines[z - 2:z + 1] = put_cmd_in_ert("}")
|
||||||
# we need to reset character layouts if necessary
|
# we need to reset character layouts if necessary
|
||||||
j = find_token(document.body, '\\emph on', i, z)
|
j = find_token(lines, '\\emph on', i, z)
|
||||||
k = find_token(document.body, '\\noun on', i, z)
|
k = find_token(lines, '\\noun on', i, z)
|
||||||
l = find_token(document.body, '\\series', i, z)
|
l = find_token(lines, '\\series', i, z)
|
||||||
m = find_token(document.body, '\\family', i, z)
|
m = find_token(lines, '\\family', i, z)
|
||||||
n = find_token(document.body, '\\shape', i, z)
|
n = find_token(lines, '\\shape', i, z)
|
||||||
o = find_token(document.body, '\\color', i, z)
|
o = find_token(lines, '\\color', i, z)
|
||||||
p = find_token(document.body, '\\size', i, z)
|
p = find_token(lines, '\\size', i, z)
|
||||||
q = find_token(document.body, '\\bar under', i, z)
|
q = find_token(lines, '\\bar under', i, z)
|
||||||
r = find_token(document.body, '\\uuline on', i, z)
|
r = find_token(lines, '\\uuline on', i, z)
|
||||||
s = find_token(document.body, '\\uwave on', i, z)
|
s = find_token(lines, '\\uwave on', i, z)
|
||||||
t = find_token(document.body, '\\strikeout on', i, z)
|
t = find_token(lines, '\\strikeout on', i, z)
|
||||||
if j != -1:
|
if j != -1:
|
||||||
document.body.insert(z - 2, "\\emph default")
|
lines.insert(z - 2, "\\emph default")
|
||||||
if k != -1:
|
if k != -1:
|
||||||
document.body.insert(z - 2, "\\noun default")
|
lines.insert(z - 2, "\\noun default")
|
||||||
if l != -1:
|
if l != -1:
|
||||||
document.body.insert(z - 2, "\\series default")
|
lines.insert(z - 2, "\\series default")
|
||||||
if m != -1:
|
if m != -1:
|
||||||
document.body.insert(z - 2, "\\family default")
|
lines.insert(z - 2, "\\family default")
|
||||||
if n != -1:
|
if n != -1:
|
||||||
document.body.insert(z - 2, "\\shape default")
|
lines.insert(z - 2, "\\shape default")
|
||||||
if o != -1:
|
if o != -1:
|
||||||
document.body.insert(z - 2, "\\color inherit")
|
lines.insert(z - 2, "\\color inherit")
|
||||||
if p != -1:
|
if p != -1:
|
||||||
document.body.insert(z - 2, "\\size default")
|
lines.insert(z - 2, "\\size default")
|
||||||
if q != -1:
|
if q != -1:
|
||||||
document.body.insert(z - 2, "\\bar default")
|
lines.insert(z - 2, "\\bar default")
|
||||||
if r != -1:
|
if r != -1:
|
||||||
document.body.insert(z - 2, "\\uuline default")
|
lines.insert(z - 2, "\\uuline default")
|
||||||
if s != -1:
|
if s != -1:
|
||||||
document.body.insert(z - 2, "\\uwave default")
|
lines.insert(z - 2, "\\uwave default")
|
||||||
if t != -1:
|
if t != -1:
|
||||||
document.body.insert(z - 2, "\\strikeout default")
|
lines.insert(z - 2, "\\strikeout default")
|
||||||
document.body[i:i + 4] = put_cmd_in_ert(LaTeXname + "{")
|
lines[i:i + 4] = put_cmd_in_ert(LaTeXname + "{")
|
||||||
i += 1
|
i += 1
|
||||||
|
|
||||||
|
|
||||||
def revert_font_attrs(document, name, LaTeXname):
|
def revert_font_attrs(lines, name, LaTeXname):
|
||||||
" Reverts font changes to TeX code "
|
" Reverts font changes to TeX code "
|
||||||
i = 0
|
i = 0
|
||||||
changed = False
|
changed = False
|
||||||
while True:
|
while True:
|
||||||
i = find_token(document.body, name + ' on', i)
|
i = find_token(lines, name + ' on', i)
|
||||||
if i == -1:
|
if i == -1:
|
||||||
return changed
|
return changed
|
||||||
j = find_token(document.body, name + ' default', i)
|
j = find_token(lines, name + ' default', i)
|
||||||
k = find_token(document.body, name + ' on', i + 1)
|
k = find_token(lines, name + ' on', i + 1)
|
||||||
# if there is no default set, the style ends with the layout
|
# if there is no default set, the style ends with the layout
|
||||||
# assure hereby that we found the correct layout end
|
# assure hereby that we found the correct layout end
|
||||||
if j != -1 and (j < k or k == -1):
|
if j != -1 and (j < k or k == -1):
|
||||||
document.body[j:j + 1] = put_cmd_in_ert("}")
|
lines[j:j + 1] = put_cmd_in_ert("}")
|
||||||
else:
|
else:
|
||||||
j = find_token(document.body, '\\end_layout', i)
|
j = find_token(lines, '\\end_layout', i)
|
||||||
document.body[j:j] = put_cmd_in_ert("}")
|
lines[j:j] = put_cmd_in_ert("}")
|
||||||
document.body[i:i + 1] = put_cmd_in_ert(LaTeXname + "{")
|
lines[i:i + 1] = put_cmd_in_ert(LaTeXname + "{")
|
||||||
changed = True
|
changed = True
|
||||||
i += 1
|
i += 1
|
||||||
|
|
||||||
|
|
||||||
def revert_layout_command(document, name, LaTeXname, position):
|
def revert_layout_command(lines, name, LaTeXname):
|
||||||
" Reverts a command from a layout to TeX code "
|
" Reverts a command from a layout to TeX code "
|
||||||
i = position
|
i = 0
|
||||||
while True:
|
while True:
|
||||||
i = find_token(document.body, '\\begin_layout ' + name, i)
|
i = find_token(lines, '\\begin_layout ' + name, i)
|
||||||
if i == -1:
|
if i == -1:
|
||||||
return
|
return
|
||||||
k = -1
|
k = -1
|
||||||
# find the next layout
|
# find the next layout
|
||||||
j = i + 1
|
j = i + 1
|
||||||
while k == -1:
|
while k == -1:
|
||||||
j = find_token(document.body, '\\begin_layout', j)
|
j = find_token(lines, '\\begin_layout', j)
|
||||||
l = len(document.body)
|
l = len(lines)
|
||||||
# if nothing was found it was the last layout of the document
|
# if nothing was found it was the last layout of the document
|
||||||
if j == -1:
|
if j == -1:
|
||||||
document.body[l - 4:l - 4] = put_cmd_in_ert("}")
|
lines[l - 4:l - 4] = put_cmd_in_ert("}")
|
||||||
k = 0
|
k = 0
|
||||||
# exclude plain layout because this can be TeX code or another inset
|
# exclude plain layout because this can be TeX code or another inset
|
||||||
elif document.body[j] != '\\begin_layout Plain Layout':
|
elif lines[j] != '\\begin_layout Plain Layout':
|
||||||
document.body[j - 2:j - 2] = put_cmd_in_ert("}")
|
lines[j - 2:j - 2] = put_cmd_in_ert("}")
|
||||||
k = 0
|
k = 0
|
||||||
else:
|
else:
|
||||||
j += 1
|
j += 1
|
||||||
document.body[i] = '\\begin_layout Standard'
|
lines[i] = '\\begin_layout Standard'
|
||||||
document.body[i + 1:i + 1] = put_cmd_in_ert(LaTeXname + "{")
|
lines[i + 1:i + 1] = put_cmd_in_ert(LaTeXname + "{")
|
||||||
i += 1
|
i += 1
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ from parser_tools import find_token, find_end_of, find_tokens, \
|
|||||||
|
|
||||||
from lyx2lyx_tools import add_to_preamble, insert_to_preamble, \
|
from lyx2lyx_tools import add_to_preamble, insert_to_preamble, \
|
||||||
put_cmd_in_ert, lyx2latex, latex_length, revert_flex_inset, \
|
put_cmd_in_ert, lyx2latex, latex_length, revert_flex_inset, \
|
||||||
revert_font_attrs, revert_layout_command, hex2ratio, str2bool
|
revert_font_attrs, hex2ratio, str2bool
|
||||||
|
|
||||||
####################################################################
|
####################################################################
|
||||||
# Private helper functions
|
# Private helper functions
|
||||||
@ -484,9 +484,9 @@ def revert_printindexall(document):
|
|||||||
|
|
||||||
def revert_strikeout(document):
|
def revert_strikeout(document):
|
||||||
" Reverts \\strikeout font attribute "
|
" Reverts \\strikeout font attribute "
|
||||||
changed = revert_font_attrs(document, "\\uuline", "\\uuline")
|
changed = revert_font_attrs(document.body, "\\uuline", "\\uuline")
|
||||||
changed = revert_font_attrs(document, "\\uwave", "\\uwave") or changed
|
changed = revert_font_attrs(document.body, "\\uwave", "\\uwave") or changed
|
||||||
changed = revert_font_attrs(document, "\\strikeout", "\\sout") or changed
|
changed = revert_font_attrs(document.body, "\\strikeout", "\\sout") or changed
|
||||||
if changed == True:
|
if changed == True:
|
||||||
insert_to_preamble(0, document,
|
insert_to_preamble(0, document,
|
||||||
'% Commands inserted by lyx2lyx for proper underlining\n'
|
'% Commands inserted by lyx2lyx for proper underlining\n'
|
||||||
@ -1496,8 +1496,8 @@ def revert_IEEEtran(document):
|
|||||||
" Convert IEEEtran layouts and styles to TeX code "
|
" Convert IEEEtran layouts and styles to TeX code "
|
||||||
if document.textclass != "IEEEtran":
|
if document.textclass != "IEEEtran":
|
||||||
return
|
return
|
||||||
revert_flex_inset(document, "IEEE membership", "\\IEEEmembership", 0)
|
revert_flex_inset(document.body, "IEEE membership", "\\IEEEmembership")
|
||||||
revert_flex_inset(document, "Lowercase", "\\MakeLowercase", 0)
|
revert_flex_inset(document.body, "Lowercase", "\\MakeLowercase")
|
||||||
layouts = ("Special Paper Notice", "After Title Text", "Publication ID",
|
layouts = ("Special Paper Notice", "After Title Text", "Publication ID",
|
||||||
"Page headings", "Biography without photo")
|
"Page headings", "Biography without photo")
|
||||||
latexcmd = {"Special Paper Notice": "\\IEEEspecialpapernotice",
|
latexcmd = {"Special Paper Notice": "\\IEEEspecialpapernotice",
|
||||||
|
Loading…
Reference in New Issue
Block a user