Monday, November 08, 2010 at 12:05 AM.

on blogroll (opmlUrl, flProcessMacros=false, cssPrefix="blogroll", flXmlButton=true, recentlyUpdatedLinkPrefix="", recentlyUpdatedLinkSuffix="") {
		<<7/29/02; 2:02:27 AM by JES
			<<New optional parameters, recentlyUpdatedLinkPrefix and recentlyUpdatedLinkSuffix, specify snippets of HTML text to prepend and append to links generated from OPML elements that have an isRecent attribute whose value is true.
		<<5/28/02; 2:21:58 PM by JES
			<<New optional parameter, flXmlButton specifies whether to add an XML button after the links. Defaults to true.
		<<5/28/02; 1:54:19 PM by JES
			<<Changed the default value of flProcessMacros to false.
		<<5/23/02; 4:54:50 PM by JES
			<<Call through instead of rendering here.
		<<5/22/02; 3:37:18 PM by JES
			<<Created. Renders blogroll links given the URL of an OPML file.
	return ( (opmlUrl, flProcessMacros, cssPrefix, flXmlButton:flXmlButton, recentlyUpdatedLinkPrefix:recentlyUpdatedLinkPrefix, recentlyUpdatedLinkSuffix:recentlyUpdatedLinkSuffix))};

<<bundle //test code
	<<local (f = + "gems" + file.getPathChar () + "mySubscriptions.opml")
	<<local (url = radio.upstream.getFileUrl (f))
	<<local (startticks = clock.ticks ())
	<<blogroll (url, false)
	<<local (totalticks = clock.ticks () - startticks)
	<<dialog.notify (totalticks)

This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.