Quarkdown Banner

拥有超能力的 Markdown

Quarkdown 是一个基于 Markdown 的现代排版系统,允许单个项目无缝编译为印刷级书籍、学术论文、知识库或交互式演示文稿。

关于 Quarkdown

如你所期望般简单...

作为 CommonMark 和 GFM 的扩展,Quarkdown Flavor 为 Markdown 引入了函数,以及许多其他语法扩展。

论文演示
灵感来源:Attention Is All You Need
函数调用语法
.somefunction {arg1} {arg2}
    Body argument
自定义函数
.function {greet}
    to from:
    **Hello, .to** from .from!

.greet {world} from:{iamgio}
结果:Hello, world from iamgio!

...如你所需要般强大

图表代码演示
核心特性

可能性是无限的

得益于不断扩展的标准库,Quarkdown 提供了布局构建器、I/O、数学运算、条件语句和循环。

图灵完备扩展

对 Markdown 的极其强大的图灵完备扩展,确保你的想法能自动化为文档。

丰富标准库

布局构建器、I/O、数学运算、条件语句和循环,开箱即用。

自定义函数与变量

你仍然可以在 Markdown 中定义自己的函数和变量,甚至可以为所有人创建出色的库。

快速编译

极快的编译速度,结合实时预览,让创作流畅无阻。

实时预览

结合 -p -w 选项即可实现实时预览,所见即所得。

VS Code 扩展

强大的 VS Code 扩展,提供语法高亮、自动补全和实时预览支持。

实时预览
输出目标

一次编写,多种输出

所需的文档类型可以通过在源文件中调用 .doctype 函数来设置。

H HTML 输出

普通模式

类似 Notion/Obsidian 的连续流式排版,适合静态网站和知识管理

.doctype {plain}
分页模式

适合论文、文章和书籍,通过 paged.js 实现

.doctype {paged}
幻灯片模式

适合交互式演示文稿,通过 reveal.js 实现

.doctype {slides}
文档模式

适合 Wiki、技术文档和大型知识库

.doctype {docs}

P PDF 导出

HTML 支持的所有文档类型和功能在导出为 PDF 时同样受支持。

quarkdown c file.qd --pdf

T 纯文本

轻量级纯文本输出,适用于需要最简内容的场景。

对比

为什么选择 Quarkdown

特性 Quarkdown LaTeX Typst AsciiDoc MDX
简洁易读
完整文档控制
脚本支持 部分
书籍/文章导出 第三方
演示文稿导出 第三方
静态站点导出 实验性
文档/Wiki 导出
学习曲线
输出目标 HTML, PDF, TXT PDF, PS HTML, PDF HTML, PDF, ePub HTML
LaTeX 传统方式
\tableofcontents

\section{Section}

\subsection{Subsection}

\begin{enumerate}
    \item \textbf{First} item
    \item \textbf{Second} item
\end{enumerate}

\begin{center}
    This text is \textit{centered}.
\end{center}

\begin{figure}[!h]
    \centering
    \begin{subfigure}[b]
        \includegraphics[width=0.3\linewidth]{img1.png}
    \end{subfigure}
    \begin{subfigure}[b]
        \includegraphics[width=0.3\linewidth]{img2.png}
    \end{subfigure}
    \begin{subfigure}[b]
        \includegraphics[width=0.3\linewidth]{img3.png}
    \end{subfigure}
\end{figure}
Quarkdown 推荐
.tableofcontents

# Section

## Subsection

1. **First** item
2. **Second** item

.center
    This text is _centered_.

.row alignment:{spacebetween}
    ![Image 1](img1.png)

    ![Image 2](img2.png)

    ![Image 3](img3.png)
快速上手

几分钟即可开始

新用户?你将在快速入门指南中找到所需的一切,让你的第一个文档焕发生机!

安装

🐧 安装脚本 (Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/quarkdown-labs/get-quarkdown/refs/heads/main/install.sh | sudo env "PATH=$PATH" bash
🍵 Homebrew (Linux/macOS)
brew install quarkdown-labs/quarkdown/quarkdown
💻 安装脚本 (Windows)
irm https://raw.githubusercontent.com/quarkdown-labs/get-quarkdown/refs/heads/main/install.ps1 | iex
🎮 Scoop (Windows)
scoop bucket add java
scoop bucket add quarkdown https://github.com/quarkdown-labs/scoop-quarkdown
scoop install quarkdown
1

创建项目

quarkdown create [directory] 将启动基于提示的项目向导,让你比以往更快地搭建新的 Quarkdown 项目。

quarkdown create my-project
2

编译

运行 quarkdown c file.qd 将编译给定文件并将输出保存到文件。

quarkdown c file.qd

常用选项

-p / --preview

编译后启用自动内容重新加载

-w / --watch

每当源目录中的文件发生更改时重新编译

--pdf

生成 PDF 文件

提示:结合 -p -w 即可实现实时预览

示例文档

Mock 示例文档

Mock 是用 Quarkdown 编写的,是该语言提供的视觉元素的全面集合,非常适合探索和理解其核心功能。

示例文档演示

源文件可在 mock 目录 中找到,可通过 quarkdown c mock/main.qd -p 编译。

Quarkdown 图标

理念

那个可能被误认为星球的东西,实际上是一个夸克,或者更准确地说,是一个下夸克,一种构成物质主要成分的基本粒子:它们赋予了我们已知所有复杂结构以生命,同时也是现存最轻的物体之一。

这正是 Quarkdown 所基于的理念。

准备好了吗?

查看 Wiki 开始使用并了解更多关于该语言及其功能的信息!