diff --git a/scripts/generate-qrc.py b/scripts/generate-qrc.py new file mode 100755 index 000000000..93373e611 --- /dev/null +++ b/scripts/generate-qrc.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python + +# +# Improved version of rcc --project +# +import sys +import os +import re +import argparse + +parser = argparse.ArgumentParser(description='Improved version of rcc --project') +parser.add_argument('theme') +parser.add_argument('--cwd', default='.') +parser.add_argument('--prefix', default='') +parser.add_argument('--output', '-o') +parser.add_argument('--include', '-i', default='.*', help='Default inclusion regex') +parser.add_argument('--exclude', '-e', default='a^', help='Default exclusion regex') + +args = parser.parse_args() + +out = sys.stdout +if args.output: + out = open(args.output, 'w') + +print>>out, '' +print>>out, '' +print>>out, '' % args.prefix + +include = re.compile(args.include) +exclude = re.compile(args.exclude) + +os.chdir(args.cwd) +for (dirpath, dirnames, filenames) in os.walk(args.theme): + for f in filenames: + path = os.path.join(dirpath, f) + relpath = os.path.relpath(path, args.theme) + + if not include.search(relpath): + continue + + if exclude.search(relpath): + continue + + print>>out, ' %s' % (relpath, path) +print>>out, '' +print>>out, ''