Changeset 8090
- Timestamp:
- 03/18/08 21:05:43 (5 years ago)
- Location:
- lang/python/coda/trunk/coda
- Files:
-
- 2 modified
-
_output.py (modified) (3 diffs)
-
find_name_error.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/python/coda/trunk/coda/_output.py
r1485 r8090 9 9 print exc 10 10 11 _default_printer = DefaultPrinter()12 11 13 12 class DefaultRecursivePrinter(DefaultPrinter): … … 32 31 33 32 class VoicePrinter(DefaultRecursivePrinter): 34 "output errors with voice "33 "output errors with voice. Windows only" 35 34 def __init__(self): 36 35 DefaultRecursivePrinter.__init__(self) … … 90 89 winsound.PlaySound(*args) 91 90 92 91 class GrowlPrinter(DefaultRecursivePrinter): 92 """Using Growl. Mac only. 93 You need to install Grawl Python Bindings from Grawl SDK. 94 """ 93 95 94 96 def __init__(self): 97 DefaultRecursivePrinter.__init__(self) 98 import Growl 99 g = Growl.GrowlNotifier( 100 applicationName='FindNameError', 101 notifications=['FindNameError', 'NameError']) 102 g.register() 103 self.notify = lambda noteType, desc: g.notify(noteType, noteType, desc) 104 105 def start_file(self): 106 self.errors = [] 107 108 def end_file(self): 109 if self.errors: # is not empty 110 for e in self.errors: 111 self.notify("NameError", "line %s: %s" % e) 112 113 def __call__(self, line_no, argstr): 114 import os 115 DefaultRecursivePrinter.__call__(self, line_no, argstr) 116 self.errors.append((line_no, argstr)) 117 118 119 import os 120 if os.name == "nt": 121 default_printer = SoundPrinter() 122 else: 123 try: 124 default_printer = GrowlPrinter() 125 print "growl" 126 except: 127 default_printer = DefaultRecursivePrinter() -
lang/python/coda/trunk/coda/find_name_error.py
r1485 r8090 1 #!/usr/bin/python 2 1 3 import types 2 4 … … 9 11 _default_stored.add(None) # special value for class definition 10 12 11 from _output import _default_printer13 from _output import DefaultPrinter 12 14 13 def find_name_error(o, stored=_default_stored, printer= _default_printer):15 def find_name_error(o, stored=_default_stored, printer=DefaultPrinter()): 14 16 """Find possibility of NameError 15 17 … … 47 49 48 50 except Exception, e: 51 # raise e 49 52 printer.handle_exception(e) 53 def foo(): 54 a 55 b 56 c 57 50 58 51 59 def recursive(dirname): 52 60 import os 53 from _output import SoundPrinter 54 p = SoundPrinter() 61 from _output import default_printer as p 55 62 56 63 for (dp, dn, fns) in os.walk(dirname): … … 68 75 def watch(targets): 69 76 import os, time 70 from _output import SoundPrinter 71 p = SoundPrinter() 77 from _output import default_printer as p 72 78 def get_mtime(filename): 73 79 return os.stat(filename).st_mtime
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)