TOML

TOML
Filename extension .toml
Internet media type not registered
Developed by Tom Preston-Werner
Initial release 23 February 2013 (2013-02-23)
Latest release
v0.5.0
(July 10, 2018 (2018-07-10))
Type of format Data interchange
Open format? Yes
Website github.com/toml-lang/toml

TOML is a configuration file format that is intended to be easy to read due to more obvious semantics which aims to be "minimal". TOML is designed to map unambiguously to a dictionary.

"TOML", the name, is an acronym for "Tom's Obvious, Minimal Language"[1] referring to its creator: Tom Preston-Werner.

TOML is used in a number of software projects [2] and is implemented in a large number of programming languages,[3][4] despite having been flagged by its author as an unstable specification pending attainment of version 1.0.[1]

TOML is inspired by .INI file syntax, but with a more formal specification.[5]

Syntax

TOML's syntax largely consists of key = "value" pairs, [section names], and # comments.

It specifies a list of supported data types: String, Integer, Float, Boolean, Datetime, Array, and Table.

Example

# This is a TOML document.

title = "TOML Example"

[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00 # First class dates

[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true

[servers]

  # Indentation (tabs and/or spaces) is allowed but not required
  [servers.alpha]
  ip = "10.0.0.1"
  dc = "eqdc10"

  [servers.beta]
  ip = "10.0.0.2"
  dc = "eqdc10"

[clients]
data = [ ["gamma", "delta"], [1, 2] ]

# Line breaks are OK when inside arrays
hosts = [
  "alpha",
  "omega"
]

References

  1. 1 2 "toml-lang github".
  2. "projects using toml".
  3. "toml implementations".
  4. "cargo config".
  5. "TOML, Tom's Own Markup Language". Y Combinator Link. Y Combinator. Retrieved May 10, 2017.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.