Web Analytics Made Easy -
StatCounter

めモらンだム・ヤード

自分用のアプリ設定やスクリプト類の備忘録・覚え書き(Memorandum) / 作った物のライセンスはCC BY-NC-SAで。 / 内容が古いまま、間違ったまま、書いている途中、途中で放置など、手入れはあまり行き届いていない庭 / 対象の仕様変更で動かなくなったもの多々。WorkFlowy向けは全滅したので削除 / 製作物のインストール及び使用は各自の責任で。使用によって、利用者および第三者に損害が発生したとしても、当方は一切責任を負いかねます

Drafts用テンプレートアクション(2022-02-09)

2022-01-11

いきなりDraftsの話から離れてDynalistの話になるが、フォーマットが決まっている日記/日誌(以下ログ)をDyanlistに書き込むときは、Dynalistに直接書き込むということはしていない。

通信環境が安定しているときは、DynalistのInBoxに追記するDraftsアクション(日付タグ付加する/しない選択可)を使っていた。
仕組み上フォーマットが一種類なので、フォーマットが固定されているログとは相性が良かった。

それ以外のフォーマットを使う部分は、Dynalistの雛型のOPMLを保存しておいて、ウィジェットから呼び出せるiOS/iPadOSショートカットを使ってきた。

ただ、どちらも通信が不安定な環境では使えない。

そこで、DraftsからDynalistへ、階層構造のある複数のアイテムを送信するDraftsアクションを使用して、まとめて入力しておいたものを通信が安定してから一気に送信するという運用スタイルに変えた。
ただ、Dynalistに直接書き込むときと同レベルの自由さがあるので、決まったフォーマットで書き込みたいときにはテンプレート機能が欲しくなる。

Dyalist ProにはInsert Templateという機能がある。

しかし、モバイルアプリでは使えない。
モバイルWeb版とハードウェア・キーボードの組み合わせなら使えるが、これも通信が不安定なところでは使えない。
それに、これはインクリメンタルサーチして見つけたアイテムとその子孫のアイテムを現在行に複製するだけの機能で、TextExpanderのような日付の自動入力的なことはできない。

そうなると、まとめて入力時に使用するDraftsアプリにテンプレート機能が欲しくなる。
実は、Draftsアプリには2種類のテンプレート機能がある。

一つは、iCloudドライブ/Drafts/Library/Templatesフォルダに雛型テキスト・ファイルを保存しておくもの。
それを[[template|my-site-template.txt]]のようなテンプレート・タグをアクション内に記入して使う。

もう一つは、Draftsアプリの作者が作ったアクション「New Draft with Template | Drafts Directory」。
雛型のドラフトを作り、「template」というタグを付けて保存しておいて利用する。

どちらも、「Templates - Drafts User Guide」に書かれている様々なテンプレート・タグが利用できる。
それを使って日付などを自動挿入できるが、残念ながらテンプレート・タグの日付に関するものを利用しても日本語表記の曜日は挿入できない模様。

そしてDraftsアプリの作者が作ったアクションの方はDrafts Pro固有の機能を使っていて、Proのサブスクをやめると利用できなくなる。


Draftsのアクション2つ

そこで、日本語表記の曜日も挿入できて、尚且つ、DraftsのFreeプランになっても使えるアクションを2種類作った。


1. テンプレートを適用した新しいドラフトを作るアクション

雛型(新規ドラフト作成) | Drafts Directory

更新履歴
2022-02-09
日付はDate Pickerで選択できるようにした。 カスタムテンプレートは、
  • [[DofW]] : 日本語表記曜日一文字
  • [[Y]] : 年(4桁)
  • [[m]] : 月(2桁)
  • [[d]] : 日 (2桁)
  • [[F]] : 年-月-日(4桁-2桁-2桁)
2022-01-11
初版


2. 現在開いているドラフトのキャレット(文字カーソル)位置にテンプレートを適用したテキストを挿入するアクション

雛型(カーソル位置に挿入) | Drafts Directory

更新履歴
2022-02-09
日付はDate Pickerで選択できるようにした。 カスタムテンプレートは、
  • [[DofW]] : 日本語表記曜日一文字
  • [[Y]] : 年(4桁)
  • [[m]] : 月(2桁)
  • [[d]] : 日 (2桁)
  • [[F]] : 年-月-日(4桁-2桁-2桁)
2022-01-14
<|>の位置にカーソルが移動する様に修正した。
2022-01-11
初版


テンプレートの作成

どちらのアクションにしろ、利用する前に前もってテンプレートを作っておく必要がある。
テンプレートはDraftsのテンプレート・フォルダである「iCloudドライブ/Drafts/Library/Templates」に保存しておく。

- [[F]]([[DofW]])

@[[Y]]年 @[[m]]月 @[[d]]日 @[[DofW]]
-- 項目1
<|>

#タグ1
!([[F]])
-- 項目2


#タグ2
!([[F]])

Templates - Drafts User Guide に書かれているテンプレート・タグを利用して雛型を作る。
Date Pickerで選んだ日付のカスタム・テンプレート・タグは以下の通り。
  • [[DofW]] : 日本語表記曜日一文字
  • [[Y]] : 年(4桁)
  • [[m]] : 月(2桁)
  • [[d]] : 日 (2桁)
  • [[F]] : 年-月-日(4桁-2桁-2桁)
<|>の位置にキャレット(文字カーソル)が自動的に移動する。

Draftsに最初から入っているアクション「Save to File as …」で作った雛型を保存する。

iCluoudドライブのDrafts/Library/Templatesに、ここではDiaryTemplate.txtというファイル名をつけて保存した。
Templatesフォルダが存在しないときは、「保存」左隣のボタンを押して作成する。


使用例

「雛型(新規ドラフト作成)」アクション

今回作った「雛型」アクションを実行。

先ほど保存したテンプレート「DiaryTemplate」を選択した。新しい版ではこの他に日付が選べる。

テンプレート・タグが評価されて新しいドラフトが作られる。雛型の<|>があった位置にキャレット(文字カーソル)が自動的に移動している。

適当に書き込む。

以前作った「Send Multi-Items to Dynalist」を実行。

一月の先頭を選んだ。

Dynalistに送信された。(赤枠で囲った部分)


「雛型(カーソル位置に挿入)」アクション

タイトル通りで特に説明も不要だろう。


作ったテンプレートの書き換え

本来なら、以前作った が使えるはず。
だが、iOS 15.2ではショートカットアプリ自体のバグで、ファイルアプリからショートカットを呼んでもファイル名が正しく取得できない。ショートカットを直接起動してファイルを選択するか、Taioアプリなど代替手段を使う。

©︎ 2022 Sorashima