Prettier ships with a handful of customizable format options, usable in both the CLI and API.
## Print Width
Specify the length of line that the printer will wrap on.
**We strongly recommend against using more than 80 columns.**
Prettier works by cramming as much content as possible until it reaches the limit, which happens to work well for 80 columns but makes lines that are very crowded. When a bigger column count is used in styleguides, it usually means that code is allowed to go beyond 80 columns, but not to make every single line go there, like Prettier would do.
* Quotes in JSX will always be double and ignore this setting.
* If the number of quotes outweighs the other quote, the quote which is less used will be used to format the string - Example: `"I'm double quoted"` results in `"I'm double quoted"` and `"This \"example\" is single quoted"` results in `'This "example" is single quoted'`.
*`"es5"` - Trailing commas where valid in ES5 (objects, arrays, etc.)
*`"all"` - Trailing commas wherever possible (function arguments). This requires node 8 or a [transform](https://babeljs.io/docs/plugins/syntax-trailing-function-commas/).
These two options can be used to format code starting and ending at a given character offset (inclusive and exclusive, respectively). The range will extend:
Both the `babylon` and `flow` parsers support the same set of JavaScript features (including Flow). Prettier automatically infers the parser from the input file path, so you shouldn't have to change this setting.