zudo-text マニュアル

検索したい単語を入力

いつでも検索バーを開ける

フロントマター

Markdown ファイルの先頭に --- で挟んで書く部分が frontmatter です。題名や日付、tag のような「そのファイルについての情報」がここに入ります。

どの項目を書くかを決めるのは、アプリではなく workspace の側です。「日付は date という名前にしなさい」という決まりを zudo-text から押し付けることはしません。この考え方の背景は設計思想にまとめています。

frontmatter の形

note の先頭は、たとえばこうなります。

---
title: 打ち合わせのメモ
created_at: 2026-04-30T12:34:56+09:00
tags:
  - project-x
  - meeting
---

本文はこの下から始まります。

--- の行に挟まれた範囲が frontmatter で、本文には出ません。ここに何も書かなくても note は書けます。

項目を決めるファイル

workspace の中の .zudotext/frontmatter-schema.json という 1 つのファイルが、その workspace で使う項目を宣言します。中身はこういう形です。

{
  "fields": [
    { "name": "title", "type": "string", "required": true },
    { "name": "status", "type": "enum", "values": ["draft", "review", "done"] },
    { "name": "published", "type": "date", "description": "公開する日" },
    { "name": "tags", "type": "string-array" }
  ]
}
  • name — frontmatter に書く項目の名前です。同じ名前を 2 回書くことはできません。

  • type — その項目に入る値の種類です。

  • requiredtrue にすると、書かれていないときに注意が出ます。

  • description — 入力欄の下に出る短い説明です。

  • valuesenum のときだけ必要で、選べる値を並べます。1 つ以上要ります。

type に指定できるのは次の 7 つです。

  • string — ふつうの文字です。

  • number — 数値です。

  • booleantruefalse です。

  • date2026-04-30 の形の日付です。

  • datetime2026-04-30T12:34:56+09:00 の形の日時です。

  • enumvalues に並べたものから 1 つ選びます。

  • string-array — 文字の並びです。tags がこの形です。

このファイルが無いときは、あらかじめ用意された内容が使われます。項目は title(必須)、created_atupdated_attags の 4 つです。

日時の自動入力

datedatetime の項目には、値を自動で入れる指定を足せます。

{
  "fields": [
    { "name": "created_at", "type": "datetime", "auto": "on-create" },
    { "name": "updated_at", "type": "datetime", "auto": "on-save" }
  ]
}
  • "auto": "on-create" — note を作ったときに入ります。すでに値があるときは書き換えません。

  • "auto": "on-save" — 保存するたびに入れ直されます。

自動で入るのは日付と日時の項目だけです。ほかの種類に付けると、そのファイルは読み込まれません。

用意された内容のほうでは、created_atupdated_at も自動では入りません。note がいつ作られていつ変わったかは workspace 側が別に覚えているためです。自動で書き込ませたいときだけ、上のように宣言します。

Frontmatter Panel

frontmatter を、--- の中身を直接いじらずに入力欄として編集できます。Command PaletteMod+K で開く、コマンドの検索窓)の Open Frontmatter Panel を実行すると、画面の右から Frontmatter Panel(宣言された項目を入力欄として並べる引き出し)が出てきます。このコマンドにキーを割り当てることはできません。

  • 宣言された項目は、種類に合った入力欄として並びます。日付には日付の欄が、enum には選ぶ欄が出ます。

  • 宣言されていない項目も表示されますが、こちらは読み取り専用で「not in schema」と添えられます。

  • Esc を押すか、外側をクリックすると閉じます。

書いてある内容が宣言と合っていないときは、エディタの見出し部分に小さな警告の印が出ます。印にポインタを重ねると理由が並び、クリックすると Frontmatter Panel が開いて、その場で直せます。

Settings → Frontmatter Schema

いま効いている内容は、Settings → Frontmatter Schema で確かめられます。項目ごとに種類が並び、必須のものには required、自動で入るものには auto:on-createauto:on-save の印が付きます。

この画面は確認のためのもので、ここから項目を書き換えることはできません。宣言を変えるときは .zudotext/frontmatter-schema.json のほうを直します。

宣言のファイルが無いときは、その旨と、用意された内容を表示している旨が上に出ます。

iOS ではこの画面は出てきません。

宣言を書き換えたあと

宣言のファイルが別の端末で書き換えられると、その変更はひとりでに読み込まれます。アプリを立ち上げ直す必要はありません。

読み込み直しがうまくいかないときのために、Command PaletteReload Frontmatter Schema があります。こちらもキーを割り当てることはできません。

関連ページ