There’s a long tradition of editors doubling as programming environments. The first editor I used, on Unix, was built around that idea. When I was working on outliners on the PC and Mac in the 80s, we had a side project called Betty, which was a scripting language and outliner in one. After selling the company, I started UserLand to fully develop that idea. The result was Frontier, a scripting language built around an outliner.
Here’s how it works. There’s a special outline called menubar.opml. When you edit it, you’re editing a set of menus that go at the end of the Fargo menu bar. Each of the menu commands contains a script that runs when you choose the command from the menu. The menu is “live,” so as you make changes to the outline, the menu rebuilds to reflect the changes.
I wrote a tutorial on it, called Introduction to Fargo Scripting. It’s a sweet idea, but not new. Frontier started with this idea, and it developed into a protocol called menu sharing, which allowed users to edit menus in all apps that were compatible. It was very broadly supported in the Mac market in the early web days. Even Netscape and Microsoft supported menu sharing in their browsers. We even found a way to hack it into the Finder (thanks to Steve Zellers).
Today’s new thing is the ability to post from Fargo to WordPress by script. This should help open up the use of Fargo as a WordPress blog editor. Currently you’re limited to a single blog. But the ability to write custom scripts should blow by this limit.
BTW, one of the cool things about the post is how the source code is displayed. It’s taken a few years of experimenting to get that down, and I think it’s finally there.
I don’t at this time have any docs on the verb set, but you can see the whole list in this JS file.
We’ve got the pump primed now, and a nice little community.
I wonder if you can all see how this is developing as a really interesting runtime and editing environment, with the web all around you, and esp with Dropbox doing the synchronization, and a content management system hooked in, it’s really a whole new layer on what we used to think of as the net.
Mind bombs everywhere you look. 😉
PS: Here’s a quick video demo…