Monday, November 08, 2010 at 12:05 AM.
system.verbs.builtins.radio.outliner.menuCommands.postToWeblog
on postToWeblog () { <<Changes <<4/8/02; 10:24:40 AM by DW <<In the previous version it would just take the text of the cursor headline. In the new version it traverses the cursor outline, marking it up with <ul>s and <li>s, and posts that to your weblog. <<3/25/02; 8:41:39 PM by JES <<Created. bundle { //set the initial post text local (s, indentlevel = 0); on doline () { local (lt = op.getlinetext ()); if indentlevel > 0 { s = s + string.filledstring ("\t", indentlevel) + "<li>" + lt + "</li>"} else { s = s + "<b>" + lt + "</b>"}; if op.countsubs (1) > 0 { local (flcollapse = true); if op.subsexpanded () { flcollapse = false} else { op.expand (1)}; op.go (right, 1); s = s + "<ul>\r"; indentlevel++; loop { doline (); if not op.go (down, 1) { break}}; indentlevel--; s = s + string.filledstring ("\t", indentlevel) + "</ul>\r"; op.go (left, 1); if flcollapse { op.collapse ()}} else { s = s + "\r"}}; doline (); system.temp.radio.misc.initialPostText = s; wp.newtextobject (s, @scratchpad.testtext)}; local (atts); if op.attributes.getAll (@atts) { if defined (atts.url) { system.temp.radio.misc.initialPostLink = atts.url}; if defined (atts.htmlUrl) { //RSS nodes have this attribute system.temp.radio.misc.initialPostLink = atts.rssUrl}}; radio.menuCommands.openPage (radio.data.systemUrls.homePage)} <<bundle //test code <<postToWeblog ()
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.