* stop text width from being hardcoded
Introduction
------------
Introduction
------------
Create a config file containing the feeds and their "names" - the names will be
used as the directory name of the maildir for the feed.
Create a config file containing the feeds and their "names" - the names will be
used as the directory name of the maildir for the feed.
+
+Config File Format
+------------------
+
+ [general]
+ state_dir = "/path/to/a/writtable/directory/to/write/state/to"
+ maildir_root = "/path/to/directory/to/write/maildirs/in"
+
+ [http://path/to/a/rss/feed/]
+ maildir = "name of folder to put mail in"
+
+The state_dir in the general section defaults to the current working directory + state.
+The maildir_root defaults to the current working directory + "RSSMaildir".
+
+ def __init__(self,textwidth=70):
self.inheadingone = False
self.inheadingtwo = False
self.inotherheading = False
self.inheadingone = False
self.inheadingtwo = False
self.inotherheading = False
self.inul = False
self.initem = False
self.item = u''
self.inul = False
self.initem = False
self.item = u''
+ self.textwidth = textwidth
HTMLParser.__init__(self)
def handle_starttag(self, tag, attrs):
HTMLParser.__init__(self)
def handle_starttag(self, tag, attrs):
self.text = self.text + u'\n\n'
if self.inparagraph:
self.text = self.text \
self.text = self.text + u'\n\n'
if self.inparagraph:
self.text = self.text \
- + u'\n'.join(textwrap.wrap(self.currentparagraph, 70))
+ + u'\n'.join(textwrap.wrap(self.currentparagraph, self.textwidth))
self.currentparagraph = u''
self.inparagraph = True
elif tag.lower() == "pre":
self.currentparagraph = u''
self.inparagraph = True
elif tag.lower() == "pre":
self.text = self.text \
+ u' * ' \
+ u'\n '.join([a.strip() for a in \
self.text = self.text \
+ u' * ' \
+ u'\n '.join([a.strip() for a in \
- textwrap.wrap(self.item, 67)]) \
+ textwrap.wrap(self.item, self.textwidth - 3)]) \
+ u'\n'
self.item = u''
self.initem = True
+ u'\n'
self.item = u''
self.initem = True
+ u'\n'.join( \
[a \
for a in textwrap.wrap( \
+ u'\n'.join( \
[a \
for a in textwrap.wrap( \
- self.currentparagraph, 70) \
+ self.currentparagraph, self.textwidth) \
elif tag.lower() == "p":
self.text = self.text \
+ u'\n'.join(textwrap.wrap( \
elif tag.lower() == "p":
self.text = self.text \
+ u'\n'.join(textwrap.wrap( \
- self.currentparagraph, 70) \
+ self.currentparagraph, self.textwidth) \
)
self.inparagraph = False
self.currentparagraph = u''
)
self.inparagraph = False
self.currentparagraph = u''
+ u'\n> '.join( \
[a.strip() \
for a in textwrap.wrap( \
+ u'\n> '.join( \
[a.strip() \
for a in textwrap.wrap( \
- self.blockquote, 68)] \
+ self.blockquote, self.textwidth - 2)] \
) \
+ u'\n'
self.inblockquote = False
) \
+ u'\n'
self.inblockquote = False
self.text = self.text \
+ u' * ' \
+ u'\n '.join( \
self.text = self.text \
+ u' * ' \
+ u'\n '.join( \
- [a.strip() for a in textwrap.wrap(self.item, 67)]) \
+ [a.strip() for a in textwrap.wrap(self.item, self.textwidth - 3)]) \
+ u'\n'
self.item = u''
elif tag.lower() == "ul":
+ u'\n'
self.item = u''
elif tag.lower() == "ul":
def gettext(self):
data = self.text
if self.inparagraph:
def gettext(self):
data = self.text
if self.inparagraph:
- data = data + "\n".join(textwrap.wrap(self.currentparagraph, 70))
+ data = data + "\n".join(textwrap.wrap(self.currentparagraph, self.textwidth))
if data[-1] != '\n':
data = data + '\n'
return data
if data[-1] != '\n':
data = data + '\n'
return data