TOML
表示
拡張子 | .toml [1] |
---|---|
MIMEタイプ | application/toml (非公式)[2] |
開発者 | トム・プレストン・ワーナー |
初版 | 2013年2月23日 |
最新版 | 1.0.0 (2021年1月12日[3]) |
種別 | データ交換 |
オープン フォーマット | Yes |
ウェブサイト | toml |
TOMLは、設定ファイルのフォーマットの1種である。「ミニマル」であることを目指した明確な構文を採用することで、読みやすいフォーマットとなるように作られた。TOMLの設定項目は、ディクショナリ構造に明確にマッピングされるように設計されている。
"TOML"という名称は、"Tom's Obvious, Minimal Language"のアクロニムである[4]。Tomとは、作者のトム・プレストン・ワーナー (英語: Tom Preston-Werner) を指す。
バージョン1.0に達するまでは不安定な仕様であると著者によってフラグが立てられているにもかかわらず、TOMLは多数のソフトウェアプロジェクトで採用されており[5]、多数のプログラミング言語で実装されている[6][7]。
TOMLは.INIファイルの構文を踏襲しているが、より形式的な仕様が定義されている[8]。
構文
[編集]TOMLの構文は、大部分がキーと値の組 (key = "value"
)、[テーブル名]
、# コメント
の3種類からなる。
サポート対象のデータ型が規定されている。サポートする型は、文字列型、整数型、浮動小数点数型、ブーリアン型、日付型、配列型、テーブル型である。
例
[編集]# これは TOML のドキュメントです。
title = "TOML の例"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00 # date 型
[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true
[servers]
# インデント (タブ and/or スペース) が使用できるが、必須ではない。
[servers.alpha]
ip = "10.0.0.1"
dc = "eqdc10"
[servers.beta]
ip = "10.0.0.2"
dc = "eqdc10"
[clients]
data = [ ["gamma", "delta"], [1, 2] ]
# Array の中では改行が使用できる。
hosts = [
"alpha",
"omega"
]
脚注
[編集]- ^ “Filename Extension”. 2020年6月30日閲覧。
- ^ “MIME Type”. 2020年6月30日閲覧。
- ^ “Releases”. GitHub. 2021年1月18日閲覧。
- ^ Tom's Obvious, Minimal Language. Contribute to toml-lang/toml development by creating an account on GitHub, toml-lang, (2019-01-27) 2019年1月28日閲覧。
- ^ “projects using toml”. 2018年9月30日閲覧。
- ^ “toml implementations”. 2018年9月30日閲覧。
- ^ “cargo config”. 2018年9月30日閲覧。
- ^ “TOML, Tom's Own Markup Language”. Y Combinator Link. Y Combinator Link. Y Combinator. May 10, 2017閲覧。