TOML設定
Web・開発TOMLはキーと値、表の見出しで設定を書く形式です。文字列・数値・日付などの型を持ち、同じキーを重複して定義できません。見た目がINIに似ていても文法や型は同じではありません。
- 主な用途
- 型を持つキー・表によるアプリ設定
- 中身の種類
- テキスト
目次・よくある質問・根拠資料を見る
内容の最終確認: · 編集:Kai
開き方・操作手順
使っている環境や目的の項目を開いて、手順を確認してください。
操作名・対応状況はアプリ・OS・版によって異なります。変更する前に原本を残してください。
開けないとき:症状から確認
- 重複キーのエラー:同じ表内や表の再定義で衝突していないか確認します。
- 文字列が認識されない:引用符とエスケープの規則を確認します。Windowsパスのバックスラッシュも注意します。
- 設定が効かない:正しい表の中にキーがあるか、値が文字列か数値かを確認します。
- 同じキーでエラー:テーブル内の重複定義を確認します。
- 数字が文字列として読まれる:引用符とスキーマの型を確認します。
- 新しい構文だけ読めない:利用アプリのTOML対応版を確認します。
TOML → JSON / 別形式の設定
- 対応パーサーで元の型と表の構造を確認し、変換先の設定項目へ対応付けます。
- 別ファイルに出力し、日時・配列・入れ子の表を元データと比較します。
- 変換前後のキー、件数、文字列・数値・日付などの型を照合し、変換できない項目は別に記録します。
日時の型やコメントは変換先で同じには保持されない場合があります。
テーブルと文字列を読み分ける
テーブル見出しの下のキーは、そのテーブルに属します。ドット付きキーや配列テーブルも、意図した階層か確認します。
TOMLの構文として正しくても、ツールの知らないキーは有効とは限りません。
title = "example"
[server]
port = 8080
enabled = trueこの手順の根拠:TOML Project · TOML v1.0.0 / Python Software Foundation · tomllib — Parse TOML files
変換・自動保存で確認するもの
コメント、キーの順序、日付型などは変換・再保存で変わる場合があります。動作に必要な値と読みやすさを分けて比較します。
秘密鍵やトークンを設定内に含める場合は、公開リポジトリやWeb検証サービスへの送信を避けます。
この手順の根拠:TOML Project · TOML v1.0.0 / Python Software Foundation · tomllib — Parse TOML files
関連形式との違い
| 形式 | 主な役割 | 選ぶときの注意 |
|---|---|---|
| TOML | 型を持つ設定 | テーブルと重複を確認 |
| INI | アプリ依存の設定 | 共通の型規則とは限らない |
| JSON | 構造化データ | コメント等の扱いが違う |
取り扱いと安全性
認証情報やローカルパスを公開しないよう確認します。設定はアプリの接続先や動作を変えるので、入手元不明の設定をそのまま適用しないでください。
よくある質問
同じキーを後で書けば上書きできる?
TOMLでは重複定義は認められません。
INIをTOMLへ改名すればよい?
文法や型が違うため、内容の変換が必要です。
すべてのアプリで同じ設定になる?
キーの意味はアプリ固有です。TOMLの文法だけでは決まりません。
TOMLはINIと同じ?
見た目は似ていますが、型、配列、階層、構文規則が違います。
pyproject.tomlは全部同じ項目?
標準項目とツール独自の設定が共存します。利用ツールの資料を確認します。
形式の基本情報:正式名称・MIME type・管理団体
- 名称
- Tom’s Obvious, Minimal Language
- 管理・仕様
- TOML project
- MIME type
- 作成元・配信元の指定による。拡張子だけでMIME typeは確定できません。
公式・一次情報
- 標準仕様TOML v1.0.0
キー・値、テーブル、型などの公開仕様です。
TOML Project · リンク確認: - 標準仕様RFC 8259 — JSON
JSONの値・文字列・構文と相互運用上の注意を定義しています。
IETF / RFC Editor · リンク確認: - プロジェクト公式tomllib — Parse TOML files
TOMLを解析した型と構文エラーの説明です。
Python Software Foundation · リンク確認: