For AI agents: the complete documentation index is available at https://lazygophers.github.io/pamphlet/llms.txt, the full documentation bundle is available at https://lazygophers.github.io/pamphlet/llms-full.txt, and this page is available as Markdown at https://lazygophers.github.io/pamphlet/write/index.md.
  • 简体中文
  • 写作总览

    这一页列全了 Pamphlet 认识的每一条语法。 左边的菜单和这张表是一一对应的:菜单上有的,这里就有;这里没有的,就是不支持。

    源文档是标准的 .md,直接丢上 GitHub 仍然能读。

    文本格式

    句子内部的东西。

    写什么长什么样说明
    标题# 一级 到 ###### 六级一到六级;第一个 # 是文档标题,不进目录
    段落与换行空行分段段内换行用行尾反斜杠
    强调**粗体** *斜体* ~~删除线~~中文用星号,别用下划线
    行内代码`代码`里面原样显示,不解析语法
    转义\* \# |让符号显示成它本身

    段落与列表

    自己占一块的东西。

    写什么长什么样说明
    引用块> 引用的话每行都要 >,包括空行
    列表- 项 / 1. 项 / - [x] 项无序、有序、任务列表;可嵌套
    代码块```ts 包住几行按语言高亮,编译时做完
    表格| 列 | 列 |可设列对齐;不支持合并单元格
    分隔线单独一行 ---注意文首的 --- 是配置不是分隔线

    交互组件

    Pamphlet 在标准 Markdown 之上加的五种,统称容器指令。写法只有一条规则::::name[指令标题]{属性}。

    指令干什么指令标题属性
    info tip warn danger四种提示块可选不接受
    tabs / tab标签页,点一下切换tab 必填default
    collapse折叠块,点一下展开必填open
    steps带编号圆圈的操作步骤—不接受
    reveal滚动到这里才淡入—effect

    属性的取值:default 和 open 都不带值;effect 取 fade-up(缺省)/ fade-in / slide-left / slide-right。

    class 与 id 写了不报错,但产物里不会输出——值被静默丢弃。

    图表

    两种写法都行:Pamphlet 自己的结构化写法(:::flow 这一路,先列声明再列关系),或者 ```mermaid 围栏。两种都在编译时画成 SVG 内联进产物,读者那边不下载绘图库、也不联网。

    自有写法在 GitHub 上不渲染,围栏写法会——要哪一种看你把源文档发到哪里。

    两种写法各有各的页:下表第二列点进去是自有写法那一页,第三列点进去是同一种图的 Mermaid 围栏写法。

    画什么自有写法Mermaid 围栏写法
    流程图:::flowflowchart LR
    时序图:::sequencesequenceDiagram
    状态图:::statestateDiagram-v2
    类图:::classclassDiagram
    实体关系图:::ererDiagram
    甘特图:::ganttgantt
    饼图:::piepie
    架构图:::architecturearchitecture-beta
    系统上下文图:::c4C4Context
    数据流图:::dataflowflowchart LR
    思维导图:::mindmapmindmap
    git 分支图:::gitgraphgitGraph
    块图:::blockblock-beta
    泳道图:::swimlane— Mermaid 画不了
    网络拓扑图:::topology— Mermaid 画不了
    数据图表:::chart— Mermaid 画不了
    组织架构图:::orgchart— Mermaid 画不了

    前十三种由 Mermaid 画(要先装一次),自有写法会被翻译成它的图源;后四种 Mermaid 画不了,由 Pamphlet 自己算布局、自己出 SVG,编译时不需要浏览器。其余七个引擎各自是一个包,用到哪个装哪个(没装就报 DIAG-301 并且整次构建失败)——它们各有一页:d2 · Graphviz · MathJax · Vega-Lite · WaveDrom · bytefield-svg · PlantUML,共同的取舍和装法写在其余七个引擎。

    图片单独一页:图片与资源。

    整篇文档的设置

    不写在正文里,写在文档最开头那对 --- 之间。

    字段干什么
    title产物的浏览器标签页标题
    theme用哪一套内置主题
    toc目录:开不开、收到第几级、放侧边还是正文开头
    lang产物的语言标记
    spec这份文档要求的最低编译器版本

    完整说明见 frontmatter 参考。

    不支持的

    写了会怎样
    脚注 [^1]报 DOC-105 错误。静默丢掉意味着你写的注释凭空消失,所以宁可报错。替代写法见强调旁边的括注,或用 :::info
    行内公式 $x$不支持,只有块级 ```math 围栏(装 MathJax 引擎后可用)
    :::callout报 DIR-201 警告。callout 是四种提示块的统称,不是指令名
    单行指令 ::name[内容]报 DIR-202。九个指令全部是容器指令,必须成对冒号包住内容

    还能写 HTML

    源文档里的 HTML 原样通过,不做任何过滤——这既是逃生出口,也是唯一能盖掉主题系统的地方。见裸 HTML。