Skip to content

cat2151/cat-obsidian-templater-scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Obsidian Templater Scripts

  • User scripts for Obsidian Templater Plugin.

対象読者は?

  • Templaterコミュニティプラグインをある程度使っていて、APIのもっと初歩的で具体的なサンプルがほしい人。
  • 例えば、「Templaterコミュニティプラグインって、templateにJavaScriptが書けるらしいね。
    • そこからObsidianのAPIが呼べるので、いろいろできそう。
    • でも、うまくいかなかった。よくわからない。」

用途は?

  • 便利な機能の共有用
    • 後述の sakuraeditor-bookmark-likeinsert-file の機能が使えるようになります。
  • ノウハウの共有用
    • Templaterプラグインは、JavaScriptでObsidianのAPIを呼べるので、便利ですよね。
    • テキストエディタのマクロのようなことができます。
      • 例えば秀丸エディタ、テキストエディター「Mery」、サクラエディタ、のような。
      • コミュニティプラグインに比べて、手早くObsidianに機能追加をしたいときに向きます。
    • さわってみたところ、例えば Hello, World! がすぐできるような資料があると楽そう、と感じました。
    • そこで後述の templater-js-hotinsert-file を公開します。何かの参考になれば幸いです。

何ができるの?

  • sakuraeditor-bookmark-like
    • どんな機能?:
      • 現在行をハイライトします。トグル動作します。
      • 範囲選択した場合は、Obsidian標準機能の「ハイライトをトグル」と同じ動作です。
    • 他のエディタの機能で例えると:
      • サクラエディタの「ブックマーク設定・解除」(CTRL + F2
      • 秀丸エディタの「現在行をマーク」
  • sakuraeditor-bookmark-next
    • サクラエディタの「次のブックマークへ」(F2
  • sakuraeditor-bookmark-prev
    • サクラエディタの「前のブックマークへ」(SHIFT + F2
  • insert-file
    • どんな機能?:
      • 現在行に指定したファイルを挿入します。(現在行は削除します)
    • 用途は?:
      • 例えばデイリーノートのテンプレートに組み込みます。
        • 例えば 20時のタスクをここに挿入する という行を用意して、20時にそれをクリック。すると、20時のタスクをここに挿入する という行は削除され、そこに、用意しておいたTemplatesファイルが挿入されます。さらにそのファイルの末尾に 21時のタスクをここに挿入する と書く使い方もできます。
      • あくまで一例です。人によってもっとマッチする使い方がある想定です。
  • templater-js-hot
    • スニペット的なものです。
      • Hello, World! のように、小さく、単体で動作するコード群です。
      • コメントアウトされています。
      • それぞれアンコメントすることで、実際に動作します。
    • 筆者は CTRL + T に割り当てて使っています。
      • sakuraeditor-bookmark-likeinsert-file は、これを使って開発しました。
    • メリットは小規模ゆえ導入コストと運用コストが低いこと、
      • デメリットは(ほかの大規模開発環境に比べて)開発サポート機能が少ないことです。
      • まず導入して小規模scriptを書いてみる、という用途に向く想定です。

どうやって使うの?

  • sakuraeditor-bookmark-like
    • Templater
      • Obsidianに、Templaterコミュニティプラグインをインストールします。
    • フォルダ
      • Templater設定の「User Script Functions」の「Script files folder location」を設定します。
        • 例えば TemplaterJS
    • ファイル配置
      • vault配下のディレクトリ TemplatesTemplaterJS ディレクトリに、
        • 当リポジトリの TemplatesTemplaterJS ディレクトリの内容をコピーします。
        • (MarkdownファイルとJavaScriptファイルです)
    • ホットキー
      • Templater設定の「Template Hotkeys」欄に、例えば Templates/sakuraeditor_bookmark_like.md を入力します。
      • 近くにある「+」ボタンをクリックし、ホットキー設定を開き、右上欄に sakura を入力して、「Templater: Insert Templates/sakuraeditor_bookmark_like.md」が表示されたことを確認し、
      • 右の「+」ボタンをクリックし、
      • 例えば CTRL + F2 キーを押して、キーを割り当てます。
    • 動作確認
      • CTRL + F2キーを押し、現在行がハイライトされることを確認します。
      • 再度押して、現在行のハイライトが消える(トグル動作する)ことを確認します。
  • sakuraeditor-bookmark-next
    • 筆者はひとまず、使わずに様子見しています。
      • Obsidianの標準機能の F2(ノートのリネーム)と衝突するためです。
        • 筆者はひとまず、ノートのリネームを優先しています。
  • sakuraeditor-bookmark-prev
    • 導入
      • 前提は、sakuraeditor-bookmark-likeの作業を実施済みであること。
      • 同様に、sakuraeditor_bookmark_like_prev.mdSHIFT + F2 に割り当てます。
    • 動作確認
      • SHIFT + F2 キーを押し、ハイライトした行にジャンプすることを確認します。
  • insert-file
    • 導入
      • 前提は、sakuraeditor-bookmark-likeの作業を実施済みであること。
      • Advanced URI
        • Advanced URI コミュニティプラグイン をinstallします。
        • Advanced URI のオプション画面を開き、Open file on write等の設定をすべてoffにします。動作確認を確実に行うためです。なお筆者はそのまますべてoffで使っています。
      • Template command 登録
        • Templater設定の「Template Hotkeys」欄に、例えば以下の2つを登録します:
          • Templates/insert_file.md
          • Templates/insert_fileを書く用テンプレ.md
    • 動作確認
      • コマンドパレットで insert_file と入力するか、スラッシュコマンドで /insert_file と入力します。
      • 候補から insert Templates/insert_fileを書く用テンプレ.md を選びます。
      • 現在行に [test用mdを挿入(現在行は削除)](obsidian://adv-uri?commandid=templater-obsidian:Templates/insert_file.md&insert-filename=Templates/insert_fileを書く用テンプレ用test.md) が挿入されることを確認します。
      • それをクリックします。
      • 現在行が これは insert_fileを書く用テンプレ用test.md の中身です となることを確認します。
    • 補足
      • Shukuchi(縮地)コミュニティプラグイン があるとキーボードだけで素早く使えて便利です。
      • あたかも「便利なボタン」を「キーボードで素早く押す」かのように使えます。筆者はこの方法で毎日使っています。
  • templater-js-hot
    • 導入
      • 前提は、sakuraeditor-bookmark-likeの作業を実施済みであること。
      • 同様に、Templater_js_hot.mdCTRL + T に割り当てます。
    • 編集
      • Templater_js_hot.js を編集します。
        • hello, world の行をアンコメントします。
    • 動作確認
      • CTRL + T キーを押し、カーソルのある場所に「Hello, World!」が挿入されることを確認します。

参考リンク

About

Simple user scripts for the Obsidian Templater plugin.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published