Playgroundで実行可能なドキュメントを作成する


Xcode6で作った.playgroundファイルをFinderから開くと...

こんな感じのパッケージになってます。このパッケージングの形式は Interactive Learning Document Formatと呼ばれており、swiftのコードだけじゃなくてHTMLを混ぜたりできるようになってます。

content.xcplaygroundが全体のメタデータになってて、中身はこんな感じ

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<playground version='1.0' sdk='iphonesimulator'>
    <sections>
        <code source-file-name='section-1.swift'/>
    </sections>
</playground>

パッケージ内にHTMLやswiftのファイルを置いて、↑のようなインデックスを書いてやれば、playgroundが実行可能なドキュメントとして出来上がる、ってわけです。

ただ、これらを手作業で作るのは結構面倒です。で、ググったらmarkdownからplaygroundファイルを生成してくれるツールを公開している人がいました。なぜかnode.jsで作られてます。

jas/swift-playground-builder

こいつを使えば、まずこういう markdownを書いて・・

以下のコマンドを実行すれば・・・

playground tutorial.md -p ios

以下のような実行可能なドキュメントが出来上がります。もちろんコードの部分は編集可能なので、いろいろ試すことができます。

以下にplaygroundファイルをzipで固めたものをupしてあるので、DLすれば動かせます(ちなみに内容は超適当)。

tutorial.playground

swiftの技術情報とかをこの形式でまとめて公開すれば未来っぽい感じのドキュメントになりそうなんですが、まあwebブラウザで見れるならともかく、いちいちDLさせて開かなきゃいけない、ってところであんまり流行らないだろーなー。と思いつつ。。。