iPad mini 4を購入してから折角なので、
文章も作成できないかとMarkdown対応のエディタを探していた。

条件は以下3つ

  • Markdown対応
  • SplitViewに対応している
  • スクリプトで機能を拡張できる

候補として下記2つのエディタを見つけた。

  1. Editorial(公式サイト)
  2. 1Writer(公式サイト)

EditorialはPython組み込みのエディタで使いこなせば様々な処理を実行できる。
1WriterはJavaScriptで機能が拡張できるエディタだがEditorialほど操作できるオブジェクトはない。

これを機にEditorialでPythonを始めてみるかと思ったが、
Editorialを愛用しているという人が、EditorialはまだiOS9(SplitView)には対応していない、
対応するまでは1Writerを使ってみるよ、とSplitViewのスクリーンショット付きで紹介していたので僕も1Writerを選択することにした。600円也。

今回の記事は1Writerを使って書いているが、Huluで「ガキの使い」でも見てみるかとSplitViewを使ってみたのが下の画面。

SplitView利用中

次に実際にJavaScriptで何か「アクション(機能拡張)」を書いてみる。
このサイトはOctopressを使っているのだが、記事を作る場合にoctopress new draft "記事タイトル"を実行して下書きを生成しているので、それと同じ様な働きをする「アクション」を書いてみる。(参考)

名前: octopress new draft
ui.input("input DRAFT Title", function(val) {
if (val) {
var title = val;
var file_name = val.replace(/[\s ]+/g, "-");
header = "---\n\
layout: post\n\
title: \"" + title + "\"\n\
---\n\
\n";
editor.newFile(header, file_name + ".markdown");
}
});

メニューの「アクション追加」からスクリプト編集画面を開き上記スクリプトを入力する。

スクリプト編集画面

作ったアクション「octopress new draft」選択

スクリプト選択画面

タイトル入力画面が表示されるので記事タイトルを入力

タイトル入力画面

入力したタイトルに基づき下書きが自動作成される

新規ファイル編集画面

ここで問題が。
1WriterはDropboxと同期できるので、マウントしたDropboxフォルダにファイルを作成したいのだが、
どうも失敗してしまう。まず「アクション」でファイル作成するeditor.newFile([text], [name])nameにファイル名だけ指定するとローカルの「Documents」フォルダにファイルを作る。
そしてファイル名にDropboxのパスも含めて指定すると失敗してしまう。

指定の仕方がおかしいのかもしれないし、
既存のファイルを開くeditor.openFile(path, [mode])pathと記載されているが、
editor.newFile([text], [name])nameなのでローカルのみの対応なのかもしれない。

ローカルに作ったファイルをDropboxに移動すればMacと共有できるので、
しばらくこれでやっていこうと思う。