■ はじめに
JSON がきて、YAML がきて、もーこれで終わりだと思ったら 今度、TOML がきた。 ので、メモする。
目次
【1】TOML 【2】公式ドキュメント 【3】基本構造 1)キーと値の組 (key = "value") 2)テーブル / インラインテーブル 3)コメント 【4】サンプル 【5】ツール:TOML to JSON
【1】TOML
* TOML = "Tom's Obvious, Minimal Language (トムの明瞭で、最小の言語) => Tom Preston Werner(トム・プレストン・ワーナー)さんが作った言語 * 読み方は、「トムル」
【2】公式ドキュメント
https://toml.io/en/v1.0.0
日本語訳
https://toml.io/ja/v1.0.0
【3】基本構造
TOMLの構文は、大部分が以下の3種類。 1)キーと値の組 (key = "value") 2)テーブル / インラインテーブル 3)コメント
1)キーと値の組 (key = "value")
key = "value"
2)テーブル / インラインテーブル
[1] テーブル
# テーブル = ハッシュテーブルや連想配列キー [table] key = "value"
[2] インラインテーブル
# テーブルを表現するためのよりコンパクトな構文 table = { key1 = "value1", key2 = "value2" }
[3] テーブルの配列
[[table]] name = "Hammer" age = 23
3)コメント
# This is a comment
【4】サンプル
# This is a comment title = "TOML Example" [owner] name = "Tom Preston-Werner" dob = 1979-05-27T07:32:00-08:00 # date type [database] server = "127.0.0.1" ports = [ 8080, 8081, 8082 ] connection_max = 5000 enabled = true [servers] [servers.alpha] ip = "10.0.0.1" dc = "eqdc10" [servers.beta] ip = "10.0.0.2" dc = "eqdc10" [clients] data = [ ["gamma", "delta"], [1, 2] ] hosts = [ "alpha", "omega" ] # テーブルの配列 # [[table_array]] key1 = "value1" # Jsonなら、、、 # { # "table_array": [ # { # "key1": "value1" # } # ] # }
【5】ツール:TOML to JSON
https://www.convertsimple.com/convert-toml-to-json/
1)実験コード1
[test] name="Hello" [[test.val1]] name="World"
{ "test": { "name": "Hello", "val1": [ { "name": "World" } ] } }
2)実験コード2
[test] name="Hello" [test.val1] name="World"
{ "test": { "name": "Hello", "val1": { "name": "World" } } }
参考文献
https://ja.wikipedia.org/wiki/TOML
https://qiita.com/minoritea/items/c0de47b8beb813c655d4
HugoのTomlの書き方-プログラミングを中心に、現役web系エンジニアが興味を持ったことを徒然と書いていきます
tomlを使ってみよう – 冒険島MAGAZINE
関連記事
TOML 〜 基本編 〜
https://dk521123.hatenablog.com/entry/2025/04/25/121238
YAML (YAML Ain't Markup Language)
https://dk521123.hatenablog.com/entry/2019/10/13/000000
Python ~ TOML ~
https://dk521123.hatenablog.com/entry/2024/01/27/000110
Scala ~ TOML ~
https://dk521123.hatenablog.com/entry/2023/10/08/232146