Skip to content

为本文档做出贡献

请注意

这是本文档的贡献指南,而非:

  • 洛谷保存站
  • 旧前端

如果你对参与本文档的编写感兴趣,请参考本章节开始上手。要注意的是,本文档在 Apache-2.0 许可证 下发行。

AIGC公约

我们并不反对使用 AIGC 进行编写。详情请阅读:AIGC公约

Github 仓库

Markdown 指南

本文档的 Markdown 格式与洛谷略有不同。请仔细阅读。

Markdown 扩展功能示例

本页面展示了 VitePress 提供的部分内置 Markdown 扩展功能。

语法高亮

VitePress 的语法高亮功能由 Shiki 提供支持,同时包含行高亮等附加功能:

输入

md
```js{4}
export default {
  data () {
    return {
      msg: 'Highlighted!'
    }
  }
}
```

输出

js
export default {
  data () {
    return {
      msg: 'Highlighted!'
    }
  }
}

自定义容器

输入

md
::: info
这是一个信息框。
:::

::: tip
这是一个提示框。
:::

::: warning
这是一个警告框。
:::

::: danger
这是一个危险警告框。
:::

::: details
这是一个详情折叠块。
:::

输出

INFO

这是一个信息框。

TIP

这是一个提示框。

WARNING

这是一个警告框。

DANGER

这是一个危险警告框。

Details

这是一个详情折叠块。

更多扩展功能

如需了解完整的 Markdown 扩展功能列表,请查阅 官方文档


Runtime API 示例

本页面展示了 VitePress 提供的一些 Runtime API 的用法。

主要的 useData() API 可用于访问当前页面的站点数据、主题数据和页面数据。它可以在 .md.vue 文件中使用:

md
<script setup>
import { useData } from 'vitepress'

const { theme, page, frontmatter } = useData()
</script>

### 结果

#### 主题数据
<pre>{{ theme }}</pre>

#### 页面数据
<pre>{{ page }}</pre>

#### 页面 Frontmatter
<pre>{{ frontmatter }}</pre>

结果

主题数据

{
  "outlineTitle": "目录",
  "outline": [
    2,
    6
  ],
  "nav": [
    {
      "text": "首页",
      "link": "/"
    },
    {
      "text": "保存站",
      "link": "https://www.luogu.me"
    }
  ],
  "search": {
    "provider": "local",
    "options": {
      "translations": {
        "button": {
          "buttonText": "搜索文档",
          "buttonAriaLabel": "搜索文档"
        },
        "modal": {
          "noResultsText": "无法找到相关结果",
          "resetButtonTitle": "清除查询条件",
          "footer": {
            "selectText": "选择",
            "navigateText": "切换"
          }
        }
      }
    }
  },
  "editLink": {
    "pattern": "https://github.com/luogu-saver-dev/docs/edit/v1/:path",
    "text": "在 Github 上编辑此页面"
  },
  "sidebar": [
    {
      "text": "起步",
      "items": [
        {
          "text": "欢迎",
          "link": "/docs/home"
        },
        {
          "text": "从源代码构建",
          "link": "/docs/start/build"
        },
        {
          "text": "广告位申请",
          "link": "/docs/start/ad"
        }
      ]
    },
    {
      "text": "账号相关",
      "items": [
        {
          "text": "token",
          "link": "/docs/account/token"
        }
      ]
    },
    {
      "text": "开发者",
      "items": [
        {
          "text": "针对洛谷保存站的贡献指南",
          "link": "/docs/dev/saver"
        },
        {
          "text": "针对本文档的贡献指南",
          "link": "/docs/dev/docs"
        },
        {
          "text": "AIGC公约",
          "link": "/docs/dev/aigc"
        }
      ]
    },
    {
      "text": "协议与政策",
      "items": [
        {
          "text": "免责声明",
          "link": "/docs/license/disclaimer"
        },
        {
          "text": "数据移除政策",
          "link": "/docs/license/deletion"
        },
        {
          "text": "隐私协议",
          "link": "/docs/license/privacy"
        }
      ]
    },
    {
      "text": "其它",
      "items": [
        {
          "text": "更新日志",
          "link": "/docs/update"
        }
      ]
    }
  ],
  "socialLinks": [
    {
      "icon": "github",
      "link": "https://github.com/luogu-saver-dev/luogu-saver"
    }
  ],
  "footer": {
    "message": "I AK IOI",
    "copyright": "Copyright © 2025-Luogu-Saver"
  }
}

页面数据

{
  "title": "为本文档做出贡献",
  "description": "",
  "frontmatter": {},
  "headers": [],
  "relativePath": "docs/dev/docs.md",
  "filePath": "docs/dev/docs.md",
  "lastUpdated": 1756287860000
}

页面 Frontmatter

{}

更多内容

查看文档以获取 Runtime API 的完整列表

I AK IOI