Author: esr
Date: Sun Apr  8 06:14:28 2007
New Revision: 16689

URL: http://svn.gna.org/viewcvs/wesnoth?rev=16689&view=rev
Log:
Resource validation is buggy.  Leave a temporary version that does
macros only in the repo.

Modified:
    trunk/data/tools/macroscope

Modified: trunk/data/tools/macroscope
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/data/tools/macroscope?rev=16689&r1=16688&r2=16689&view=diff
==============================================================================
--- trunk/data/tools/macroscope (original)
+++ trunk/data/tools/macroscope Sun Apr  8 06:14:28 2007
@@ -37,14 +37,14 @@
 
 class CrossRef:
     macro_reference = re.compile(r"\{([A-Z_][A-Z0-9_:]*[A-Z0-9_])\b")
-    file_reference =  re.compile(r"(?<==)[^=]*\.{" + 
"|".join(resource_extensions) + "}")
+    file_reference =  re.compile(r"\b[A-Za-z0-9][A-Za-z0-9/-]*\.(" + 
"|".join(resource_extensions) + ")")
     def __init__(self, filelist):
         # First, collect macro definitions from the specified filelist."
         self.xref = {}
         self.fileref = {}
         for filename in filelist:
             if filter(lambda x: x, map(lambda x: filename.endswith("." + x), 
resource_extensions)):
-                self.fileref[filename] = {} 
+                self.fileref[os.path.basename(filename)] = 
(reference(filename), {}) 
             elif iswml(filename):
                 dfp = open(filename)
                 for (n, line) in enumerate(dfp):
@@ -89,7 +89,7 @@
                     for match in re.finditer(CrossRef.file_reference, line):
                         name = match.group(0)
                         if name in self.fileref:
-                            namedict = self.xref[name]
+                            namedict = self.fileref[name][1]
                             if fn not in namedict:
                                 namedict[fn] = []
                             namedict[fn].append(n+1)
@@ -110,11 +110,13 @@
                  print "    %s: %s" % (file, `linenumbers`[1:-1])
     def unresdump(self):
         "Report unresolved references."
-        if len(self.unresolved) == 0 and len(self.missing) == 0:
+        #if len(self.unresolved) == 0 and len(self.missing) == 0:
+        if len(self.unresolved) == 0:
             print "# No unresolved references"
         else:
             print "# Unresolved references:"
-            for (name, reference) in self.unresolved + self.missing:
+            #for (name, reference) in self.unresolved + self.missing:
+            for (name, reference) in self.unresolved:
                 print "%s at %s" % (name, reference)
 
 if __name__ == "__main__":


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to