diff options
author | Richard Darst <rkd@zgib.net> | 2009-07-07 20:06:21 (GMT) |
---|---|---|
committer | Richard Darst <rkd@zgib.net> | 2009-07-07 20:06:21 (GMT) |
commit | aded36e115745c500c23ae06cfd283298dbddf3a (patch) | |
tree | 874aa0a0a8c890ccbd05a0b3d7f4ca93f6ee7f98 | |
parent | cf146c429e093b7cb324fc401016df6551ea87a8 (diff) |
Improve mechanisms of encoding
- we now let writers return already-encoded text, this helps in a few
cases.
darcs-hash:20090707200621-82ea9-e012cd62add13db0c62016414585846a6ed817f7.gz
-rw-r--r-- | meeting.py | 4 | ||||
-rw-r--r-- | writers.py | 11 |
2 files changed, 6 insertions, 9 deletions
@@ -158,8 +158,10 @@ class Config(object): # If it doesn't, then it's assumed that the write took # care of writing (or publishing or emailing or wikifying) # it itself. + if isinstance(text, unicode): + text = self.enc(text) if isinstance(text, (str, unicode)): - self.writeToFile(self.enc(text), rawname+extension) + self.writeToFile(text, rawname+extension) def writeToFile(self, string, filename): """Write a given string to a file""" # The reason we have this method just for this is to proxy @@ -140,7 +140,8 @@ class HTMLlog(_BaseWriter): # That's only right before the i/o functions in the Config # object. formatter = HtmlFormatter(lineanchors='l', - full=True, style=M.config.pygmentizeStyle) + full=True, style=M.config.pygmentizeStyle, + output_encoding=self.M.config.output_codec) Lexer = IrcLogsLexer Lexer.tokens['msg'][1:1] = \ [ # match: #topic commands @@ -390,11 +391,5 @@ class HTMLfromReST(_BaseWriter): rstToHTML = docutils.core.publish_string(rst, writer_name='html', settings_overrides={'file_insertion_enabled': 0, 'raw_enabled': 0, - 'output_encoding':'utf-8'}) - # Unfortunantly, docutils forces us to encode to some charset. - # We have to return a utf-8 thing to be encoded later, so we - # hack decode here, only to be re-encoded later. (I've dug - # into the docutils internals, it's not obvious that I could - # do this easily.) - rstToHTML = rstToHTML.decode('utf-8', 'replace') + 'output_encoding':self.M.config.output_codec}) return rstToHTML |