# 语法与支持范围

区分默认语法、显式配置与需要宿主接入的能力。

## 默认预设

| 内容 | 当前表现 |
| --- | --- |
| 标题、段落、强调、引用、列表、链接、图片 | 语义节点渲染 |
| GFM 表格、任务列表、删除线 | 默认启用 |
| 引用链接、脚注、重复脚注 | 定义后到仍更新早期正文，脚注导航按实例隔离 |
| 数学 | 使用 KaTeX；样式由包的 CSS 入口提供 |
| 容器、定义列表、Frontmatter、行内扩展 | 默认扩展预设；Frontmatter 以 metadata 代码块呈现 |
| HTML | 默认转义，显式允许后经净化呈现 |
| Mermaid 围栏 | 默认预设中，闭合围栏在客户端挂载后异步渲染；未闭合时显示代码 |
| 未闭合语法 | 按当前已收到的前缀解析，不向原文补结束标记 |

`options: { preset: false }` 保留核心 GFM 和显式安装的扩展。配置在会话中保持稳定；
修改语法时替换整个 options 对象，开启新的解析会话。

## 试一下

[Playground](/playground) 可以回放基础、后置引用与自定义节点样例。
[HTML 示例](/guide/html) 展示嵌套布局与原生折叠。
[组件替换](/guide/components) 改外观；[语法扩展](/guide/extensions) 定义可验证的语义。

当前不支持执行 Markdown 中的 Vue 表达式、任意 HTML 脚本或直接复用 remark/rehype 插件。

下面展示默认扩展。数学与 Mermaid 在客户端挂载后渲染；加载或语法失败保留原文。

### reading/syntax.vue

````vue
<script setup lang="ts">
import { computed } from "vue";
import { QuireMarkdown } from "@quirekit/incremark/vue";
import type { ExampleLocale } from "../shared/types";
const props = withDefaults(defineProps<{ /** Tutorial language. */ locale?: ExampleLocale }>(), { locale: "zh-CN" });
const source = computed(() => [
  "---\ntitle: Markdown extensions\n---",
  props.locale === "zh-CN" ? "## 扩展语法" : "## Extended syntax",
  "H~2~O · x^2^ · ==highlight== · ++inserted++ · ~~deleted~~",
  props.locale === "zh-CN" ? "术语\n: 定义列表保留语义结构。" : "Term\n: Definition lists retain their semantic structure.",
  props.locale === "zh-CN" ? "::: note 提示\n容器中仍然可以使用 **Markdown**。\n:::" : "::: note Note\nContainers can contain **Markdown**.\n:::",
  "$$\nE = mc^2\n$$",
  "```mermaid\ngraph LR\n  Source --> Parser\n  Parser --> Reader\n```",
].join("\n\n"));
</script>
<template><section class="p-qk-surface" :aria-label="locale === 'zh-CN' ? '扩展语法预览' : 'Extended syntax preview'"><QuireMarkdown :content="source" :locale="locale" /></section></template>

````

### shared/types.ts

```ts
/** Example host language; independent of the documentation router. */
export type ExampleLocale = "zh-CN" | "en";

```
