Skip to content
| Marketplace
Sign in
Visual Studio Code>Formatters>RustDown FormatterNew to Visual Studio Code? Get it now.
RustDown Formatter

RustDown Formatter

CrazySpottedDove

|
4 installs
| (1) | Free
A Markdown formatter with Chinese support
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

RustDown-Formatter

RustDown-Formatter 是一款面向中文使用者的,使用 rust 编写的 markdown 格式化工具,拥有如下特点:

  • 格式化性能较好。
  • 可对 latex 代码进行格式化。目前只支持对美元符的检测。
  • 可通过配置的方式调用其它代码格式化工具,从而格式化您的 markdown 文件中的代码块。
  • 可以自动为中英文、中文和数字之间添加空格。
  • 可以为行内公式、行内代码与正文之间添加空格。
  • 对 markdown 本身元素的格式化功能较少,在引用块中不会进行格式化。

工作效果示例

Before:

# RustDown Formatter 测试文档

这是一个用于测试**中英文混排**、数字123混排、以及空格处理的文档。
This is a test for English and中文mixed content.

## 数学公式测试

行内公式示例:这是$E = mc^2$的公式。

块级公式示例:

$$
\begin{align*}
f(0.0)&=1.00000\\
f(0.2)&=1.22140\\
f(0.4)&=1.49182\\
f(0.6)&=1.82212\\
f(0.8)&=2.22554\end{align*}
$$

## 代码块测试

```js
function formatFile(document, context, resolve, reject) {const formatterPath = getFormatterPath(context);try {
        // 直接传递文件路径给格式化工具
child_process.execFile(formatterPath, [document.fileName], (error, stdout, stderr) => {
            if (    error   ) {
                vscode.window.showErrorMessage(`格式化失败: ${error.message}`);
                        reject(error);
                return;
            }
            // 读取文件获取更新后的内容
                const formatted = document.getText();
                const fullRange = new vscode.Range(document.positionAt(0), document.positionAt(document.getText().length));
    resolve([vscode.TextEdit.replace(fullRange, formatted)]);
        });
    }
catch (error) {
        vscode.window.showErrorMessage(`格式化失败: ${error}`);
        reject(error);
}
}
```

## 行内代码测试

请使用`cargo build`命令进行编译。

After:

# RustDown Formatter 测试文档

这是一个用于测试**中英文混排**、数字 123 混排、以及空格处理的文档。
This is a test for English and 中文 mixed content.

## 数学公式测试

行内公式示例:这是 $E = mc^2$ 的公式。

块级公式示例:

$$
\begin{align*}
  f(0.0)&=1.00000\\
  f(0.2)&=1.22140\\
  f(0.4)&=1.49182\\
  f(0.6)&=1.82212\\
  f(0.8)&=2.22554
\end{align*}
$$

## 代码块测试

```js
function formatFile(document, context, resolve, reject) {
  const formatterPath = getFormatterPath(context);
  try {
    // 直接传递文件路径给格式化工具
    child_process.execFile(
      formatterPath,
      [document.fileName],
      (error, stdout, stderr) => {
        if (error) {
          vscode.window.showErrorMessage(`格式化失败: ${error.message}`);
          reject(error);
          return;
        }
        // 读取文件获取更新后的内容
        const formatted = document.getText();
        const fullRange = new vscode.Range(
          document.positionAt(0),
          document.positionAt(document.getText().length),
        );
        resolve([vscode.TextEdit.replace(fullRange, formatted)]);
      },
    );
  } catch (error) {
    vscode.window.showErrorMessage(`格式化失败: ${error}`);
    reject(error);
  }
}
```

## 行内代码测试

请使用 `cargo build` 命令进行编译。
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft