GithubHelp home page GithubHelp logo

juranta / markdown.ooxsl Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fletcher/markdown.ooxsl

0.0 1.0 0.0 133 KB

Markdown export plugin for OmniOutliner

Home Page: http://fletcherpenney.net/multimarkdown/multimarkdown_and_omnioutliner/

markdown.ooxsl's Introduction

Title: Markdown export plugin for OmniOutliner
Author: Fletcher T. Penney
Copyright: (c) 2009-2011, Fletcher T. Penney.

Introduction

This plugin for OmniOutliner allows you to export as a text file, suitable for processing through Markdown or MultiMarkdown. For more information, please see:

http://fletcherpenney.net/multimarkdown/multimarkdown_and_omnioutliner/

This script is "agnostic" as to the version of MultiMarkdown syntax being used, so it is compatible with MMD 2, or MMD 3.

Where to Get It

Note: There are actually two versions of the export function included. In the text only version, images can be included, but must be handled manually. In the version with attachments, you can include images in your OmniOutliner document that will be exported. There is a single bundle with both versions.

How to use this

  • Install the plugin (see the OmniOutliner directions for more details, as this keeps changing. Apparently, as of OO v4, you can finally double click plug-ins to install, but I have not verified this), but I recommend placing in:

      ~/Library/Application Support/OmniOutliner 3/Plug-Ins
    

    NOTE: If you have trouble getting the plug-in to install -- that's an issue for Omni. I can't help you. Once you get it installed, if it's not working properly for you then I might be able to help. But I'm not actively developing this anymore, since it's pretty much complete as is.

  • Create an outline

  • Export it as Markdown text

Special Features

The outline hierarchy is converted into headers of appropriate depths.

Notes are added as plain text after the header.

Metadata

In order to use the metadata feature of MultiMarkdown, the last top level item in the outline should be called Metadata, and each sub-item is the name of the key. The notes are the data for that key. In particular, the Title, and Format keys are of use. Set Format to complete if you want to have MultiMarkdown generate an entire HTML file, complete with header, etc.

Example:

First Item
Second Item
     Sub-Item
Metadata
     Title (with note containing your document's name)
     Format (with note containing "complete")

Private Notes

You can use the outline to store notes that are NOT exported to the Markdown document by naming that section of the outline My Notes (not case sensitive).

One thing to remember is that Note sections ARE counted in the numbering scheme within OO, but are NOT counted (obviously) in the exported version. This could lead to numbering discrepancies between the original outline and the final version. To avoid this (if it matters to you), I recommend ensuring that the Private Note sections be included as the last (or only) children at any given level.

Images

It is possible to include images in your OmniOutliner document that are exported appropriately. If you export using the "Folder" version, you will end up with a folder that includes a Markdown text file, index.text, as well as copies of all the attachments in your OmniOutliner document. If your image is included in an "active" part of the OO document, it will be automatically included in the Markdown output. Note, however, that this approach does not allow you to include an alt text attribute.

Instead, you could put the image in a My Notes section - the image will be exported, but not included in the text. You can then hand create a Markdown image reference, allowing a caption. For example, if you add an image named image-name.png, you can reference it in your document:

![This is a caption that can be included about the image](image-name.png
"Alternate Text for Image")

Version History

  • 1.1r2 - I grudgingly hacked the plugin to make it work with the version of xsltproc that ships with Mac OS X, and does not properly support the last() function.... Note: it should work properly with OmniOutliner 3.5b2 and beyond.

  • 1.1 - combine both formats into a single plug-in

  • 1.0 - initial public release

markdown.ooxsl's People

Contributors

fletcher avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.