Obsidian

Obsidian Templaterの使い方徹底解説!基本から応用まで

Obsidian Templater 使い方

Obsidianを使い始めたばかりの頃、毎日同じようなノートを手動で作るのが少し手間に感じることってありますよね。私も最初は標準のテンプレート機能を使っていましたが、もっとかゆいところに手が届く自動化ができないかなと探していたら、このObsidian Templaterの使い方に出会いました。このプラグインは、単に文字を流し込むだけじゃなくて、日付の計算やユーザーへの質問、さらにはフォルダに応じた自動適用までこなしてくれる優れものです。この記事では、私が実際に試行錯誤して見つけた設定方法や便利なスクリプトを共有するので、これを読めば皆さんのナレッジ管理がもっとスムーズに、そして楽しくなるかなと思います。

  • Obsidian Templaterの使い方の基本設定と導入手順
  • 日付計算やプロンプト入力を活用した動的テンプレートの作り方
  • フォルダごとに最適な型を自動適用する自動化ワークフロー
  • エラーを回避してモバイル環境でも快適に動かすためのコツ

Obsidian Templaterの使い方の基本と設定方法

まずは土台作りからですね。Templaterは非常に多機能なので、最初にしっかりとした設定を行っておくことが、後の「第2の脳」の成長を加速させるポイントになります。基本のインストールから、私がおすすめする初期設定までを詳しく見ていきましょう。単なるテキスト置換を超えた、プログラミングに近い自由度を手に入れるための第一歩です。

フォルダ別テンプレート自動適用の設定手順

私がTemplaterを使い始めて一番感動したのが「Folder Templates」という機能です。これは、特定のフォルダに新しいファイルを作った瞬間に、あらかじめ指定しておいたテンプレートを自動で適用してくれる機能のこと。例えば「日報」フォルダにファイルを作れば、自動的に今日の日付や天気の項目が入る、といった使い方ができます。この機能の最大のメリットは、「どのテンプレートを使おうかな?」と悩むコンマ数秒の思考ノイズを完全に除去できることにあります。

具体的な設定手順を深掘りしてみましょう。まず、Templaterの設定画面を開き、「Trigger Templater on new file creation」というスイッチを確実にONにしてください。これが全ての自動化のトリガーになります。次に、そのすぐ下にある「Folder Templates」セクションで、あなたのVault(保管庫)内にあるフォルダと、それに対応させたいテンプレートファイルを1対1で紐付けていきます。例えば、「Meetings」というフォルダには「Meeting_Minute_Template」を、「Journal」フォルダには「Daily_Log_Template」を割り当てるといった具合ですね。

#### 運用のヒント:Inboxフォルダの活用 私は「Inbox」というフォルダを作っておき、そこに新しいノートが作成されたら、とりあえず「メタデータ(作成日やタグの雛形)」だけを流し込むように設定しています。これにより、どんなメモも最小限の形式が整った状態でスタートできます。また、この自動適用は「ファイルが作成された場所」を基準にするため、ドラッグ&ドロップでファイルを移動した際には発動しません。あくまで「新規作成時」の挙動であることを覚えておくと、予期せぬ挙動に驚かなくて済みますよ。

自動適用の設定手順まとめ

  1. 設定の「Templater」から「Trigger Templater on new file creation」をONにします。
  2. 「Folder Templates」セクションで、「Add New」をクリック。
  3. 対象のフォルダパスを入力し、対応するテンプレートファイルを選択します。

これを設定しておくだけで、いちいちコマンドパレットからテンプレートを呼び出す手間がなくなるので、ノート作成のハードルがぐっと下がりますね。手動で選ぶ手間が省けるだけで、記録の継続率は驚くほど変わるものです。

日付のdate formatとMoment.jsの活用

Obsidian Templaterの使い方のなかでも、特に相談が多いのが「日付の表示」です。Templaterは内部で「Moment.js」という非常に強力なJavaScriptライブラリを使っているので、標準のテンプレート機能では不可能な、かなり自由な日付表示(date format)が可能です。単に今日の日付を出すだけなら簡単ですが、曜日を日本語にしたり、特定のフォーマットで出力したり、あるいは「3日後の日付」を算出したりするには少しコツがいります。

Moment.jsの素晴らしいところは、その柔軟性です。例えば、プロジェクトの締め切りを「作成日の1週間後」に自動設定したい場合、標準機能では手入力が必要ですが、Templaterなら一瞬で計算してくれます。また、ファイル名の日付形式を「2026-01-30」に統一している場合、そのタイトルから日付情報を読み取って「その日の前日のリンク」を生成することも可能です。これはデイリーノートを網の目のようにつなげる「デジタルガーデン」を作る上で欠かせないテクニックですね。

#### 日本語曜日を表示させるためのテクニック 多くのユーザーが悩むのが「曜日が英語(Friなど)になってしまう」という点です。これを日本語の「金曜日」にするには、スクリプト内でロケールを指定するか、Moment.jsのフォーマット文字列を工夫する必要があります。私の場合は、dddddddというトークンを使いつつ、Obsidianのシステム言語設定と同期させる方法をとっています。これにより、ノートを開くたびに「あ、今日は金曜日か」と直感的に認識できるようになります。

表示したい形式 Moment.jsトークン例 出力結果のイメージ
標準的な日付 YYYY-MM-DD 2026-01-30
日本語の年月日 YYYY年MM月DD日 2026年01月30日
曜日付き(短縮) YYYY-MM-DD (ddd) 2026-01-30 (Fri)
24時間制の時刻 HH:mm:ss 14:30:05

ちなみに、曜日を完全に日本語化したい場合は、Obsidian自体の言語設定を日本語にしておくことが最も簡単な解決策です。私はシンプルに(ddd)を使って曜日を表示させるのがお気に入りですが、より詳細なカスタマイズを求めるなら、Moment.jsの公式ドキュメントをチラ見してみるのも面白いかもしれません。日付操作をマスターすることは、Templaterを制することと同義と言っても過言ではありません。

mobileアプリでの設定とツールバーの活用

スマートフォンやタブレットでObsidianを使っている方にとっても、Templaterは強い味方です。しかし、正直に言ってモバイル版にはキーボードショートカットが使いにくい、物理キーボードがないと「Alt+E」などのコマンドが打てないという大きな難点があります。そこで活用したいのが「モバイルツールバー」の設定です。これを使いこなせるかどうかが、出先でのノート作成効率を大きく左右します。

まず準備として、PC版でよく使うテンプレートに「Templater Hotkeys」を割り当てておいてください。実はTemplaterの設定には、特定のテンプレートを「Obsidianのコマンド」として登録する機能があります。コマンド化さえしてしまえば、あとはモバイルの設定からツールバーにボタンとして配置するだけです。画面の端に「日報作成」「タスク追加」といったボタンが並んでいる様子は、まるで自分専用のアプリを操作しているような感覚になりますよ。

#### 同期と互換性の注意点 モバイルでTemplaterを使う際に気をつけておきたいのが、iCloudやObsidian Syncなどでの「スクリプトファイルの同期」です。もしUser Scripts(後述するJSファイル)を使っている場合、そのファイルがモバイル端末側にダウンロードされていないと、テンプレートがエラーを吐いてしまいます。また、モバイル端末はPCに比べて処理能力が限られているため、あまりに複雑すぎるJavaScriptを走らせると、アプリが数秒フリーズすることもあります。シンプルで高速なテンプレートを心がけるのが、モバイル運用のコツですね。

設定から「Mobile」を選び、よく使うTemplaterのコマンドをツールバーに追加しておきましょう。これで、画面上のアイコンをタップするだけで、一瞬でテンプレートが展開されます。外にいる時にパッとメモを取りたい時にこれがあると本当に助かります。電車の中や歩いている最中に思いついたアイデアを、型に沿って素早く記録できる快感は、一度味わうと元には戻れません。

tp.fileによるファイル操作の自動化

tp.fileモジュールは、私が最も多用する機能の一つです。これを使うと、現在開いているノートのメタデータを取得したり、ファイルそのものを操作したりといった、標準機能では到底不可能な動きを実現できます。例えば、ノートのタイトルを自動的に取得して、それを大見出し(H1)として本文の冒頭に挿入する、といった使い方は基本中の基本ですね。

さらに高度な使い方として、「ファイルのリネーム」や「移動」があります。例えば、テンプレート内でユーザーにタイトルを入力させ、その入力内容に基づいて、即座にファイル名を「未命名」から「2026-01-30_打ち合わせ」のように書き換えることができます。これにより、後からファイル名を変更する手間が省け、Vaultの中が常に整理された状態を保てます。また、作成したノートを特定の「アーカイブ」フォルダへ自動で飛ばすような処理も、このモジュールを使えばお手の物です。

私がよくやるのは、ファイルを作成した瞬間に「日付+入力したタイトル」にファイル名を書き換える設定です。これでファイル名が「無題」で埋め尽くされる悲劇を防げます。また、tp.file.cursor()を使えば、テンプレート展開後にカーソルがどの位置にあるべきかまで指定できるので、すぐに書き始めたい場合に最適です。

#### tp.fileの主要なプロパティ一覧

プロパティ/メソッド 役割
tp.file.title 拡張子を除いたファイル名を取得します。
tp.file.creation_date() ファイルの作成日時を任意の形式で取得します。
tp.file.move("パス") 指定したフォルダへファイルを移動させます。
tp.file.rename("新名称") ファイル名を動的に変更します。

これらの機能を組み合わせることで、単なる「下書き」だったテンプレートが、ファイル管理まで自動で行う「スマートワークフロー」へと進化します。

tp.systemでプロンプトや選択肢を表示する

テンプレートを実行したときに「今回の会議の議題は何?」や「今の気分を5段階で選んで」といった具合に、Obsidian側から問いかけてほしいこと、ありませんか?そんな願いを叶えてくれるのがtp.system.prompttp.system.suggesterです。これを使えば、入力した内容がそのままノートの特定の場所に反映される、いわば「対話型」の入力システムが構築できます。

tp.system.promptは自由入力を促す小さなウィンドウを表示し、tp.system.suggesterはあらかじめ用意したリストの中から一つを選ばせるUIを表示します。これの何が便利かというと、タグの入力ミスを防げる点です。例えば「仕事」「プライベート」「学習」という3つのタグから選ぶようにしておけば、後で「仕事」と「Work」が混在して検索に引っかからない、といったトラブルを未然に防げます。これは、情報の「入り口」を整えるための最も有効な手段の一つだと言えますね。

#### ユーザー体験を向上させる工夫 プロンプトを使う際は、デフォルト値を設定しておくのがおすすめです。例えば、日付の入力プロンプトを出すなら、デフォルトで今日の日付が入っているようにしておけば、変更したいときだけ入力すれば良くなります。また、複数のプロンプトを連続して出すことで、アンケートに答えるようにノートが完成していく仕組みを作ることも可能です。ちょっとしたプログラミング気分を味わえて、システム構築が好きな人にはたまらない機能でしょう。

これらの機能を駆使すれば、入力した内容がそのままノートの特定の場所に反映される「対話型テンプレート」が作れます。ちょっとした専用アプリを作っているような感覚で、作業そのものが楽しくなるかなと思います。「システムに使われる」のではなく「システムを使いこなす」感覚を、ぜひ味わってみてください。

Obsidian Templaterの使い方の応用とトラブル解決

基本ができるようになると、次はもっと複雑なこと、もっと自分専用に特化した仕組みを作りたくなりますよね。ここからは、JavaScriptをフルに活用した応用術や、誰もが一度は遭遇するエラーの乗り越え方について詳しくお話しします。「プログラミングなんて自分には無理」と感じるかもしれませんが、既存のパーツを組み合わせるだけでも十分強力な武器になります。誠実に向き合えば、Templaterは必ずあなたの期待に応えてくれるはずです。

jsファイルを用いた User Scripts の連携

Templaterの真骨頂であり、最も奥が深い機能が、自分で書いたJavaScript(.jsファイル)を外部スクリプトとして読み込める「User Scripts」連携です。テンプレート内に長いコードを直接書くと、可読性が落ちますし、他のテンプレートで同じ処理を使い回すのが難しくなります。そこで、共通の処理を一つのJSファイルにまとめて、「スクリプトフォルダ」に放り込んでおきましょう。

例えば、外部のAPIを叩いて今日の天気情報を取ってきたり、特定の計算ロジックを通したりするような複雑な動きは、User Scriptsの独壇場です。この機能を有効にするには、設定画面の「Script files folder location」に、スクリプトを保存する専用フォルダ(例:_scripts)を指定する必要があります。ここに置いた関数は、テンプレートから<% tp.user.myFunction() %>のように呼び出すことができます。これはまさに、Obsidianというプラットフォーム上で自分専用のライブラリを構築するような作業です。

#### 外部リソースとの連携 User Scriptsを使えば、例えばAmazonのAPIから書籍情報を取得して読書メモを自動生成したり、Googleカレンダーの予定を引っ張ってきてデイリーノートに流し込んだりすることも、技術的には可能です。もちろんこれにはある程度のJavaScriptの知識が必要ですが、コミュニティには多くのサンプルコードが公開されています。それらを参考にしながら、少しずつ自分の手で拡張していく過程は、非常にクリエイティブで充実した時間になりますよ。

script内の await 記述漏れによるエラー対策

自作のscriptを書いたり、ネット上のコードを参考にしたりしているときに、最もハマりやすい落とし穴が「await」の記述漏れです。プロンプトを表示したり、ファイルを移動したりといった処理は「非同期処理(Async)」と呼ばれ、コンピューターがその処理を終えるまで待機する必要があります。この「待機」を指示するのがawaitというキーワードです。

もしawaitを忘れてしまうと、ユーザーがプロンプトに文字を入力し終える前に次の行のコードが実行されてしまい、結果として変数が「空っぽ(undefined)」になったり、ファイルのリネームが失敗したりします。これは初心者が必ず一度は通る道であり、私も最初の頃は「なぜ動かないんだ……」と数時間悩んだ経験があります。特にtp.systemtp.fileのメソッドを使う際は、常にawaitが必要ではないかと疑う癖をつけておくと良いでしょう。

注意ポイント

awaitを忘れると、ユーザーが入力する前に次の処理が進んでしまい、結果が「undefined」になったりエラーで止まったりします。また、awaitを使う関数自体にasyncキーワードがついているかも確認が必要です。tp.system.promptなどを使う時は必ずセットで覚えましょう。

前日や翌日の日付リンクを自動生成するscript

デイリーノートを運用する上で、ノートの冒頭に「← 昨日のノート | 明日のノート →」のようなリンクがあると、過去や未来へのアクセスが劇的にスムーズになります。これを実現するには、Moment.jsを使った日付計算の知識が必要です。単に今日から1日引くのではなく、「現在開いているノートの日付」から1日引くというロジックにすることで、古いノートを整理しているときでも正しいリンクを生成できます。

例えば、ファイル名が「2026-01-30」であれば、Templaterはそのタイトルを日付として解釈し、「2026-01-29」という文字列を生成してリンク([[2026-01-29]])にしてくれます。この「ファイル名ベースの計算」は、カレンダービューを使わずに過去の記録を遡る際の強力なナビゲーションになります。また、週末には自動的に「来週の目標」セクションを表示させるといった、日付に応じた条件分岐(If文)を組み合わせるのも面白いですね。

#### リンク切れを防ぐ工夫 日付リンクを作る際、まだ作成されていないノートへのリンクが真っ赤(リンク切れ状態)になるのが気になる方もいるでしょう。Templaterなら「もしファイルが存在しなければリンクを作らない」という処理も書けますが、個人的にはリンク切れの状態でも置いておくことをおすすめします。クリックするだけでその日のノートが生成される「予約席」のような役割を果たしてくれるからです。これはデジタルガーデンの成長を促すための、ちょっとしたコツでもあります。

クリップボードから情報を取得して整理する

私たちは日々、ブラウザや他のアプリから大量の情報をコピー&ペーストしています。この作業をObsidian Templaterで自動化すると、情報の整理が驚くほど捗ります。<% tp.system.clipboard() %>という命令一つで、今クリップボードに入っているテキストをテンプレートの中に呼び出せるのです。これは、単なる「貼り付け」以上の価値を生み出します。

例えば、「引用テンプレート」を作っておき、気になる記事の一節をコピーした状態で実行するとします。すると、自動的に引用符(>)が付き、その下にコピーした瞬間の日付と、出典元を入力するプロンプトが立ち上がる……といったワークフローが組めます。これにより、後から見返したときに「これはどこから持ってきた情報だっけ?」と悩むことがなくなります。情報を「ただ置く」のではなく「文脈と共に保存する」ことができるようになるわけです。

私はWebサイトの構成案を考える際に、参考サイトのURLをコピーした状態でテンプレートを実行し、自動的に「競合分析セクション」を作成するようにしています。この一連の動作が数秒で終わるため、思考のフローを止めることなく作業に没頭できます。

parsing error 発生時のデバッグと修正

テンプレートを挿入しようとしたときに、画面の隅に真っ赤な文字で「Template parsing error, aborting.」という不穏なメッセージが出ることがあります。これはテンプレートの解析、つまりコードの読み取りに失敗したことを示す合図です。主な原因は、カッコの閉じ忘れ、クォーテーション('や")の不一致、あるいは定義されていない変数を使おうとしたことなど、些細な文法ミスであることがほとんどです。

このとき、画面上のメッセージだけでは「どこが間違っているのか」が分かりません。そこで活用したいのが、PC版Obsidianに搭載されている「開発者ツール」です。これはWebブラウザの検証機能と同じもので、裏側で起きているエラーの生データを表示してくれます。エラーが出た瞬間のログを見ると、何行目のどの文字が問題なのか、親切に教えてくれることが多いです。デバッグ(修正作業)は最初は面倒に感じますが、自分の書いたコードが意図通りに動いた瞬間の快感は格別ですよ。

#### デバッグの三種の神器

  • Consoleログ: console.log(変数名)をコードに挟んで、中身が正しく取得できているか確認する。
  • 開発者ツール: Ctrl + Shift + Iで開き、Red Log(赤いエラー文)を探す。
  • 最小構成でのテスト: 一度にたくさんのコードを書かず、一行ずつ動くか確認しながら継ぎ足していく。

解決のヒントが見つかれば、あとは一つずつ修正するだけです。最初は誰でもエラーが出るので、焦らなくて大丈夫ですよ。むしろエラーは、あなたがTemplaterを使いこなそうと一歩踏み出した証拠でもあります。

効率的なObsidian Templaterの使い方のまとめ

ここまで、Obsidian Templaterの使い方について、基本的な導入から高度なスクリプト運用、そしてエラーの対処法まで幅広く解説してきました。情報の海に溺れそうな現代において、自分だけの情報の整理術(PKM: Personal Knowledge Management)を持つことは、ある種の「知的な自衛手段」でもあります。Templaterはその中でも、あなたの思考を加速させ、単純作業から解放してくれる最高のツールになってくれるはずです。

最初はシンプルな日付の挿入や、決まった見出しの流し込みから始めてみてください。そして「ここが面倒だな」と感じた時が、新しい機能を学ぶチャンスです。徐々にプロンプトや自動適用、さらにはUser Scriptsへとステップアップしていくのが、挫折せずに楽しみながら「第2の脳」を育てていくコツかなと思います。Templaterを使いこなせるようになると、Obsidianはただの「メモを溜める場所」から、あなたの代わりに情報を整理し、新しいアイデアの種を蒔いてくれる「知的なパートナー」へと進化します。

今回紹介したテクニックは、あくまで私が試行錯誤の中で見つけた一例に過ぎません。皆さんのライフスタイルや仕事の内容に合わせて、自由に、そして大胆にカスタマイズしてみてください。なお、プラグインの仕様は開発者によってアップデートされることがあるため、最新の正確な情報は公式サイトやGitHubのドキュメント、あるいは有志が集まるコミュニティ(出典:Obsidian公式フォーラムやDiscord等)を確認するようにしてくださいね。自動化のしすぎで「設定を作ること自体」に時間を取られすぎないよう注意しつつ、自分にとって最高に心地よい、快適なObsidianライフを楽しんでください!

-Obsidian