prettier
prettier documentation
- Version in MegaLinter: 2.8.8
- Visit Official Web Site
- See How to configure prettier rules
- See How to disable prettier rules in files
- See Index of problems detected by prettier
Configuration in MegaLinter
- Enable prettier by adding TYPESCRIPT_PRETTIERin ENABLE_LINTERS variable
- Disable prettier by adding TYPESCRIPT_PRETTIERin DISABLE_LINTERS variable
- Enable autofixes by adding TYPESCRIPT_PRETTIERin APPLY_FIXES variable
| Variable | Description | Default value | 
|---|---|---|
| TYPESCRIPT_DEFAULT_STYLE | For prettier to be active, TYPESCRIPT_DEFAULT_STYLE must be prettier | standard | 
| TYPESCRIPT_PRETTIER_ARGUMENTS | User custom arguments to add in linter CLI call Ex: -s --foo "bar" | |
| TYPESCRIPT_PRETTIER_FILTER_REGEX_INCLUDE | Custom regex including filter Ex: (src\|lib) | Include every file | 
| TYPESCRIPT_PRETTIER_FILTER_REGEX_EXCLUDE | Custom regex excluding filter Ex: (test\|examples) | Exclude no file | 
| TYPESCRIPT_PRETTIER_CLI_LINT_MODE | Override default CLI lint mode - file: Calls the linter for each file- list_of_files: Call the linter with the list of files as argument- project: Call the linter from the root of the project | list_of_files | 
| TYPESCRIPT_PRETTIER_FILE_EXTENSIONS | Allowed file extensions. "*"matches any extension,""matches empty extension. Empty list excludes all filesEx: [".py", ""] | [".ts"] | 
| TYPESCRIPT_PRETTIER_FILE_NAMES_REGEX | File name regex filters. Regular expression list for filtering files by their base names using regex full match. Empty list includes all files Ex: ["Dockerfile(-.+)?", "Jenkinsfile"] | Include every file | 
| TYPESCRIPT_PRETTIER_PRE_COMMANDS | List of bash commands to run before the linter | None | 
| TYPESCRIPT_PRETTIER_POST_COMMANDS | List of bash commands to run after the linter | None | 
| TYPESCRIPT_PRETTIER_CONFIG_FILE | prettier configuration file nameUse LINTER_DEFAULTto let the linter find it | .prettierrc.json | 
| TYPESCRIPT_PRETTIER_RULES_PATH | Path where to find linter configuration file | Workspace folder, then MegaLinter default rules | 
| TYPESCRIPT_PRETTIER_DISABLE_ERRORS | Run linter but consider errors as warnings | true | 
| TYPESCRIPT_PRETTIER_DISABLE_ERRORS_IF_LESS_THAN | Maximum number of errors allowed | 0 | 
| TYPESCRIPT_PRETTIER_CLI_EXECUTABLE | Override CLI executable | ['prettier'] | 
IDE Integration
Use prettier in your favorite IDE to catch errors before MegaLinter !
MegaLinter Flavours
This linter is available in the following flavours
| Flavor | Description | Embedded linters | Info | |
|---|---|---|---|---|
|  | all | Default MegaLinter Flavor | 113 | |
| cupcake | MegaLinter for the most commonly used languages | 81 | ||
| javascript | Optimized for JAVASCRIPT or TYPESCRIPT based projects | 56 | 
Behind the scenes
How are identified applicable files
- File extensions: .ts
How the linting is performed
- prettier is called once with the list of files as arguments (list_of_filesCLI lint mode)
Example calls
prettier --check myfile.ts
prettier --config .prettierrc.json --check myfile.ts
prettier --config .prettierrc.json --write myfile.ts
Help content
Usage: prettier [options] [file/dir/glob ...]
By default, output is written to stdout.
Stdin is read if it is piped to Prettier and no files are given.
Output options:
  -c, --check              Check if the given files are formatted, print a human-friendly summary
                           message and paths to unformatted files (see also --list-different).
  -l, --list-different     Print the names of files that are different from Prettier's formatting (see also --check).
  -w, --write              Edit files in-place. (Beware!)
Format options:
  --arrow-parens <always|avoid>
                           Include parentheses around a sole arrow function parameter.
                           Defaults to always.
  --bracket-same-line      Put > of opening tags on the last line instead of on a new line.
                           Defaults to false.
  --no-bracket-spacing     Do not print spaces between brackets.
  --embedded-language-formatting <auto|off>
                           Control how Prettier formats quoted code embedded in the file.
                           Defaults to auto.
  --end-of-line <lf|crlf|cr|auto>
                           Which end of line characters to apply.
                           Defaults to lf.
  --html-whitespace-sensitivity <css|strict|ignore>
                           How to handle whitespaces in HTML.
                           Defaults to css.
  --jsx-single-quote       Use single quotes in JSX.
                           Defaults to false.
  --parser <flow|babel|babel-flow|babel-ts|typescript|acorn|espree|meriyah|css|less|scss|json|json5|json-stringify|graphql|markdown|mdx|vue|yaml|glimmer|html|angular|lwc>
                           Which parser to use.
  --print-width <int>      The line length where Prettier will try wrap.
                           Defaults to 80.
  --prose-wrap <always|never|preserve>
                           How to wrap prose.
                           Defaults to preserve.
  --quote-props <as-needed|consistent|preserve>
                           Change when properties in objects are quoted.
                           Defaults to as-needed.
  --no-semi                Do not print semicolons, except at the beginning of lines which may need them.
  --single-attribute-per-line
                           Enforce single attribute per line in HTML, Vue and JSX.
                           Defaults to false.
  --single-quote           Use single quotes instead of double quotes.
                           Defaults to false.
  --tab-width <int>        Number of spaces per indentation level.
                           Defaults to 2.
  --trailing-comma <es5|none|all>
                           Print trailing commas wherever possible when multi-line.
                           Defaults to es5.
  --use-tabs               Indent with tabs instead of spaces.
                           Defaults to false.
  --vue-indent-script-and-style
                           Indent script and style tags in Vue files.
                           Defaults to false.
Config options:
  --config <path>          Path to a Prettier configuration file (.prettierrc, package.json, prettier.config.js).
  --no-config              Do not look for a configuration file.
  --config-precedence <cli-override|file-override|prefer-file>
                           Define in which order config files and CLI options should be evaluated.
                           Defaults to cli-override.
  --no-editorconfig        Don't take .editorconfig into account when parsing configuration.
  --find-config-path <path>
                           Find and print the path to a configuration file for the given input file.
  --ignore-path <path>     Path to a file with patterns describing files to ignore.
                           Defaults to .prettierignore.
  --plugin <path>          Add a plugin. Multiple plugins can be passed as separate `--plugin`s.
                           Defaults to [].
  --plugin-search-dir <path>
                           Custom directory that contains prettier plugins in node_modules subdirectory.
                           Overrides default behavior when plugins are searched relatively to the location of Prettier.
                           Multiple values are accepted.
                           Defaults to [].
  --with-node-modules      Process files inside 'node_modules' directory.
Editor options:
  --cursor-offset <int>    Print (to stderr) where a cursor at the given position would move to after formatting.
                           This option cannot be used with --range-start and --range-end.
                           Defaults to -1.
  --range-end <int>        Format code ending at a given character offset (exclusive).
                           The range will extend forwards to the end of the selected statement.
                           This option cannot be used with --cursor-offset.
                           Defaults to Infinity.
  --range-start <int>      Format code starting at a given character offset.
                           The range will extend backwards to the start of the first line containing the selected statement.
                           This option cannot be used with --cursor-offset.
                           Defaults to 0.
Other options:
  --cache                  Only format changed files. Cannot use with --stdin-filepath.
                           Defaults to false.
  --cache-location <path>  Path to the cache file.
  --cache-strategy <metadata|content>
                           Strategy for the cache to use for detecting changed files.
  --no-color               Do not colorize error messages.
  --no-error-on-unmatched-pattern
                           Prevent errors when pattern is unmatched.
  --file-info <path>       Extract the following info (as JSON) for a given file path. Reported fields:
                           * ignored (boolean) - true if file path is filtered by --ignore-path
                           * inferredParser (string | null) - name of parser inferred from file path
  -h, --help <flag>        Show CLI usage, or details about the given flag.
                           Example: --help write
  -u, --ignore-unknown     Ignore unknown files.
  --insert-pragma          Insert @format pragma into file's first docblock comment.
                           Defaults to false.
  --loglevel <silent|error|warn|log|debug>
                           What level of logs to report.
                           Defaults to log.
  --no-plugin-search       Disable plugin autoloading.
  --require-pragma         Require either '@prettier' or '@format' to be present in the file's first docblock comment
                           in order for it to be formatted.
                           Defaults to false.
  --stdin-filepath <path>  Path to the file to pretend that stdin comes from.
  --support-info           Print support information as JSON.
  -v, --version            Print Prettier version.
Installation on mega-linter Docker image
- NPM packages (node.js):
