From 975f334b7cf1ab36c1bdb0d05b33c9b06cb39e71 Mon Sep 17 00:00:00 2001 From: Richard Darst Date: Wed, 01 Jul 2009 22:43:38 +0000 Subject: Change format of writer_map - we don't store already-instantiated classes in writer_map. The writers are now instantiated with the meeting object as the argument. darcs-hash:20090701224338-82ea9-1abfb53173ce382764868b6c57a5b2929b36a991.gz --- (limited to 'writers.py') diff --git a/writers.py b/writers.py index 57cf7b0..8ea62b6 100644 --- a/writers.py +++ b/writers.py @@ -19,17 +19,20 @@ def rst(text): return text class _BaseWriter(object): - pass + def __init__(self, M): + self.M = M -class TextLog(object): - def format(self, M): +class TextLog(_BaseWriter): + def format(self): + M = self.M """Write raw text logs.""" return "\n".join(M.lines) -class HTMLlog(object): - def format(self, M): +class HTMLlog(_BaseWriter): + def format(self): """Write pretty HTML logs.""" + M = self.M # pygments lexing setup: # (pygments HTML-formatter handles HTML-escaping) import pygments @@ -57,9 +60,10 @@ class HTMLlog(object): return out -class HTML(object): - def format(self, M): +class HTML(_BaseWriter): + def format(self): """Write the minutes summary.""" + M = self.M data = [ ] if M._meetingTopic: pageTitle = "%s: %s"%(M.channel, M._meetingTopic) @@ -145,12 +149,10 @@ class HTML(object): return "\n".join(data) -class RST(object): - def __init__(self): - pass - - def format(self, M): +class RST(_BaseWriter): + def format(self): """Return a ReStructured Text minutes summary.""" + M = self.M dedent = textwrap.dedent wrap = textwrap.wrap fill = textwrap.fill @@ -307,11 +309,12 @@ class RST(object): #osys.exit() return body -class HTMLfromRST(object): +class HTMLfromRST(_BaseWriter): - def format(self, M): + def format(self): + M = self.M import docutils.core - rst = RST().format(M) + rst = RST(M).format() rstToHTML = docutils.core.publish_string(rst, writer_name='html', settings_overrides={'file_insertion_enabled': 0, 'raw_enabled': 0}) -- cgit v0.9.1