ソフトウェア開発において、設定情報を管理するファイル形式はいくつかありますが、近年注目を集めているのが「TOML」です。TOMLは「Tom's Obvious, Minimal Language」の略で、人間が読みやすく、プログラミング言語との互換性も高い、シンプルさが特徴のファイル形式です。
TOMLファイルの基本構造
INIファイルに似ていますが、より厳格なルールと豊富な機能を持っています。主な構成要素は以下の通りです。
-
キーと値のペア キーと値はイコール記号(
=
)で結びます。値には、文字列、整数、浮動小数点数、真偽値、日付、配列、テーブルなど、多様な型を指定できます。 -
テーブル(Table) 設定項目をグループ化するために使います。INIファイルのセクションに似ており、
[テーブル名]
という形で記述します。テーブルをネスト(入れ子)させることも可能です。 -
コメント シャープ記号(
#
)で始まる行はコメントとして扱われます。
具体的なTOMLファイルの例
# この行はコメントです
title = "TOMLの基本"
[owner]
name = "Alice"
dob = 1990-05-27T07:32:00-08:00 # 日付と時刻のデータ型
[database]
enabled = true
ports = [ 8000, 8001, 8002 ] # 配列のデータ型
data = "temp/data.db"
[servers.alpha] # ネストされたテーブル
host = "alpha.example.com"
port = 80
TOML vs. YAML vs. JSON
設定ファイル形式としてよく比較されるのは、YAMLとJSONです。それぞれの特徴をまとめると、TOMLの強みがより明確になります。
まとめ
TOMLは、複雑な構造を必要としない静的な設定ファイルに最適な形式です。
-
人間にとっての読みやすさが最優先されており、学習コストが低い。
-
キーと値のペア、シンプルなテーブル構造が直感的で、INIファイルからの移行も容易。
Pythonでは、標準ライブラリには含まれていませんが、toml
というライブラリをインストールすることで簡単に扱うことができます。シンプルで堅牢な設定ファイルを求めるなら、TOMLは優れた選択肢となるでしょう。