1234567891011121314151617181920212223242526 |
- #!/usr/bin/env python
- import fileinput
- import re
- import sys
- refs = {}
- complete_file = ""
- for line in open(sys.argv[1], 'r'):
- complete_file += line
- for m in re.findall('\[\[(.+)\]\]\n=+ ([^\n]+)', complete_file):
- ref, title = m
- refs["<<" + ref + ">>"] = "<<" + ref + ", " + title + ">>"
- def translate(match):
- try:
- return refs[match.group(0)]
- except KeyError:
- return ""
- rc = re.compile('|'.join(map(re.escape, sorted(refs, reverse=True))))
- for line in open(sys.argv[1], 'r'):
- print rc.sub(translate, line),
|