#!/usr/bin/env python import os import sys import re def usage(): print """usage: %s header...""" % (os.path.basename(sys.argv[0])) def main(): if len(sys.argv) < 2: usage() sys.exit() overwrite = False first = 1 if len(sys.argv) >= 2 and sys.argv[1] == '-f': overwrite = True first = 2 p = re.compile('[a-zA-Z0-9._-]+\.h') for f in sys.argv[first:]: if not p.match(f): print "Invalid header filename '%s'. Header not created" % f continue if not overwrite and os.path.exists(f): print "Header file '%s' already exists. Use -f to override." % f continue print "Creating %s..." % f q = re.compile('[.-]') define = q.sub('_', f.upper()) f = open(f, 'w') f.write('#ifndef _%s_\n' % define) f.write('#define _%s_\n\n' % define) f.write('/* TODO: Your code here */\n\n') f.write('#endif /* _%s_ */' % define) f.close() print "Finished" if __name__ == '__main__': main()