Web Analytics Made Easy -
StatCounter

めモらンだム・ヤード

数年後の自分が首を捻らなくて済むようにするために残す、自分で使うためのアプリの設定やスクリプト類の備忘録・覚え書き(Memorandum) / 作った物の改変等ご自由に / 内容が古いまま、間違ったまま、書いている途中、途中で放置など、手入れはあまり行き届いていない庭 / 対象の仕様変更で動かなくなったもの多々 / WorkFlowyを対象として作ったものは全滅したので枝払いをした

DraftsからiCloudドライブ内のDraftsフォルダ以外に保存したい時は、ScriptableやToolbox Proを使う

iPhone/iPad上のDraftsアプリから、iCloudドライブのDraftsフォルダ以外のフォルダにテキストファイルを保存したい。

色々と試してみた。


Draftsの「File」アクションで保存できる先は「Drafts」フォルダ内のみ
Draftsの「File」アクションでファイルをiCloudドライブに保存する場合、保存先はアプリのフォルダ「Drafts」以下のみ。
iCloudドライブのルート直下に存在する他のフォルダにアスセスすることはできない。
f:id:sorashima:20210206182826j:plain:w637
Services - Drafts User Guide

Draftsの「Export」アクションでは、毎回保存先を探して指定しなければならない
ファイルネームの指定はテンプレートのおかげで手間はかからないが、保存先はローカル、iCloudDropboxGoogleドライブ、Oneドライブ…の中のフォルダーをファイル・ピッカーで都度指定しなければならない。
f:id:sorashima:20210206202046j:plain:w637
System - Drafts User Guide
Draftsの「Run Shortcut」アクション → ショートカットの「ファイルを保存」アクションの組み合わせでは、「Shortcuts」フォルダ内以外に保存する場合は毎回保存先を探して指定しなければならない
Draftsの「Run Shortcut」アクションでAppleのショートカットアプリを呼び出し、ショートカットアプリの「ファイルを保存」アクションでiCloudドライブに保存することもできる。
f:id:sorashima:20210206184618j:plain:w311
例えば、「テキスト」アクションの出力に「名前を設定」アクションでファイルネームを与えてやれば、テキストファイルをその名前で保存できる
ただし、保存先を前もって指定する場合、指定できる保存先は「Shortcuts」フォルダ以下のみ。
f:id:sorashima:20210206184921j:plain:w311
「保存先を尋ねる」をオンにすれば「Shortcuts」フォルダの外にも保存できるが、Draftsの「Export」アクション同様に毎回保存先をドキュメント・ピッカーで指定しなければならないのが煩わしい。
「File Bookmarks」を使えばSandboxの壁を越えられるらしい

Scriptableアプリの作者のTweetで気になったもの

アプリは、サンドボックスの制限により独自のコンテナの外にはプログラムで書き込むことはできないらしい。(だから毎回手動で書き込み先を指定しなければならないのか?)
上は、そのサンドボックスの壁を越えてファイルにアクセルする仕組みが追加されことについてのTweetらしい。

その仕組み「File Bookmarks」(正式名称かは不明)を使うものを試してみた。

ちなみに、Draftsの作者はあまりこれを使いたくなさそうなので、Drafts自体が対応するのはあまり期待できない。 forums.getdrafts.com

Draftsの「Run Shortcut」アクション → ショートカット → Scriptableの組み合わせでは上手くいった
Scriptable
Developer Tools
0円
ユニバーサルアプリ: ○

ScriptableのFileManager APIも、本来はSandboxで保護されている関係でScriptableのドキュメント・ディレクトリ(フォルダ)内にしかアクセスできないらしい。

f:id:sorashima:20210207002249j:plain:w637
ただし、「File Bookmarks」という仕組みを使うと、その外のディレクトリにもアクセスできるようになるらしい。

iCloudドライブの任意のフォルダをファイル・ブックマークに登録する方法
f:id:sorashima:20210207002917j:plain:w311
Scriptableの左上の歯車ボタンをタップ
f:id:sorashima:20210207002930j:plain:w311
File Bookmarksをタップ
f:id:sorashima:20210207002945j:plain:w311
Add File Bookmarkをタップ
f:id:sorashima:20210207003011j:plain:w311
フォルダのブックマークを作りたいから、Pick Folderを選択
f:id:sorashima:20210207003034j:plain:w311
ファイル・ピッカーが表示されるのでフォルダを選び、右上の完了をタップ
f:id:sorashima:20210207003046j:plain:w311
ブックマークに付ける名前を入力してSaveをタップ
f:id:sorashima:20210207003056j:plain:w311
フォルダのブックマーク「obsdmd」が登録された

上のスクリーンショットで赤でマーキングしたようにショートカット・アプリでファイル・ブックマークを使うときは、ショートカット・アプリの「Scriptable」→「Create File bookmark」アクションでブックマークを作れと書いてあるが、そんなことをしなくてもScriptableのSettingsで登録したファイル・ブックマークでアクセスできるし、

f:id:sorashima:20210207003111j:plain:w548
そもそも、ショートカット・アプリの「Scriptable」→「Create File bookmark」アクションは、ファイルのブックマークのみ対応していてフォルダのブックマークはできなさそうだ。
説明文の修正がアプリのアップデートに追いついていないのだろう。

Draftsのアクション「Save to iCloud (Folder Bookmarks)」
Save to iCloud (Folder Bookmarks) | Drafts Action Directory

開いているドラフトの

辞書のキー値として入る内容説明
uuiduuid○○○○○○○○-○○○○-○○○○-○○○○○○○○○○○○
createdD作成日付例えば、2021-02-06
createdT作成時刻12時34分56秒なら123456。ファイルネームには「:」は使えないため
modifiedD最終更新日付 例えば、2021-02-06
modifiedT最終更新時刻12時34分56秒なら123456
tagsタグカンマ区切り
titleタイトルドラフトの一行目
body本文ドラフトの二行目以降
が、ショートカット・アプリが辞書として読める形式(JSON形式)に変換されて、次のショートカット・アプリのショートカット「Drafts2iCloudFB」に送られる。

ショートカット・アプリのショートカット「Drafts2iCloudFB」
https://www.icloud.com/shortcuts/e8b48ca7df37498ea39e753bf696d9a0

Draftsアプリから呼ばれた時、ファイル名の書式を次の中から選ばせ、

  1. <昨日の日付>.md
  2. <今日の日付>.md
  3. <作成日>.md
  4. <1行目>.md
もしファイル・ブックマークが複数登録されている場合は一覧からそれを選ばせ、

そして、

  • 選択されたファイル・ブックマーク
  • 書式整形されたファイル名
  • 書式整形されたコンテンツ
  • が最後の「Run Inline Script」アクションでScriptableに渡され、iCloudドライブにファイルが保存される。既に同名のファイルがある場合は追記される。

    時々、登録したフォルダ・ブックマークが使えなくなる
    iOS/iPadOSのFile/Folder Bookmarkの仕組み自体の完成度がまだ低いのか、保存操作がエラーになってしまうことがある。
    一旦フォルダ・ブックマークを消して登録しなおすと直る。
    Draftsの「Run Shortcut」アクション → ショートカット → Toolbox Proでも上手くいった
    Toolbox Pro for Shortcuts
    Utilities
    0円
    ユニバーサルアプリ: ○

    ただし、App内課金「Toolbox Pro Premium(このメモの時点で730円(1回きり))」が必要。

    こちらもファイル・ブックマークの仕組みでショートカットアプリの外のフォルダーにアクセスできる。

    任意のフォルダをファイル・ブックマークに登録するには、Toolbox Proの歯車アイコン(Settings)を開き、Folder Bookmarksで(+)をタップして追加する。

    あとは上のScriptableを使った方法とほとんど同じ。

    Draftsのアクション「Save to iCloud (Toolbox Pro)」
    ショートカット・アプリのショートカット「Drafts2iCloudTBP」
    時々、登録したフォルダ・ブックマークが使えなくなる
    iOS/iPadOSのFile/Folder Bookmarkの仕組み自体の完成度がまだ低いのか、保存操作がエラーになってしまうことがある。
    一旦フォルダ・ブックマークを消して登録しなおすと直る。
    Draftsとは別のアプリだが、Taioなら「File Bookmarks」に最初から対応している
    Taio - Markdown & Text Actions
    Productivity
    0円
    ユニバーサルアプリ: ○

    最近知ったが、TaioというMarkdownエディタなら「File Bookmarks」に対応している。
    おまけに、[[リンク先名]]という形式のWikiリンクと、バックリンクにも対応している。

    Obsidianはモバイル版はまだ出ておらず、モバイルの適当なMarkdownエディタで書き込んだところで、リンクも辿れないので意味が無いと触らないでいた。
    でも、もしかしたらTaioが、Obsidianのモバイル版が出るまでのつなぎになるのかもしれない。

    こちらの記事に、
    jun3010.me
    熱いレビューが書かれている。

    Obsidianのサイトには「Mobile apps coming soon」と書かれている。
    ただ、保存フォルダの仕様がどうなるかだ。
    モバイルには機能制限のあるDynalistのフリープラン。ではObsidianのモバイルアプリはどうなるのだろう? - めモらンだム