本页内容
deno fmt, 代码格式化
命令行用法
deno fmt [OPTIONS] [files]...自动格式化各种文件类型。
deno fmt myfile1.ts myfile2.ts
支持的文件类型有
JavaScript, TypeScript, Markdown, JSON(C) and Jupyter Notebooks
支持的文件类型,这些文件类型需要对应的非稳定标志(参见格式化选项)
HTML, CSS, SCSS, SASS, LESS, YAML, Svelte, Vue, Astro and Angular
格式化标准输入并写入标准输出
cat file.ts | deno fmt -
检查文件是否已格式化
deno fmt --check
通过在其前面添加忽略注释来忽略代码格式化
// deno-fmt-ignore
通过在文件顶部添加忽略注释来忽略文件格式化
// deno-fmt-ignore-file
选项 跳转到标题
--config 跳转到标题
短标记:-c
配置 Deno 的不同方面,包括 TypeScript、代码检查(linting)和代码格式化。通常配置文件名为 deno.json 或 deno.jsonc 并会自动检测;在这种情况下,此标志不是必需的。
--no-config 跳转到标题
禁用自动加载配置文件。
--permit-no-files 跳转到标题
如果未找到文件,则不返回错误代码。
格式化选项 跳转到标题
--check 跳转到标题
检查源文件是否已格式化。
--ext 跳转到标题
设置所提供文件的内容类型。
--ignore 跳转到标题
忽略特定源文件的格式化。
--indent-width 跳转到标题
定义缩进宽度 [默认: 2]
--line-width 跳转到标题
定义最大行宽度 [默认: 80]
--no-semicolons 跳转到标题
除非必要,否则不使用分号 [默认: false]
--prose-wrap 跳转到标题
定义散文应如何换行 [默认: always]
--single-quote 跳转到标题
使用单引号 [默认: false]
--unstable-component 跳转到标题
启用 Svelte, Vue, Astro 和 Angular 文件的格式化。
--unstable-sql 跳转到标题
启用 SQL 文件的格式化。
--use-tabs 跳转到标题
使用制表符而不是空格进行缩进 [默认: false]
文件监视选项 跳转到标题
--no-clear-screen 跳转到标题
在监视模式下不清除终端屏幕。
--watch 跳转到标题
监视文件更改并自动重新启动进程。仅监视入口点模块图中的本地文件。
--watch-exclude 跳转到标题
从监视模式中排除提供的文件/模式。
支持的文件类型 跳转到标题
Deno 内置了一个代码格式化器,它将自动格式化以下文件
| 文件类型 | 扩展名 | 备注 |
|---|---|---|
| JavaScript | .js, .cjs, .mjs |
|
| TypeScript | .ts, .mts, .cts |
|
| JSX | .jsx |
|
| TSX | .tsx |
|
| Markdown | .md, .mkd, .mkdn, .mdwn, .mdown, .markdown |
|
| JSON | .json |
|
| JSONC | .jsonc |
|
| CSS | .css |
|
| HTML | .html |
|
| Nunjucks | .njk |
|
| Vento | .vto |
|
| YAML | .yml, .yaml |
|
| Sass | .sass |
|
| SCSS | .scss |
|
| LESS | .less |
|
| Jupyter Notebook | .ipynb |
|
| Astro | .astro |
需要 --unstable-component 标志或 "unstable": ["fmt-component"] 配置选项。 |
| Svelte | .svelte |
需要 --unstable-component 标志或 "unstable": ["fmt-component"] 配置选项。 |
| Vue | .vue |
需要 --unstable-component 标志或 "unstable": ["fmt-component"] 配置选项。 |
| SQL | .sql |
需要 --unstable-sql 标志或 "unstable": ["fmt-sql"] 配置选项。 |
deno fmt 可以格式化 Markdown 文件中的代码片段。 代码片段必须用三重反引号括起来并具有语言属性。
忽略代码 跳转到标题
JavaScript / TypeScript / JSONC 跳转到标题
通过在代码前面加上 // deno-fmt-ignore 注释来忽略代码格式化
// deno-fmt-ignore
export const identity = [
1, 0, 0,
0, 1, 0,
0, 0, 1,
];
或者通过在文件顶部添加 // deno-fmt-ignore-file 注释来忽略整个文件。
Markdown / HTML / CSS 跳转到标题
通过在下一项前面添加 <!--- deno-fmt-ignore --> 注释来忽略格式化
<html>
<body>
<p>
Hello there
<!-- deno-fmt-ignore -->
</p>
</body>
</html>
要忽略一段代码,请用 <!-- deno-fmt-ignore-start --> 和 <!-- deno-fmt-ignore-end --> 注释将代码括起来。
或者通过在文件顶部添加 <!-- deno-fmt-ignore-file --> 注释来忽略整个文件。
YAML 跳转到标题
通过在下一项前面添加 # deno-fmt-ignore 注释来忽略格式化
# deno-fmt-ignore aaaaaa: bbbbbbb
关于代码检查(linting)和格式化的更多信息 跳转到标题
有关 Deno 中代码检查(linting)和格式化的更多信息,以及这两种实用程序之间的区别,请访问我们基础知识部分的代码检查和格式化页面。