Inline Collapsed Content with jQuery

One of the things I find ListML really handy for is planning a presentation/talk. I write up a hierarchical list of all the things I want to cover using ListML, then I can work from that list to build out my slides/demos/etc. For the recent WordCamp NYC, I needed to present 2 structured talks, so I went to work in ListML and knocked up 2 lists of things to cover. Once I was done with the talks, I realized that there was some good content in these lists that a) served as a bit of a transcript to the talks themselves, and b) in some cases wasn’t actually covered (for time reasons, or just because I forgot them).

I wanted to be able to post these lists to my site along with the presentations, but didn’t really want to post a whole separate page for each one just to put up a simple HTML list.


New Project: ListML

If you’re anything like me, you write a lot of lists. I use lists for pretty much everything — note taking, planning my day, managing projects, shopping, organization, etc etc etc. I have lists of lists. It’s a bit out of control. Over the years, I’ve coalesced on a simple, basic format, where I write things using indented (tabbed) lists of plain text (in TextMate). I kept finding myself converting some of these lists to HTML, so I’ve written something up that will take a plain text list and reformat it as HTML, given a simple set of formatting rules.

That project is available for download now, under the name ListML. Check it out, I use it all the time, so will probably continue developing it. At the moment it’s just a simple script that you drop into a directory, then drop other TXT files in there to view them as HTML. We’ll see where it ends up. If you’ve got any suggestions or find any bugs, feel free to post them as a comment here and I’ll fix things up. I already have some ideas on new features:

  • Ability to load external files (from URL)
  • List files in the current directory if none specified
  • Cut out the parsing engine properly to make it more portable
  • Make the HTML view (optionally) into a lightweight editor as well
  • Quick UI for grabbing the HTML snippet of just the list (sans CSS/extras)