New OPML Features added to MultiMarkdown

02/17/2010 10:22:44

For anyone using MultiMarkdown with OmniOutliner or other OPML applications, I have added additional OPML support to MultiMarkdown.

Specifically it is now possible to “round trip” a document from a plain text MMD file, to an OPML file containing MMD markup, and back to a plain text file without corrupting the structure, or the content.

  • mmd2OPML.pl is used to convert a plain text file into an OPML file
  • OPML2mmd.pl is used to convert an OPML file into a plain text file

The layout of the OPML file is consistent with the structure expected by my OmniOutliner export plugin. This means that the OPML file can be imported into OmniOutliner, and then exported back as an OPML, or exported directly within OmniOutliner into a MultiMarkdown text file (with or without attachments). Which brings up the point that the attachment support is only for OmniOutliner (at least for now).

I’m not sure what other applications are out there that would be useful for editing MultiMarkdown in an OPML format, but these new tools make it possible. Alternatively, it may be helpful to temporarily convert a MultiMarkdown text file into OPML if only to help reorganize the document quickly.

One limitation of this approach is that if you are using a “non-standard” numbering scheme for your header levels you may find that the structure of the resulting documents are not what you expect. For example, the “children” of an h2 level section, will by definition be h3. With plain text files, you can specify whatever level you like — in other words the level of the header (h2, h3) had no intrinsic meaning. In an OPML document, they correlate directly to the levels of the outline, which obviously cannot skip a “generation”. In my mind, however, this is a feature, not a bug, and will probably not be changed.

Additionally, I just discovered that not every OPML tool supports a “_notes” field. OmniOutliner allows you to have a “title” for each piece of the outline, and a separate notes field that holds the content. It appears that there is no standard approach to this. So some OPML apps will simply import the hierarchy of section titles, but no content…. If anyone else uses these features, let me know if there is a workaround for the app you use… Unfortunately, it appears that these features may only be useful for OmniOutliner users…

Similar Pages