eslint prettier的配置選項(參數)官網直譯

prettier的配置選項(參數)官網直譯

ATTENTION PLEASE:
本翻譯僅用於學習交流,禁止商業用途。請參考prettier官網css

我剛剛接觸文檔翻譯,英語自打大學英語六級(CET-6)經過後就在沒有提高過,如今基本上都快還給個人英語老師了@_@。直至發稿時,全網(百度)搜索沒有發現一片像樣的文檔,好事心又開始做怪,發出來就當祭天了(估計老天爺都嫌棄文筆差,最近看《明朝那些事兒》才知道祭天得用一種叫作「青詞」的專用文章,這事大奸臣嚴嵩的兒子作得好。。。。。)。好啦,不囉嗦了,若是有大神發現有錯誤,或者更好的翻譯,歡迎帶錘子來讀(萬分感激!)html

參數

Prettier工具少數幾個能夠定製的參數,在CLI命令行和配置文件中都可用。node

Print Width

設置prettier單行輸出(不折行)的(最大)長度。typescript

出於代碼的可讀性,咱們不推薦(單行)超過80個字符的coding方式。json

在代碼的書寫手冊中,單行最大長度常被設置爲100或120。可是,人們寫代碼時,不會刻意的使每行都達到這個上限值。爲便於閱讀,開發者們一般使用空格將過長的單行變成多行。最佳實踐是,每行的平均長度應當小於這個上限值。
另外一方面,Prettier 會盡力讓代碼在一行(因此鏈式調用就都被搞到一行了,不得不吐槽了^~^)。當print width被設置成120時,工具備可能產出過於緊湊的或是其餘不盡人意的代碼。api

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
80 --print-width  <int> printWidth: <int>

注:若是在格式markdown時,不想折行,請設置 prose wrap參數來禁止這一行爲。數組

Tab Width

設置工具每個水平縮進的空格數markdown

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
2 --tab-width  <int> tabWidth: <int>

Tabs

使用tab(製表位)縮進而非空格;app

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
false --use-tabs useTabs: <bool>

Semicolons

在語句末尾添加分號;函數

有效參數:

  • true - 在每一條語句後面添加分號
  • false - 只在有可能致使ASI錯誤的行首添加分號
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
true --mo-semi semi: <bool>

Quotes

使用單引號而非雙引號;

提示:

  • 在JSX語法中,全部引號均爲雙引號,該設置在JSX中被自動忽略
  • 在字符串中,若是一種引號在數量上超過另外一種引號,數量少的引號,將被用於格式化字符串;示例:"I 'm double quoted "被格式化後是:"I 'm double quoted "(我以爲這裏好像有點問題,可是親測例子結果就是這樣,按理說被較少使用的是單引號,可是例子就是雙引號包裹的,尊重原文吧) ;再例:"This \"example\" is single quoted "格式化事後:'This "example" is single quoted '
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
false --single-quote singleQuote: <bool>

Trailing Commas (尾逗號[a,b,c,d,] 數組項d後面的逗號就是尾逗號)

在任何可能的多行中輸入尾逗號。

有效參數:

  •  none  - 無尾逗號;
  •  es5  - 添加es5中被支持的尾逗號;
  •  all  - 全部可能的地方都被添加尾逗號;(包括函數參數),這個參數須要安裝nodejs8或更高版本;
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
none --trailing-comma <none \ es5 \ all > trailingCommas: <none \ es5 \ all>

Bracket Spacing (括號空格)

在對象字面量聲明所使用的的花括號後({)和前(})輸出空格

有效參數:

  • true - Example: {   foo: bar  }
  • false - Example: {foo: bar}
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
true --none-bracket-spacing bracketSpacing: <bool>

JSX Bracket上

在多行JSX元素最後一行的末尾添加 > 而使 > 單獨一行(不適用於自閉和元素)

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
false --jsx-bracket-same-line jsxBracketSameLinte: <bool>

Arrow Function Parentheses (適用於v1.9.0+)

爲單行箭頭函數的參數添加圓括號。

有效參數:

  • " avoid " - 儘量不添加圓括號,示例:x => x
  • " always " - 老是添加圓括號,示例: (x) => x
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
" avoid " --arrow-parens < avoid \ always > alwaysParens: <avoid \ always>

Range

只格式化某個文件的一部分;

這兩個參數能夠用於從指定起止偏移字符(單獨指定開始或結束、二者同時指定、分別指定)格式化代碼。
一下狀況,範圍將會擴展:

  • 回退至包含選中語句的第一行的開始
  • 向前直到選中語句的末尾

注意:這些參數不能夠同cursorOffset共用;

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
0 --range-start-< int > rangeStart: < int >
Infinity --range-end-< int > rangeEnd: < int >

Parser

指定使用哪種解析器。

babylon和flow都支持同一套JavaScript特性(包括Flow).Prettier將自動根據文件的輸入路徑選擇解析器,如非必要,不要修改該項設置。

內置的解析器包含:

  • babylon
  • flow
  • typescript v1.4.0+(是指Prettier的版本,幷包含該版本,下同)
  • postcss v1.4.0+
  • json v1.5.0+
  • graphql v1.5.0+
  • markdown v1.8.0+
  • 用戶自定義解析器 v1.5.0+
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
babylon --parser < string <br/> --parser ./my-parser parser: " <string> " <br/> parser: require(" ./my-parserrr ")

FilePath

指定文件的輸入路徑,這將被用於解析器參照。
示例:下面的將使用postcss解析器

cat foo | prettier --stdin-filepath foo.css

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
None --stdin-filepath <string> filePath: " <string> "

Require pragma (v1.7.0+)

Prettier能夠嚴格按照按照文件頂部的一些特殊的註釋格式化代碼,這些註釋稱爲「require pragma」(必須雜注)。這在逐步格式化一些大型、未經格式化過的代碼是十分有用的。
例如,一個帶有下面註釋的文件將在執行帶有 --require-pragma的cli指令(api配置文件亦可)時被格式化

/**
        *@prettier
        */

    或

        /**
        *@format
        */
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
false --require-pragma requirePragma: <bool>

Insert Pragma (v1.8.0+)

Prettier能夠在文件的頂部插入一個 @format的特殊註釋,以代表改文件已經被Prettier格式化過了。在使用 --require-pragma參數處理一連串的文件時這個功能將十分有用。若是文件頂部已經有一個doclock,這個選項將新建一行註釋,並打上@format標記。

默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
false --insert-pragma insertPragma: <bool>

Prose Wrap(v1.8.2+)

默認狀況下,Prettier會由於使用了一些折行敏感型的渲染器(如GitHub comment 和 BitBucket)而按照markdown文本樣式進行折行,但在某些狀況下,你可能只是但願這個文本在編譯器或查看器中soft-wrapping(是當屏幕放不下時發生的軟折行),因此這一參數容許設置爲 " never "

有效參數:

  • " always " - 當超出print width(上面有這個參數)時就折行
  • " never " - 不折行
  • " perserve " - 按照文件原樣折行 (v1.9.0+)
默認值 CLI(命令行參數)重寫(覆蓋)默認值 API重寫(配置文件)
" preserve " --prose-wrap <always \ neve \preserver > proseWrap:<always \ never \ preserver >
相關文章
相關標籤/搜索