diff --git a/INSTALL b/INSTALL deleted file mode 100644 index 5992a62..0000000 --- a/INSTALL +++ /dev/null @@ -1,167 +0,0 @@ -Installing Planet ------------------ - -You'll need at least Python 2.2 installed on your system, we recommend -Python 2.4 though as there may be bugs with the earlier libraries. - -Everything Pythonesque Planet need to provide basic operation should be -included in the distribution. Additionally: - * Usage of XSLT requires either xsltproc or python-libxslt. - * The current interface to filters written in non-templating languages - (e.g., python) uses the subprocess module which was introduced in - Python 2.4. - * Usage of FOAF as a reading list requires librdf. - -Instructions: - - i. - First you'll need to extract the files into a folder somewhere. - I expect you've already done this, after all, you're reading this - file. You can place this wherever you like, ~/planet is a good - choice, but so's anywhere else you prefer. - - ii. - This is very important: from within that directory, type the following - command: - - python runtests.py - - This should take anywhere from a one to ten seconds to execute. No network - connection is required, and the script cleans up after itself. If the - script completes with an "OK", you are good to go. Otherwise stopping here - and inquiring on the mailing list is a good idea as it can save you lots of - frustration down the road. - - iii. - Make a copy of one of the 'ini' the files in the 'examples' subdirectory, - and put them wherever you like; I like to use the Planet's name (so - ~/planet/debian), but it's really up to you. - - iv. - Edit the config.ini file in this directory to taste, it's pretty - well documented so you shouldn't have any problems here. Pay - particular attention to the 'output_dir' option, which should be - readable by your web server. If the directory you specify in your - 'cache_dir' exists, make sure that it is empty. - - v. - Run it: python planet.py pathto/config.ini - - You'll want to add this to cron, make sure you run it from the - right directory. - - vi. (Optional) - Tell us about it! We'd love to link to you on planetplanet.org :-) - - vii. (Optional) - Build your own themes, templates, or filters! And share! - - -Template files --------------- - -The template files used are given as a whitespace separated list in the -'template_files' option in config.ini. The extension at the end of the -file name indicates what processor to use. Templates may be implemented -using htmltmpl, xslt, or any programming language. - -The final extension is removed to form the name of the file placed in the -output directory. - -HtmlTmpl files --------------- - -Reading through the example templates is recommended, they're designed to -pretty much drop straight into your site with little modification -anyway. - -Inside these template files, is replaced with the content -of the 'xxx' variable. The variables available are: - - name .... } the value of the equivalent options - link .... } from the [Planet] section of your - owner_name . } Planet's config.ini file - owner_email } - - url .... link with the output filename appended - generator .. version of planet being used - - date .... { your date format - date_iso ... current date and time in { ISO date format - date_822 ... { RFC822 date format - - -There are also two loops, 'Items' and 'Channels'. All of the lines of -the template and variable substitutions are available for each item or -channel. Loops are created using ... -and may be used as many times as you wish. - -The 'Channels' loop iterates all of the channels (feeds) defined in the -configuration file, within it the following variables are available: - - name .... value of the 'name' option in config.ini, or title - title .... title retreived from the channel's feed - tagline .... description retreived from the channel's feed - link .... link for the human-readable content (from the feed) - url .... url of the channel's feed itself - - Additionally the value of any other option specified in config.ini - for the feed, or in the [DEFAULT] section, is available as a - variable of the same name. - - Depending on the feed, there may be a huge variety of other - variables may be available; the best way to find out what you - have is using the 'planet-cache' tool to examine your cache files. - -The 'Items' loop iterates all of the blog entries from all of the channels, -you do not place it inside a 'Channels' loop. Within it, the following -variables are available: - - id .... unique id for this entry (sometimes just the link) - link .... link to a human-readable version at the origin site - - title .... title of the entry - summary .... a short "first page" summary - content .... the full content of the entry - - date .... { your date format - date_iso ... date and time of the entry in { ISO date format - date_822 ... { RFC822 date format - - If the entry takes place on a date that has no prior entry has - taken place on, the 'new_date' variable is set to that date. - This allows you to break up the page by day. - - If the entry is from a different channel to the previous entry, - or is the first entry from this channel on this day - the 'new_channel' variable is set to the same value as the - 'channel_url' variable. This allows you to collate multiple - entries from the same person under the same banner. - - Additionally the value of any variable that would be defined - for the channel is available, with 'channel_' prepended to the - name (e.g. 'channel_name' and 'channel_link'). - - Depending on the feed, there may be a huge variety of other - variables may be available; the best way to find out what you - have is using the 'planet-cache' tool to examine your cache files. - - -There are also a couple of other special things you can do in a template. - - - If you want HTML escaping applied to the value of a variable, use the - form. - - - If you want URI escaping applied to the value of a variable, use the - form. - - - To only include a section of the template if the variable has a - non-empty value, you can use ..... e.g. - - -

-
- - You may place a within this block to specify an - alternative, or may use ... to - perform the opposite. diff --git a/planet/splice.py b/planet/splice.py index 015b4cd..e95d57f 100644 --- a/planet/splice.py +++ b/planet/splice.py @@ -68,7 +68,10 @@ def splice(): # insert entry information items = 0 for mtime,file in dir: - if index and index[file.split('/')[-1]] not in sub_ids: continue + if index: + base = file.split('/')[-1] + if index.has_key(base) and index[base] not in sub_ids: continue + try: entry=minidom.parse(file) diff --git a/tests/test_idindex.py b/tests/test_idindex.py index d21803f..d27cf18 100644 --- a/tests/test_idindex.py +++ b/tests/test_idindex.py @@ -39,8 +39,9 @@ class idIndexTest(unittest.TestCase): self.assertEqual('tag:planet.intertwingly.net,2006:testfeed1', index['planet.intertwingly.net,2006,testfeed1,1']) self.assertEqual('http://intertwingly.net/code/venus/tests/data/spider/testfeed3.rss', index['planet.intertwingly.net,2006,testfeed3,1']) - for key,value in index.items(): - if value.find('testfeed2')>0: index[key] = value[::-1] + for key in index.keys(): + value = index[key] + if value.find('testfeed2')>0: index[key] = value.swapcase() index.close() from planet.splice import splice