Skip to content
Snippets Groups Projects
Commit 71934259 authored by Greg Wilson's avatar Greg Wilson
Browse files

Merge branch 'gh-pages' of github.com:gvwilson/new-template into gh-pages

parents 4b9fd4f4 fe6be566
No related merge requests found
#!/usr/bin/env python
import sys
from optparse import OptionParser
def main():
'''Main driver.'''
parser = OptionParser()
parser.add_option('-o', '--opening',
default=None, dest='opening', help='Header string')
parser.add_option('-c', '--closing',
default=None, dest='closing', help='Footer string')
args, extras = parser.parse_args()
assert args.opening and args.closing, \
'Must specify opening (-o) and closing (-c) delimiters'
opening = closing = None
bodies = []
if not extras:
opening, content, closing = extract(args, sys.stdin)
else:
for filename in extras:
with open(filename, 'r') as reader:
o, content, c = extract(args, reader)
if opening is None:
opening = o
closing = c
bodies.append(content)
display(opening, *bodies, closing)
def extract(args, reader):
'''Extract content from named file.'''
data = reader.read()
i_opening = data.find(args.opening) + len(args.opening)
i_closing = data.rfind(args.closing)
return data[:i_opening], data[i_opening:i_closing], data[i_closing:]
def display(*blocks):
'''Display all the text.'''
for b in blocks:
print(b)
if __name__ == '__main__':
main()
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment