FD格式规范 ..

作者: 一了 <[email protected]>
日期: 2026-04-15

新出 FD 格式, Fun Data 或 Funcally Data, 如下:


#!FD格式规范
# 为整行注释

文件 FD格式规范自描述文件
简介 兼容JSON结构的类MD格式
目标 人类和机器包括AI友好

FD_specification
  basic_syntax
    键值对 键与值至少一个空格
    嵌套
      子键 子行缩进
      数组
        - 元素1
        - 元素2

  indentation
    两个空格缩进
      相对深度 +1
    大于号重复数量
>>>   绝对深度 3
    深度数字大于号
3>    绝对深度 3
    优先级 数字>, >重复, 2空格

  identifiers
    - 无引号标识符
    - "带 空格 的标识符"
    -
      键不能有空格 值可以有 空格 !
      "键名 空格 要加引号" 值可以不加 引号

  value_types
    字符串
      - 无引号字符串
      - "双引号字符串"
      - '单引号字符串'
      - `反引号字符串
所有引号都支持多行。
字符串默认不转义!
C:\目录\写着\方便\
可以非常长……`
      - \'转义字符串
引号字符串前面加反斜杠\\
\n是换行'
    数字
      - 85
      - -3.14
      - -2.7e-6
    常量
      - true
      - false
      - null
      -
        空对象 {}
        空数组 []



跟下列 JSON 等价:


{
 "文件": "FD格式规范自描述文件",
 "简介": "兼容JSON结构的类MD格式",
 "目标": "人类和机器包括AI友好",
 "FD_specification": {
  "basic_syntax": {
   "键值对": "键与值至少一个空格",
   "嵌套": {
    "子键": "子行缩进",
    "数组": ["元素1","元素2"]
   }
  },
  "indentation": {
   "两个空格缩进": {
    "相对深度": "+1"
   },
   "大于号重复数量": {
    "绝对深度": 3
   },
   "深度数字大于号": {
    "绝对深度": 3
   },
   "优先级": "数字>, >重复, 2空格"
  },
  "identifiers": [
   "无引号标识符",
   "带 空格 的标识符",
   {
    "键不能有空格": "值可以有 空格 !",
    "键名 空格 要加引号": "值可以不加 引号"
   }
  ],
  "value_types": {
   "字符串": [
    "无引号字符串",
    "双引号字符串",
    "单引号字符串",
    "反引号字符串\r\n所有引号都支持多行。\r\n字符串默认不转义!\r\nC:\\目录\\写着\\方便\\\r\n可以非常长……",
    "转义字符串\r\n引号字符串前面加反斜杠\\\r\n\n是换行"
   ],
   "数字": [
    85,
    -3.14,
    -2.7E-6
   ],
   "常量": [
    true,
    false,
    null,
    {"空对象":{},"空数组":[]}
   ]
  }
 }
}