Saturday, October 29, 2005

DirectoryTool for Radio UserLand

My background in directories

I first started creating directories with a UserLand Manila website (Wayback Archive link) hosted by Weblogger. Manila supports rendering of OPML files to create the type of directory structure you would see at Yahoo or the Open Directory Project. Some time later, I started using Radio UserLand to publish a companion weblog. However, I still used my Manila site to maintain my directory. After a while of using two weblog applications, I decided I wanted to use Radio UserLand to publish my directory so that I could cut back to one weblog tool. I looked at the DirectoryFrame macro available in Radio UserLand, but I wanted to be able to render all of the HTML pages locally instead of depending on a web service to perform the rendering.

DirectoryTool is now available

Using DirectoryTool for Radio UserLand, you can:
  • Create directory files using the Radio UserLand outliner
  • Generate HTML files corresponding to your directory structure
  • Automatically upload your directory to your Radio UserLand weblog
DirectoryTool comes with a built-in tool website that describes how to use the tool and how to use the Radio UserLand outliner to create directories.

Getting started with DirectoryTool

Here are some important links:
  • DirectoryTool project page (contains download and installation information)
  • Knowledgeorama weblog category for DirectoryTool
  • DirectoryTool documentation (local link in Radio UserLand after tool has been installed)
Let me know what you like (or don't like) about the tool by clicking on the envelope icon or by commenting on this post. Also, I will keep a directory of people who are using DirectoryTool, so send me your directory URLs.

Support for DirectoryTool

For now, I will monitor the Radio Userland discussion group hosted by UserLand for support questions. If the traffic gets too high, I will look into other options.

Over the next week, I will be highlighting topics from my Knowledgeorama directory. As others start using DirectoryTool, I will list thost sites.

Let's hear from you!

9:24:07 PM    

Announcement for the Knowledgeorama weblog

About This Site

Knowledgeorama is a weblog about knowledge and the tools that can help you find and collect information, organize information, and create new sources of knowledge for yourself and others.

Some of the topic areas for this weblog include:

  1. Knowledge weblogs (k-logs)

  2. Knowledge management

  3. Using weblogs as a knowledge collection tool

  4. Using RSS readers and search tools

  5. Synthesizing information into knowledge

I am using Radio UserLand to create this weblog, and my uses of that tool will also be a focus for this weblog. However, there will be articles on the more general topic areas as well, so the appeal of Knowledgeorama should extend beyond Radio UserLand users.

About the name "Knowledgeorama"

I chose this name to evoke the image of the panorama of the World Wide Web, an information universe waiting to be tapped and used.

Let's get started!

8:44:21 PM    

  Thursday, October 27, 2005

More website work

Added a license file and link from the Directory Tool page following an example from Mark Paschal. Also added some links to the index page for the Directory Tool. Copied navigationlinks.xml from main weblog to devknowledgeorama folder, added a link to Scripting News.

Edited template.txt in devknowledgeorama folder, changed title macro to Knowledgeorama. Published, did not see changes on Knowledgeorama site. Made same edit to homeTemplate.txt, published, finally saw the changes on Knowledgeorama site. Will probably need to republish everything to get those changes to be incorporated in past entries.

Found this page on the Radio UserLand site mentioning how to add the Spam-Free MailTo envelope link. It was already in homeTemplate.txt, but decided to duplicate it before navigationLinks macro.

12:14:27 AM    

  Wednesday, October 26, 2005

Final Directory Tool testing

Working to add feature to Directory Tool to force uploads:
  • Added the following line to the end of directoryScript: radio.upstream.folderNeedsUpstream(DirectoryToolData. prefs.weblogDirectoryPath + pc)
  • Deleted directory files from web server
  • Directed directory text files from www/directory folder
  • Did a test, everything worked. Need to add some text to the documentation to say that upstreaming happens after the "Directory generation is complete" message.
  • May want to add some code to check on, so that people using older versions of Radio UserLand will be able to use the tool without the folderNeedsUpstream verb call.
  • Created workspace.versionTest to play with manipulating the version number, added debugged code to directoryScript in DirectoryTool.root.
  • Repeated earlier test conditions, everything worked.
  • Copied new code to workspace.versionTest.
  • Quit Radio UserLand, saved copy of DirectoryTool.root to Radio UserLand/test folder.
  • Copied release version of tool from alsylves/Documents/Directory Tool Archive/Release/0.8 to Radio UserLand/Tools
  • Started Radio UserLand, added code to directoryScript, updated release date to 10/30/2005

5:54:49 AM    

  Tuesday, October 25, 2005

Testing rendering of OPML files

Created a projects folder within the devknowledgeorama folder and created index.opml as a test. Tried to use the radio.upstream.folderNeedsScan verb, but had some problems (did not see upstreaming). Tried another version of this verb (radio.upstream.folderNeedsUpstream), but still no luck. Finally, I added another colon at the end of the path to the folder, and that seems to have made it work.

Downloaded the rules OPML file from Mark Woods' article on writing renderers in Radio UserLand. Typed some text in index.opml, saw the rendered results on the web site. Noticed that the title of the page is echoed in the main page text. Copied template.txt from devknowledgeorama folder, deleted the second of the following two lines:
p class="title" title

That eliminated the title from the main text. After that worked, I created a subfolder in projects called directorytool, and copied the template.txt and index.opml file from the projects folder. Edited the index.opml file, had to use radio.upstream.folderNeedsUpstream to get the folder to upload. I guess the folderNeedsScan will not work if the folder has not been upstreamed at least once.

Did a test of the Directory Tool by deleting all of the directory files on the web server and running the tool. Saw the expectecd dialog boxes for each directory being rendered, but none of the files were uploaded. Used the radio.upstream.folderNeedsUpstream verb to move the rendered files to the web server. Will need to update the tool and documentation to handle this problem.

5:26:47 AM    

  Sunday, October 23, 2005

Experimenting with publishCategoryRss

Decided to try my hand at a little dabbling. Copied radio.weblogs.publishCategoryRss to workspace.myPublishCategoryRss. Made some edits and ran it as a standalone script, saw that I could make changes in the script and see changes in the category RSS file. Made updates to the following prefs:
  • weblogData.categories.DevKnowledgeorama.description - Changed description to "This is a test"
  • weblogData.categories.DevKnowledgeorama.displayName - Changed from "DevKnowledgeorama" to "Knowledgeorama"
  • weblogData.prefs.managingEditor - Changed from "" to ""
  • weblogData.prefs.webmaster - Changed from "" to ""
Ran my local script, saw updates in all of the elements I wanted to see in my category RSS file. Next, I added a callback (publishCategoryRSS) in I gave the table the address of workspace.myPublishCategoryRss. Made a post update, but did not see the title element in my category RSS file update the way I wanted.

As Tom Clifton mentioned in his post I referenced yesterday, it looks like adding a callback for publishCategoryRss did not work. Did some searching for a solution, found this page from Mark Woods on running macros to generate new pages. Following his lead, created table, copied myPublishCategoryRss to it, then edited index.txt in the category folder to add a call to this script. However, this did not have any effect on the category RSS file.

Looked some more for other ideas, saw this page describing ways to publish a Radio category to a Salon weblog, read Mark Paschal's trick of waiting a few seconds in his Footbridge tool to be able to access data in weblogData.root. Decided to add a callback in to my script, since that should run after all of the normal publishing tasks are complete. Checked my category RSS file, and that seems to have done the trick! Deleted the following changes:
  • Addition of macro to index.txt in category folder
  • table
  • callbacks.publishCategoryRss callback table
This appeared again to produce the desired result. Brought up the desktop home page, however, and saw that the name of the category in the list had changed from DevKnowledgeorama to Knowledgeorama. Decided to add a new string to weblogData.categories.DevKnowledgeorama (titleName) and set it to "Knowledgeorama". Also set weblogData.categories.DevKnowledgeorama.displayName back to DevKnowledgeorama, and updated workspace.myPublishCategoryRss to use titleName for setting up the title included in the RSS file. Saw on the home page that the category name was back to DevKnowledgeorama. Did a publish, saw that the category RSS feed had the title I wanted.

Did a few tests with uploading other files. Created a gems directory in the devknowledgeorama folder, saw it upstreamed. Added a OPML file, saw it upstreamed fairly quickly.

1:56:39 PM    

  Saturday, October 22, 2005

Looking at RSS generation for categories

As I mentioned in the previous post, the RSS link was to the category URL. After I added a new upstream.xml file in the category folder, the link element in the channel element now has the URL of the new upstream location, so this will probably look OK in my final version. However, I would like to change several other elements within the channel element, such as title, description, managingEditor, and webmaster. Started doing some looking at how to do this. It appears that there is a script (radio.weblogs.writeRssFile) that creates the RSS file for main weblogs. Dave Winer replied to a Radio UserLand user who wanted to change some elements, saying that this script could be copied to and that it would run instead of the normal script. Tom Clifton also found that there is a script (radio.weblog.publishCategoryRSS) which might also shed some light on this subject. In the early days of Radio UserLand, Jon Udell and Sam Ruby had some changes to writeRssFile. Rick Klau also found some of the same threads when he tried to shorten his RSS posts. Dave Winer first wrote about writeRssFile in May 2002.

Matt Mower started a thread proposing a more flexible way of generating RSS files in Radio UserLand and mentioning that he has a reference implementation in his LiveTopics tool. Dave Winer responded suggesting he do something simpler than re-architecting the entire writeRssFile process, and Matt replied to that message.

It looks like there is more to the topic of category RSS generation than meets the eye. I am going to delay my launch of the Knowledgeorama weblog until I can resolve this issue.

8:52:21 PM    

Testing modifying prefs.txt

Here is another test of the DevKnowledgeorama cateogry. I added a line to prefs.txt in the category folder to change the site name in the banner.

Did a post, no change. Changed prefs.txt to change the categoryName pref to Knowledgeorama and posted again. This time, the post did not appear in the category. Changed it back, published again, saw this entry in the category again.

Took a look at the Radio UserLand book, decided to try applying a different theme to the category. Selected the Moveable Type Heat theme, republished the entry. I saw the entries in the new theme (I think I will use that one for the main site). Checked the category folder, saw that there was another set of template files in the folder. Decided to edit the home page template to change the title in the banner (replaced siteName with Knowledgeorama). Republished, saw the banner updated - woohoo! Replaced description macro with a different one, republished, saw the updated description!

Next, I went back to the category testing entry and followed the instructions for adding the items and title link to items. Republished, saw the titles with links.

Next testing steps;
  • Check the RSS feed to see if everything is correct (looked at rss.xml in devknowledgeorama folder, saw that the links are to the category URL)
  • Change the upstreaming path to go to a different folder (copied upstream.xml from www folder to devknowledgeorama folder)
  • Check to see if the gems folder is uploaded to the new location. If it is not, create a new gems folder within the category folder and see if that is uploaded.
  • Create a folder in the directory folder for the Projects section of the website and see if that is uploaded properly.
  • Create a OPML file and work out the proper rules to formet the text for the section.

8:27:33 AM    

  Thursday, October 20, 2005

Testing categories

This is a test post to the DevKnowledgeorama category.

When I made the post, I did not see the title on the post. Decided to try adding a link to Dave Winer's weblog in the Link field to see what would happen. When I republished the item, I still did not see the title and link. I then returned to the prefs page for enabling titles and links, and I followed the link to a Radio UserLand page on titles and links. It looks like I need to add macro to the item template (itemTitle). Went to the prefs page for the item template and added the macro, then republished the item. I then saw a title with the Dave Winer link on this category post and on the previous main page post. Success!

I noticed on the category main page that the category title (DevKnowledgeorama) is at the top of the page. It looks like I could edit prefs.txt in the category folder to change the page title.

8:52:06 PM    

Getting my first weblog set up

Set up an email account at GoDaddy today (, waiting to send an email to test it. Once I have that set up, I am going to start transferring my Yahoo email lists to that account.

Started setting up options for my first weblog:
  • Enabled categories, saw the default ones on the desktop home page.
  • Enabled item title and link pref

8:29:33 PM