diff options
| author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2019-08-11 12:17:57 +0200 | 
|---|---|---|
| committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2019-08-11 12:17:57 +0200 | 
| commit | c8ea3b672655ddab746a7aea5a50217057b02b9e (patch) | |
| tree | 01a0e712f4cf32c7140cf1a4ae14db4da4202253 /engine/SCons/Scanner/LaTeX.py | |
| parent | ca7be46fc0013fc037a045b6d4df73776461e821 (diff) | |
| parent | f6c9bffb15e04ea412db4df22a3851448221b85a (diff) | |
mergedebian/3.1.1-1
Diffstat (limited to 'engine/SCons/Scanner/LaTeX.py')
| -rw-r--r-- | engine/SCons/Scanner/LaTeX.py | 36 | 
1 files changed, 14 insertions, 22 deletions
diff --git a/engine/SCons/Scanner/LaTeX.py b/engine/SCons/Scanner/LaTeX.py index 89925ff..37970d0 100644 --- a/engine/SCons/Scanner/LaTeX.py +++ b/engine/SCons/Scanner/LaTeX.py @@ -5,7 +5,7 @@ This module implements the dependency scanner for LaTeX code.  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -27,7 +27,7 @@ This module implements the dependency scanner for LaTeX code.  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Scanner/LaTeX.py 74b2c53bc42290e911b334a6b44f187da698a668 2017/11/14 13:16:53 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/LaTeX.py 72ae09dc35ac2626f8ff711d8c4b30b6138e08e3 2019-08-08 14:50:06 bdeegan"  import os.path  import re @@ -128,8 +128,8 @@ class LaTeX(SCons.Scanner.Base):      Unlike most scanners, which use regular expressions that just      return the included file name, this returns a tuple consisting      of the keyword for the inclusion ("include", "includegraphics", -    "input", or "bibliography"), and then the file name itself.   -    Based on a quick look at LaTeX documentation, it seems that we  +    "input", or "bibliography"), and then the file name itself. +    Based on a quick look at LaTeX documentation, it seems that we      should append .tex suffix for the "include" keywords, append .tex if      there is no extension for the "input" keyword, and need to add .bib      for the "bibliography" keyword that does not accept extensions by itself. @@ -137,7 +137,7 @@ class LaTeX(SCons.Scanner.Base):      Finally, if there is no extension for an "includegraphics" keyword      latex will append .ps or .eps to find the file, while pdftex may use .pdf,      .jpg, .tif, .mps, or .png. -     +      The actual subset and search order may be altered by      DeclareGraphicsExtensions command. This complication is ignored.      The default order corresponds to experimentation with teTeX:: @@ -179,15 +179,7 @@ class LaTeX(SCons.Scanner.Base):                          'inputfrom', 'subinputfrom']      def __init__(self, name, suffixes, graphics_extensions, *args, **kw): - -        # We have to include \n with the % we exclude from the first part -        # part of the regex because the expression is compiled with re.M. -        # Without the \n,  the ^ could match the beginning of a *previous* -        # line followed by one or more newline characters (i.e. blank -        # lines), interfering with a match on the next line. -        # add option for whitespace before the '[options]' or the '{filename}'          regex = r''' -            ^[^%\n]*              \\(                  include                | includegraphics(?:\s*\[[^\]]+\])? @@ -333,7 +325,7 @@ class LaTeX(SCons.Scanner.Base):          line_continues_a_comment = False          for line in text.splitlines():              line,comment = self.comment_re.findall(line)[0] -            if line_continues_a_comment == True: +            if line_continues_a_comment:                  out[-1] = out[-1] + line.lstrip()              else:                  out.append(line) @@ -348,8 +340,8 @@ class LaTeX(SCons.Scanner.Base):          # Cache the includes list in node so we only scan it once:          # path_dict = dict(list(path))          # add option for whitespace (\s) before the '[' -        noopt_cre = re.compile('\s*\[.*$') -        if node.includes != None: +        noopt_cre = re.compile(r'\s*\[.*$') +        if node.includes is not None:              includes = node.includes          else:              text = self.canonical_text(node.get_text_contents()) @@ -372,9 +364,9 @@ class LaTeX(SCons.Scanner.Base):                      inc_list = include[2].split(',')                  else:                      inc_list = include[1].split(',') -                for j in range(len(inc_list)): -                    split_includes.append( (inc_type, inc_subdir, inc_list[j]) ) -            # +                for inc in inc_list: +                    split_includes.append((inc_type, inc_subdir, inc)) +              includes = split_includes              node.includes = includes @@ -386,8 +378,8 @@ class LaTeX(SCons.Scanner.Base):          directory of the main file just as latex does"""          path_dict = dict(list(path)) -         -        queue = []  + +        queue = []          queue.extend( self.scan(node) )          seen = {} @@ -402,7 +394,7 @@ class LaTeX(SCons.Scanner.Base):          source_dir = node.get_dir()          #for include in includes:          while queue: -             +              include = queue.pop()              inc_type, inc_subdir, inc_filename = include  | 
