TOML:Tom 的(语义)明显、(配置)最小化的语言

TOML:Tom 的(语义)明显、(配置)最小化的语言

TOML:Tom 的(语义)明显、(配置)最小化的语言

访问网站
我的收藏186 次访问更新于 a month ago反馈
TOML:Tom 的(语义)明显、(配置)最小化的语言 screenshot

详细介绍

简介

TOML(Tom 的(语义)明显、(配置)最小化的语言)是一种为人而生的配置文件格式,当前版本为 v1.1.0。其官方站点提供简体中文的完整规范说明。TOML 旨在成为一个语义明显且易于阅读的最小化配置文件格式,被设计成可以无歧义地映射为哈希表,并且应该能很容易地被解析成各种语言中的数据结构。

主要特性

以人为先

TOML 旨在成为一个最小化配置文件格式,具备以下特点:

  • 语义明显、易于阅读
  • 能无歧义地映射为哈希表
  • 易于解析成各种语言中的数据结构

实用的原生类型

TOML 具备以下实用的原生类型:

  • 键/值对
  • 数组
  • 内联表
  • 表数组
  • 整数 & 浮点数
  • 布尔值
  • 日期 & 时刻,带可选的时区偏移

广泛的语言支持

TOML 已经拥有大多数当今使用的最流行编程语言的实现,包括:C、C#、C++、Clojure、Dart、Elixir、Erlang、Go、Haskell、Java、JavaScript、Lua、Objective-C、Perl、PHP、Python、Ruby、Rust、Scala、Swift 等更多语言。

语法快速上手

注释

TOML 认为配置文件都应当支持注释:

toml 复制代码
# 这是一条 TOML 注释
# 这是一个多行的
# TOML 注释

强大的字符串

有四种方式表示字符串:

  • 基本字符串:由双引号包裹,支持转义
  • 多行基本字符串:由三个双引号包裹,允许折行,可用行末反斜杠剔除非空白字符前的空白
  • 字面量字符串:由单引号包裹,无转义行为,所见即所得
  • 多行字面量字符串:由三个单引号包裹,可在其中写入单引号

数字

支持整数、浮点数、无穷以及非数(NaN),可以使用科学计数法和千分符。整数支持十进制、十六进制(0x)、八进制(0o)、二进制(0b)前缀表示。

日期与时刻

TOML 支持坐标日期时刻、各地日期时刻、各地日期和各地时刻,可带或不带时区偏移。

适用场景

TOML 适合作为各类软件项目的配置文件格式,尤其适用于需要语义清晰、人类可读且能被多种编程语言轻松解析为数据结构的配置场景。

更多资源

  • 完整规范:可于官网阅读所有原生类型与语法内容(阅读完整规范)
  • 可用库:TOML 已以 40 多种编程语言实现,可查找相应库开始编程
  • 授权与作者:由 Tom Preston-Werner 所创,以 MIT License 发布