ATTENTION PLEASE:
本翻译仅用于学习交流,禁止商业用途。请参考prettier官网css
我刚刚接触文档翻译,英语自打大学英语六级(CET-6)经过后就在没有提高过,如今基本上都快还给个人英语老师了@_@。直至发稿时,全网(百度)搜索没有发现一片像样的文档,好事心又开始做怪,发出来就当祭天了(估计老天爷都嫌弃文笔差,最近看《明朝那些事儿》才知道祭天得用一种叫作“青词”的专用文章,这事大奸臣严嵩的儿子作得好。。。。。)。好啦,不啰嗦了,若是有大神发现有错误,或者更好的翻译,欢迎带锤子来读(万分感激!)html
Prettier工具少数几个能够定制的参数,在CLI命令行和配置文件中都可用。node
设置prettier单行输出(不折行)的(最大)长度。typescript
出于代码的可读性,咱们不推荐(单行)超过80个字符的coding方式。json
在代码的书写手册中,单行最大长度常被设置为100或120。可是,人们写代码时,不会刻意的使每行都达到这个上限值。为便于阅读,开发者们一般使用空格将过长的单行变成多行。最佳实践是,每行的平均长度应当小于这个上限值。
另外一方面,Prettier 会尽力让代码在一行(因此链式调用就都被搞到一行了,不得不吐槽了^~^)。当print width被设置成120时,工具备可能产出过于紧凑的或是其余不尽人意的代码。api
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
80 | --print-width <int> | printWidth: <int> |
注:若是在格式markdown时,不想折行,请设置 prose wrap参数来禁止这一行为。数组
设置工具每个水平缩进的空格数markdown
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
2 | --tab-width <int> | tabWidth: <int> |
使用tab(制表位)缩进而非空格;app
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
false | --use-tabs | useTabs: <bool> |
在语句末尾添加分号;函数
有效参数:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
true | --mo-semi | semi: <bool> |
使用单引号而非双引号;
提示:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
false | --single-quote | singleQuote: <bool> |
在任何可能的多行中输入尾逗号。
有效参数:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
none | --trailing-comma <none \ es5 \ all > | trailingCommas: <none \ es5 \ all> |
在对象字面量声明所使用的的花括号后({)和前(})输出空格
有效参数:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
true | --none-bracket-spacing | bracketSpacing: <bool> |
在多行JSX元素最后一行的末尾添加 > 而使 > 单独一行(不适用于自闭和元素)
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
false | --jsx-bracket-same-line | jsxBracketSameLinte: <bool> |
为单行箭头函数的参数添加圆括号。
有效参数:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
" avoid " | --arrow-parens < avoid \ always > | alwaysParens: <avoid \ always> |
只格式化某个文件的一部分;
这两个参数能够用于从指定起止偏移字符(单独指定开始或结束、二者同时指定、分别指定)格式化代码。
一下状况,范围将会扩展:
注意:这些参数不能够同cursorOffset共用;
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
0 | --range-start-< int > | rangeStart: < int > |
Infinity | --range-end-< int > | rangeEnd: < int > |
指定使用哪种解析器。
babylon和flow都支持同一套JavaScript特性(包括Flow).Prettier将自动根据文件的输入路径选择解析器,如非必要,不要修改该项设置。
内置的解析器包含:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
babylon | --parser < string <br/> --parser ./my-parser | parser: " <string> " <br/> parser: require(" ./my-parserrr ") |
指定文件的输入路径,这将被用于解析器参照。
示例:下面的将使用postcss解析器
cat foo | prettier --stdin-filepath foo.css
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
None | --stdin-filepath <string> | filePath: " <string> " |
Prettier能够严格按照按照文件顶部的一些特殊的注释格式化代码,这些注释称为“require pragma”(必须杂注)。这在逐步格式化一些大型、未经格式化过的代码是十分有用的。
例如,一个带有下面注释的文件将在执行带有 --require-pragma的cli指令(api配置文件亦可)时被格式化
/** *@prettier */ 或 /** *@format */
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
false | --require-pragma | requirePragma: <bool> |
Prettier能够在文件的顶部插入一个 @format的特殊注释,以代表改文件已经被Prettier格式化过了。在使用 --require-pragma参数处理一连串的文件时这个功能将十分有用。若是文件顶部已经有一个doclock,这个选项将新建一行注释,并打上@format标记。
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
false | --insert-pragma | insertPragma: <bool> |
默认状况下,Prettier会由于使用了一些折行敏感型的渲染器(如GitHub comment 和 BitBucket)而按照markdown文本样式进行折行,但在某些状况下,你可能只是但愿这个文本在编译器或查看器中soft-wrapping(是当屏幕放不下时发生的软折行),因此这一参数容许设置为 " never "
有效参数:
默认值 | CLI(命令行参数)重写(覆盖)默认值 | API重写(配置文件) |
---|---|---|
" preserve " | --prose-wrap <always \ neve \preserver > | proseWrap:<always \ never \ preserver > |