はじめに

本日、Obsidian 1.9.10でコアプラグインBasesが一般向けに公開された。公式サイトに則って現時点での使用方法をまとめておく。

β版のときの記事

Basesとは

既存のコミュニティプラグインDataviewに近い感覚だ。マークダウンファイルからプロパティを抽出しTableやCard表示する。Notion likeのデータベースを作成することができる。

Baseの作り方

baseファイルを作成する

コマンドパレット:

  1. コマンドパレットを開く。
  2. どちらかを選択
    • Bases:Create new base:アクティブファイルと同じフォルダーにbaseを作成する。
    • Bases:Insert new base:baseを作成し、現在のファイルに埋め込む。

ファイルエクスプローラー:

  1. ファイルエクスプローラーで、baseを作成したいフォルダーを右クリック
  2. New baseを選択

作成したbaseを開くとこのような見た目になる。

ファイルに埋め込む場合

baseファイルを埋め込む

![[File.base]]で他のファイルにbaseファイルを埋め込むことができる。デフォルトのビューを指定するには、![[File.base#view|View]]を使用する。

baseをコードブロックとして埋め込む

baseコードブロックとbases構文を使って、ノートに直接埋め込むこともできる。

```base
filters:
  and:
    - file.hasTag("example")
views:
  - type: table
    name: Table
```

Views

1つのbaseファイル内に複数のviewを作成することができる。

Viewの追加

左上からViewを追加できる。

Table view

table viewは行の高さだけ設定できる。

table viewでは表示したプロパティを直接編集することができる。

Card view

Card viewは画像のプロパティを指定してカード状の表示になる。指定できるプロパティの書き方は下記のとおりだ。

  • ローカルファイルへのリンク "[[link/to/attachment.jpg]]"
  • 外部リンク(URL)
  • カラーコード(#000000

その他アスペクト比や画像のfitのさせ方のオプションがある。

Filters

右上のFilterボタンからフィルターを書けることができる。baseファイルの全てのviewに適応するフィルターか、現在開いているviewのみに適応するフィルターか選ぶことができる。

種類は多種多様で、and/or/notに対応。組み合わせたFilter groupを作ることもできる。基本クリックと簡単な入力でできるようになっているが、</>を押して複雑なfunctionを直接記載することもできる。

Important

Newのボタンでフィルター条件に合致する新規ファイルを作成することができる!

Properties

チェックをいれることで表示させるプロパティを変更することができる。Add formulaでプロパティの組み合わせやfunctionを使用した表示が可能。

先程のカードビューで使用したimageというformulaは下記の通りだ。

Limit

表示数を制限したり、コピー、CSV出力ができる。

Functions

フィルターやforumulaを作る際に活用する。正確にはFunctions - Obsidian Helpに記載がある。下記はClaude Codeにまとめてもらったものになる。おそらく今後も追加される。

Bases syntax

baseの中身はYAML形式のテキストとなっているので直接編集することも可能だ。Bases syntax - Obsidian Helpに構文のルールが記載してある。

ただ、基本的には構文を知らなくてもクリックと簡単な入力で動かすことができるようになっている。構文を知らないといけない時は、複雑なフィルターやプロパティの組み合わせを作りたい場合に限るだろう。もしくは構文ルールをLLMに読ませて書かせることもできるかもしれない。

おわりに

Basesの登場により、ObsidianでもNotionライクなデータベース機能が使えるようになった。これまでDataviewプラグインでやっていたことが、よりシンプルかつ直感的に操作できるのは大きな魅力だ。

特にNewボタンでフィルター条件に合致するファイルを瞬時に作成できる機能は、ノート管理のワークフローを大きく変える可能性がある。

Functionの数も今後増えていくだろうし、コミュニティプラグインとの連携も期待したい。BasesはObsidianの1つの転換点だろう。