539 字
3 分钟
文件片段导入
文件片段导入语法允许在当前 Markdown 文章中引入其他文件的完整内容、行号切片或命名区块,极大提升长篇教程与公共配置文档的复用效率。
引入完整文件
在文章中使用注释指令:
路径相对于当前文章的 index.md 所在目录书写。本站的示例片段位于 content/snippets/include-example.md,因此从 posts/markdown-include/ 出发需要向上两级。
渲染效果:
按行号切片引入
只引入目标文件中指定范围的行:
<!-- @include: ../../snippets/include-example.md{5-9} -->渲染效果:
行号从文件第一行开始计数(含首尾)。需要注意的是:行号会随片段文件被编辑而漂移,共享片段更推荐使用下面的命名区块方式。
按命名区块(Region)引入
在源码中使用 #region 和 #endregion 标记公共区块:
// #region auth-configexport const authConfig = { enabled: true, provider: 'github',};// #endregion在 Markdown 中精准导入该区块:
<!-- @include: ../../snippets/include-example.md#public-api -->渲染效果:
目标片段中的 #region public-api 与 #endregion public-api 之间的内容被精确提取,区块外的一行说明文字不会出现。
三种方式对照
| 方式 | 语法 | 稳定性 |
|---|---|---|
| 完整文件 | @include: path.md | 高,内容整体同步 |
| 行号切片 | @include: path.md{10-25} | 低,插入或删除行会导致偏移 |
| 命名区块 | @include: path.md#region-name | 高,按标记提取,位置自由 |
典型用法
- 公共前置条件:把「环境依赖」段落放进
snippets/prerequisites.md,所有教程文章统一导入。 - 配置片段:真实源码文件里标记
#region,文档直接引用,保证文档与代码永不脱节。 - 多语言文章:中英文文章共享同一段代码示例,避免两处维护。
构建特性
- 所有的片段嵌入均在构建编译期完成,输出标准的静态 AST 节点。
- 零运行时开销,代码高亮与行号完全同步生效。
Markdown 语法
已完结分享文章
生成精美分享图或复制链接,与更多人分享本文。
继续阅读
换条路线
从其他文章中稳定抽取
最后更新于 ,距今已过 11 天
部分内容可能已过时
评论