TextExpander スニペット3段活用 〜スニペットからのスニペット呼び出し→Date Math→Key〜

thikasa

Category: Mac / Tag: , , ,

スニペットってワクワクしますね。@thikasa です。こんにちは。

こちらの記事で、「以前からやりたかったこと」と言っていたスニペット。

やっぱり TextExpander は凄かった! 私が購入を決めた理由 | thikasa note

 

今日はこのスニペットの説明をしますです。

 

TextExpander for Mac 3.4.2 (¥3,000)App
カテゴリ: 仕事効率化, ユーティリティ
販売元: SmileOnMyMac, LLC – SmileOnMyMac, LLC(サイズ: 5.2 MB)
全てのバージョンの評価: (3件の評価)

 


やりたかったこと もう一度おさらい

↑の記事にも書いたのですが、あらためて。
私がスニペットでやりたかったことというのは、ザッと説明しますと、

例えば今日の日付が 2012/07/20 だとして、
これ↓を、スニペット一発で、

TtSnippet 01

 

こうしたい。

TtSnippet 02

 

これがやりたいことです。
つまり、文書化すると、こうなります。

  1. Title 用の文字列を生成する(日付は今日より1日前)
    • フォーマット:thikasa topics yyyy/mm/dd
  2. 次のテキストフィールドにタブキーで移動する
  3. Slug 用の文字列を生成する(日付は今日より1日前)
    • フォーマット:thikasa-topics-yyyymmdd
  4. 次のテキストフィールドにタブキーで移動する
  5. Tags 用に文字列入力
    • フォーマット:thikasa topics

 

これをスニペット主体で書きなおすと、こうなります。

  1. Title 生成スニペットを実行する
  2. タブキー押下をエミュレート
  3. Sulg 生成スニペットを実行する
  4. タブキー押下をエミュレート
  5. thikasa topics と入力する

 

さてそれでは、実際のスニペットを作成してみます。

 

ネックは日付の生成

これが一番厄介ですね。
今日より一日前の日付、というのがポイントです。
これに対応するため、当初は、Shell Script にて「date」コマンドを用いて対応するつもりでした。

しかし、もっといい方法がありました。

 

Date / Time Math

いろいろいじっていてわかったのですが、こういった機能があるんですね。

TtSnippet 03

 

メニューに書かれている感じから、日付時間に対して、足したり引いたりできるようです。

で。

実際に作成したスニペットがこちら。

TtSnippet 04

 

ポイントはこの文字列です。

TtSnippet 05

 

この場合ですと、現在の日付よりー1日、という情報を、その後段にある、各日付文字に適用する、という意味になります。

TtSnippet 06

 

これによって、今日より1日前、という状態が簡単に作れました。
見てのとおり、これは(現在の日付−1日)ということになっており、「%@-2D」とすれば2日前、「%@-10D」とすれば10日前、逆に「%@+5D」とすれば5日後、となります。

今日の日付を起点として、そこから相対的な日付を作成することができるんですね。
しかも計算の結果、月を超えるようなケース、例えば 2012/07/20 に対して+15日するような「%@+15D%Y/%m/%d」とすれば、2012/08/04 と月の更新もしてくれます。

これは便利!

当初は Shell Script でやろうとしていましたが、これなら iPhone でも使えます。

 

各スニペット作成

上記を含め、こんなスニペットを作りました。

Title 用:thikasa topics %@-1D%Y/%m/%d

Slug 用:thikasa-topics-%@-1D%Y%m%d

 

完成!

あとは、このスニペットを呼び出しタブキー押下をエミュレートする、新しいスニペットを作成します。
こうなりました↓

%%snippet:ttt%%key:tab%%snippet:tts%%key:tab%thikasa topics

ちょっと長めですね。
こんな構成になっています。

TtSnippet 08

 

Title 用スニペット呼び出し:%snippet:ttt%

Slug 用スニペット呼び出し:%snippet:tts%

タブキー押下:%key:tab%

これらを組み合わせているのですね。

なお、これらは手で入力してもいいですが、次の様にメニューからでも選択できるので、楽チンです。

TtSnippet 09

TtSnippet 10

 

これを実行した結果、見事に目的の動作になりました!

 

TextExpander 便利至極!

DashExpander では、Title 用と Slug 用のスニペットを作って使っていましたが、日付は今日のものでしたし、また日付のフォーマットも yyyy/mm/dd 固定だったため、スニペットを展開してから手で直していました。
これが結構な手間で。

それが TextExpander なら一発!
これは爽快です。

また、今回のスニペットは、Title 用 Slug 用それぞれのスニペットを作成してそれを呼び出すという形にしましたが、そうではなく直接書くこともできます。
ただ、そうしなかったのは、例えば Title 用は Title 用で、単体で使うことも考えられますし、また違ったスニペットから呼び出すことも考えられますし、そうした方が取り回しも便利なので、こうしました。

こういう使い方ができる TextExpnader、本当に便利です。

(なお今回の、キー押下エミュレートの機能は、iPhone 版では使えませんのでご注意)

TextExpander 万歳!

 

TextExpander for Mac 3.4.2 (¥3,000)App
カテゴリ: 仕事効率化, ユーティリティ
販売元: SmileOnMyMac, LLC – SmileOnMyMac, LLC(サイズ: 5.2 MB)
全てのバージョンの評価: (3件の評価)

 

RSS 登録

もしこのブログを気に入っていただけたのなら、RSS 登録をお願いします。
最新情報をお届けします。

follow us in feedly