]> git.lyx.org Git - features.git/blobdiff - lib/lyx2lyx/lyx_1_5.py
ctests: uninvert two xhtml tests
[features.git] / lib / lyx2lyx / lyx_1_5.py
index afacd261646f51acf4ccea829deeb6d3542b5697..4b0fd5cfbbe55ca083e020f787782482c8b35c94 100644 (file)
@@ -24,6 +24,7 @@ import unicodedata
 import sys, os
 
 from parser_tools import find_re, find_token, find_token_backwards, find_token_exact, find_tokens, find_end_of, get_value, find_beginning_of, find_nonempty_line
+from lyx2lyx_tools import insert_document_option
 from LyX import get_encoding
 
 # Provide support for both python 2 and 3
@@ -61,7 +62,7 @@ def find_beginning_of_layout(lines, i):
 def revert_framed(document):
     "Revert framed notes. "
     i = 0
-    while 1:
+    while True:
         i = find_tokens(document.body, ["\\begin_inset Note Framed", "\\begin_inset Note Shaded"], i)
 
         if i == -1:
@@ -216,7 +217,7 @@ def revert_booktabs(document):
     re_bspace = re.compile(r'\s+bottomspace="[^"]+"')
     re_ispace = re.compile(r'\s+interlinespace="[^"]+"')
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset Tabular", i)
         if i == -1:
             return
@@ -420,7 +421,7 @@ def revert_unicode_line(document, i, insets, spec_chars, replacement_character =
                     else:
                         if insets and insets[-1] == "Formula":
                             # avoid putting an ERT in a math; instead put command as text
-                            command = command.replace('\\\\', '\mathrm{')
+                            command = command.replace('\\\\', r'\mathrm{')
                             command = command + '}'
                         elif not insets or insets[-1] != "ERT":
                             # add an ERT inset with the replacement character
@@ -470,14 +471,14 @@ implemented.'''
 def revert_cs_label(document):
     " Remove status flag of charstyle label. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset CharStyle", i)
         if i == -1:
             return
         # Seach for a line starting 'show_label'
         # If it is not there, break with a warning message
         i = i + 1
-        while 1:
+        while True:
             if (document.body[i][:10] == "show_label"):
                 del document.body[i]
                 break
@@ -490,7 +491,7 @@ def revert_cs_label(document):
 
 
 def convert_bibitem(document):
-    """ Convert
+    r""" Convert
 \bibitem [option]{argument}
 
 to
@@ -504,7 +505,7 @@ key "argument"
 This must be called after convert_commandparams.
 """
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\bibitem", i)
         if i == -1:
             break
@@ -575,16 +576,16 @@ commandparams_info = {
 def convert_commandparams(document):
     """ Convert
 
- \begin_inset LatexCommand \cmdname[opt1][opt2]{arg}
- \end_inset
+ \\begin_inset LatexCommand \\cmdname[opt1][opt2]{arg}
+ \\end_inset
 
  to
 
- \begin_inset LatexCommand cmdname
+ \\begin_inset LatexCommand cmdname
  name1 "opt1"
  name2 "opt2"
  name3 "arg"
- \end_inset
+ \\end_inset
 
  name1, name2 and name3 can be different for each command.
 """
@@ -592,7 +593,7 @@ def convert_commandparams(document):
     # convert_bibitem()), but could be read in, so we convert it here, too.
 
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset LatexCommand", i)
         if i == -1:
             break
@@ -680,7 +681,7 @@ def convert_commandparams(document):
 def revert_commandparams(document):
     regex = re.compile(r'(\S+)\s+(.+)')
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset LatexCommand", i)
         if i == -1:
             break
@@ -738,7 +739,7 @@ def revert_nomenclature(document):
     regex = re.compile(r'(\S+)\s+(.+)')
     i = 0
     use_nomencl = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset LatexCommand nomenclature", i)
         if i == -1:
             break
@@ -789,7 +790,7 @@ def revert_printnomenclature(document):
     regex = re.compile(r'(\S+)\s+(.+)')
     i = 0
     use_nomencl = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset LatexCommand printnomenclature", i)
         if i == -1:
             break
@@ -855,7 +856,7 @@ def revert_esint(document):
 def revert_clearpage(document):
     " clearpage -> ERT "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\clearpage", i)
         if i == -1:
             break
@@ -876,7 +877,7 @@ def revert_clearpage(document):
 def revert_cleardoublepage(document):
     " cleardoublepage -> ERT "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\cleardoublepage", i)
         if i == -1:
             break
@@ -895,7 +896,7 @@ def revert_cleardoublepage(document):
 
 
 def convert_lyxline(document):
-    " remove fontsize commands for \lyxline "
+    r" remove fontsize commands for \lyxline "
     # The problematic is: The old \lyxline definition doesn't handle the fontsize
     # to change the line thickness. The new definiton does this so that imported
     # \lyxlines would have a different line thickness. The eventual fontsize command
@@ -934,7 +935,7 @@ def revert_encodings(document):
 def convert_caption(document):
     " Convert caption layouts to caption insets. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_layout Caption", i)
         if i == -1:
             return
@@ -954,7 +955,7 @@ def revert_caption(document):
     " Convert caption insets to caption layouts. "
     " This assumes that the text class has a caption style. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset Caption", i)
         if i == -1:
             return
@@ -1119,7 +1120,7 @@ def convert_accent(document):
     re_contents = re.compile(r'^([^\s{]+)(.*)$')
     re_accentedcontents = re.compile(r'^\s*{?([^{}]*)}?\s*$')
     i = 0
-    while 1:
+    while True:
         i = find_re(document.body, re_wholeinset, i)
         if i == -1:
             return
@@ -1452,13 +1453,13 @@ def revert_utf8plain(document):
 def revert_beamer_alert(document):
     " Revert beamer's \\alert inset back to ERT. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset CharStyle Alert", i)
         if i == -1:
             return
         document.body[i] = "\\begin_inset ERT"
         i = i + 1
-        while 1:
+        while True:
             if (document.body[i][:13] == "\\begin_layout"):
                 # Insert the \alert command
                 document.body[i + 1] = "\\alert{" + document.body[i + 1] + '}'
@@ -1471,13 +1472,13 @@ def revert_beamer_alert(document):
 def revert_beamer_structure(document):
     " Revert beamer's \\structure inset back to ERT. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset CharStyle Structure", i)
         if i == -1:
             return
         document.body[i] = "\\begin_inset ERT"
         i = i + 1
-        while 1:
+        while True:
             if (document.body[i][:13] == "\\begin_layout"):
                 document.body[i + 1] = "\\structure{" + document.body[i + 1] + '}'
                 break
@@ -1550,7 +1551,7 @@ def revert_cv_textclass(document):
 def convert_graphics_rotation(document):
     " add scaleBeforeRotation graphics parameter. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset Graphics", i)
         if i == -1:
             return
@@ -1572,7 +1573,7 @@ def convert_graphics_rotation(document):
 def revert_graphics_rotation(document):
     " remove scaleBeforeRotation graphics parameter. "
     i = 0
-    while 1:
+    while True:
         i = find_token(document.body, "\\begin_inset Graphics", i)
         if i == -1:
             return
@@ -1686,7 +1687,7 @@ def revert_CJK(document):
 
 
 def revert_preamble_listings_params(document):
-    " Revert preamble option \listings_params "
+    r" Revert preamble option \listings_params "
     i = find_token(document.header, "\\listings_params", 0)
     if i != -1:
         document.preamble.append('\\usepackage{listings}')
@@ -1907,13 +1908,7 @@ def revert_ext_font_sizes(document):
 
     i = find_token(document.header, '\\paperfontsize', 0)
     document.header[i] = '\\paperfontsize default'
-
-    i = find_token(document.header, '\\options', 0)
-    if i == -1:
-        i = find_token(document.header, '\\textclass', 0) + 1
-        document.header[i:i] = ['\\options %s' % fontsize]
-    else:
-        document.header[i] += ',%s' % fontsize
+    insert_document_option(document, fontsize)
 
 
 def convert_ext_font_sizes(document):
@@ -2010,10 +2005,10 @@ def convert_arabic (document):
             document.header[i] = "\\language arabic_arabtex"
     i = 0
     while i < len(document.body):
-        h = document.body[i].find("\lang arabic", 0, len(document.body[i]))
+        h = document.body[i].find(r"\lang arabic", 0, len(document.body[i]))
         if (h != -1):
             # change the language name
-            document.body[i] = '\lang arabic_arabtex'
+            document.body[i] = r'\lang arabic_arabtex'
         i = i + 1
 
 
@@ -2025,10 +2020,10 @@ def revert_arabic (document):
             document.header[i] = "\\language arabic"
     i = 0
     while i < len(document.body):
-        h = document.body[i].find("\lang arabic_arabtex", 0, len(document.body[i]))
+        h = document.body[i].find(r"\lang arabic_arabtex", 0, len(document.body[i]))
         if (h != -1):
             # change the language name
-            document.body[i] = '\lang arabic'
+            document.body[i] = r'\lang arabic'
         i = i + 1