summaryrefslogtreecommitdiff
path: root/Mac/scripts/findgremlins.py
diff options
context:
space:
mode:
Diffstat (limited to 'Mac/scripts/findgremlins.py')
-rw-r--r--Mac/scripts/findgremlins.py57
1 files changed, 0 insertions, 57 deletions
diff --git a/Mac/scripts/findgremlins.py b/Mac/scripts/findgremlins.py
deleted file mode 100644
index 3569c77992..0000000000
--- a/Mac/scripts/findgremlins.py
+++ /dev/null
@@ -1,57 +0,0 @@
-"""findgremlins - Search through a folder and subfolders for
-text files that have characters with bit 8 set, and print
-the filename and a bit of context.
-
-By Just, with a little glue by Jack"""
-
-import EasyDialogs
-import MacOS
-import re
-import os
-import string
-import sys
-
-xpat = re.compile(r"[\200-\377]")
-
-def walk(top, recurse=1):
- if os.path.isdir(top):
- if recurse:
- for name in os.listdir(top):
- path = os.path.join(top, name)
- walk(path)
- else:
- cr, tp = MacOS.GetCreatorAndType(top)
- if tp in ('TEXT', '\0\0\0\0') and top[-4:] <> ".hqx":
- data = open(top).read()
- badcount = 0
- for ch in data[:256]:
- if ord(ch) == 0 or ord(ch) >= 0200:
- badcount = badcount + 1
- if badcount > 16:
- print `top`, 'appears to be a binary file'
- return
- pos = 0
- gotone = 0
- while 1:
- m = xpat.search(data, pos)
- if m is None:
- break
- if not gotone:
- print `top`
- gotone = 1
- [(i, j)] = m.regs
- print " ", string.replace(data[i-15:j+15], '\n', ' ')
- pos = j
-
-def main():
- if sys.argv[1:]:
- for pathname in sys.argv[1:]:
- walk(pathname)
- else:
- pathname = EasyDialogs.AskFolder()
- if pathname:
- walk(pathname)
-
-if __name__ == '__main__':
- main()
-