X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=macros%2FWordIndex.py;fp=macros%2FWordIndex.py;h=81cd0f963ff5d137f1208b468f2fa66119e9ff8f;hb=ae518e2c1f2e6cb7a519d44127deb2e4d255df72;hp=0000000000000000000000000000000000000000;hpb=4b7dd02a651033602a4e092a981a973dd20573e7;p=geekigeeki.git
diff --git a/macros/WordIndex.py b/macros/WordIndex.py
new file mode 100755
index 0000000..81cd0f9
--- /dev/null
+++ b/macros/WordIndex.py
@@ -0,0 +1,31 @@
+def _macro_WordIndex(argv):
+ s = make_index_key()
+ pages = list(page_list())
+ map = {}
+ word_re = re.compile('[A-Z][a-z]+')
+ for name in pages:
+ for word in word_re.findall(name):
+ try:
+ map[word].append(name)
+ except KeyError:
+ map[word] = [name]
+
+ all_words = map.keys()
+ all_words.sort()
+ last_letter = None
+ # set title
+ for word in all_words:
+ letter = word[0].lower()
+ if letter != last_letter:
+ s = s + '; %s
' % (letter, letter)
+ last_letter = letter
+
+ s = s + '%s