diff options
author | Waylan Limberg <waylan@gmail.com> | 2008-08-09 22:55:44 -0400 |
---|---|---|
committer | Waylan Limberg <waylan@gmail.com> | 2008-08-09 22:55:44 -0400 |
commit | 2b7e391fcd51d3468133f628f2e013574cf16536 (patch) | |
tree | 9aeda2cb0999ecab0531eedb762a7d4f2a233204 /mdx_imagelinks.py | |
parent | b941beb7973025d359f3e7839a5b99ea7f62c534 (diff) | |
download | markdown-2b7e391fcd51d3468133f628f2e013574cf16536.tar.gz markdown-2b7e391fcd51d3468133f628f2e013574cf16536.tar.bz2 markdown-2b7e391fcd51d3468133f628f2e013574cf16536.zip |
reorganized the extensions into a seperate dir. Much cleaner looking file system IMO.
Diffstat (limited to 'mdx_imagelinks.py')
-rw-r--r-- | mdx_imagelinks.py | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/mdx_imagelinks.py b/mdx_imagelinks.py deleted file mode 100644 index e545b24..0000000 --- a/mdx_imagelinks.py +++ /dev/null @@ -1,135 +0,0 @@ -""" -========================= IMAGE LINKS ================================= - - -Turns paragraphs like - -<~~~~~~~~~~~~~~~~~~~~~~~~ -dir/subdir -dir/subdir -dir/subdir -~~~~~~~~~~~~~~ -dir/subdir -dir/subdir -dir/subdir -~~~~~~~~~~~~~~~~~~~> - -Into mini-photo galleries. - -""" - -import re, markdown -import url_manager - - -IMAGE_LINK = """<a href="%s"><img src="%s" title="%s"/></a>""" -SLIDESHOW_LINK = """<a href="%s" target="_blank">[slideshow]</a>""" -ALBUM_LINK = """ <a href="%s">[%s]</a>""" - - -class ImageLinksExtension (markdown.Extension): - - def __init__ (self) : - self.reset() - - def extendMarkdown(self, md, md_globals) : - - self.md = md - - # Stateless extensions do not need to be registered - md.registerExtension(self) - - # Insert a preprocessor before all preprocessors - - preprocessor = ImageLinkPreprocessor() - preprocessor.md = md - md.preprocessors.insert(0, preprocessor) - - def reset(self) : - # May be called by Markdown is state reset is desired - pass - - -class ImageLinkPreprocessor (markdown.Preprocessor): - - def run(self, lines) : - - url = url_manager.BlogEntryUrl(url_manager.BlogUrl("all"), - "2006/08/29/the_rest_of_our") - - - all_images = [] - blocks = [] - in_image_block = False - - new_lines = [] - - for line in lines : - - if line.startswith("<~~~~~~~") : - albums = [] - rows = [] - in_image_block = True - - if not in_image_block : - - new_lines.append(line) - - else : - - line = line.strip() - - if line.endswith("~~~~~~>") or not line : - in_image_block = False - new_block = "<div><br/><center><span class='image-links'>\n" - - album_url_hash = {} - - for row in rows : - for photo_url, title in row : - new_block += " " - new_block += IMAGE_LINK % (photo_url, - photo_url.get_thumbnail(), - title) - - album_url_hash[str(photo_url.get_album())] = 1 - - new_block += "<br/>" - - new_block += "</span>" - new_block += SLIDESHOW_LINK % url.get_slideshow() - - album_urls = album_url_hash.keys() - album_urls.sort() - - if len(album_urls) == 1 : - new_block += ALBUM_LINK % (album_urls[0], "complete album") - else : - for i in range(len(album_urls)) : - new_block += ALBUM_LINK % (album_urls[i], - "album %d" % (i + 1) ) - - new_lines.append(new_block + "</center><br/></div>") - - elif line[1:6] == "~~~~~" : - rows.append([]) # start a new row - else : - parts = line.split() - line = parts[0] - title = " ".join(parts[1:]) - - album, photo = line.split("/") - photo_url = url.get_photo(album, photo, - len(all_images)+1) - all_images.append(photo_url) - rows[-1].append((photo_url, title)) - - if not album in albums : - albums.append(album) - - return new_lines - - -def makeExtension(configs) : - return ImageLinksExtension(configs) - |