// phpcs:disable Squiz.Strings.ConcatenationSpacing.PaddingFound -- Readability is more important.
$options['Scan targets']=[
'file'=>[
'argument'=>'<file|directory>',
'description'=>'One or more files and/or directories to check, space separated.',
],
'-'=>[
'argument'=>'-',
'description'=>'Check STDIN instead of local files and directories.',
],
'stdin-path'=>[
'argument'=>'--stdin-path=<stdinPath>',
'description'=>'If processing STDIN, the file path that STDIN will be processed as.',
],
'file-list'=>[
'argument'=>'--file-list=<fileList>',
'description'=>'Check the files and/or directories which are defined in the file to which the path is provided (one per line).',
],
'filter'=>[
'argument'=>'--filter=<filter>',
'description'=>'Check based on a predefined file filter. Use either the "GitModified" or "GitStaged" filter, or specify the path to a custom filter class.',
],
'ignore'=>[
'argument'=>'--ignore=<patterns>',
'description'=>'Ignore files based on a comma-separated list of patterns matching files and/or directories.',
],
'extensions'=>[
'argument'=>'--extensions=<extensions>',
'description'=>'Check files with the specified file extensions (comma-separated list). Defaults to php,inc/php,js,css.'."\n"
.'The type of the file can be specified using: ext/type; e.g. module/php,es/js.',
],
'l'=>[
'argument'=>'-l',
'description'=>'Check local directory only, no recursion.',
],
];
$options['Rule Selection Options']=[
'standard'=>[
'argument'=>'--standard=<standard>',
'description'=>'The name of, or the path to, the coding standard to use. Can be a comma-separated list specifying multiple standards. If no standard is specified, PHP_CodeSniffer will look for a [.]phpcs.xml[.dist] custom ruleset file in the current directory and those above it.',
],
'sniffs'=>[
'argument'=>'--sniffs=<sniffs>',
'description'=>'A comma-separated list of sniff codes to limit the scan to. All sniffs must be part of the standard in use.',
],
'exclude'=>[
'argument'=>'--exclude=<sniffs>',
'description'=>'A comma-separated list of sniff codes to exclude from the scan. All sniffs must be part of the standard in use.',
],
'blank-line'=>['spacer'=>''],
'i'=>[
'argument'=>'-i',
'description'=>'Show a list of installed coding standards.',
],
'e'=>[
'argument'=>'-e',
'description'=>'Explain a standard by showing the names of all the sniffs it includes.',
],
'generator'=>[
'argument'=>'--generator=<generator>',
'description'=>'Show documentation for a standard. Use either the "HTML", "Markdown" or "Text" generator.',
],
];
$options['Run Options']=[
'a'=>[
'argument'=>'-a',
'description'=>'Run in interactive mode, pausing after each file.',
],
'bootstrap'=>[
'argument'=>'--bootstrap=<bootstrap>',
'description'=>'Run the specified file(s) before processing begins. A list of files can be provided, separated by commas.',
],
'cache'=>[
'argument'=>'--cache[=<cacheFile>]',
'description'=>'Cache results between runs. Optionally, <cacheFile> can be provided to use a specific file for caching. Otherwise, a temporary file is used.',
],
'no-cache'=>[
'argument'=>'--no-cache',
'description'=>'Do not cache results between runs (default).',
],
'parallel'=>[
'argument'=>'--parallel=<processes>',
'description'=>'The number of files to be checked simultaneously. Defaults to 1 (no parallel processing).'."\n"
.'If enabled, this option only takes effect if the PHP PCNTL (Process Control) extension is available.',
],
'suffix'=>[
'argument'=>'--suffix=<suffix>',
'description'=>'Write modified files to a filename using this suffix ("diff" and "patch" are not used in this mode).',
],
'blank-line'=>['spacer'=>''],
'php-ini'=>[
'argument'=>'-d <key[=value]>',
'description'=>'Set the [key] php.ini value to [value] or set to [true] if value is omitted.'."\n"
.'Note: only php.ini settings which can be changed at runtime are supported.',
],
];
$options['Reporting Options']=[
'report'=>[
'argument'=>'--report=<report>',
'description'=>'Print either the "full", "xml", "checkstyle", "csv", "json", "junit", "emacs", "source", "summary", "diff", "svnblame", "gitblame", "hgblame", "notifysend" or "performance" report or specify the path to a custom report class. By default, the "full" report is displayed.',
],
'report-file'=>[
'argument'=>'--report-file=<reportFile>',
'description'=>'Write the report to the specified file path.',
],
'report-report'=>[
'argument'=>'--report-<report>=<reportFile>',
'description'=>'Write the report specified in <report> to the specified file path.',
],
'report-width'=>[
'argument'=>'--report-width=<reportWidth>',
'description'=>'How many columns wide screen reports should be. Set to "auto" to use current screen width, where supported.',
],
'basepath'=>[
'argument'=>'--basepath=<basepath>',
'description'=>'Strip a path from the front of file paths inside reports.',
],
'blank-line-1'=>['spacer'=>''],
'w'=>[
'argument'=>'-w',
'description'=>'Include both warnings and errors (default).',
],
'n'=>[
'argument'=>'-n',
'description'=>'Do not include warnings. Shortcut for "--warning-severity=0".',
],
'severity'=>[
'argument'=>'--severity=<severity>',
'description'=>'The minimum severity required to display an error or warning. Defaults to 5.',
],
'error-severity'=>[
'argument'=>'--error-severity=<severity>',
'description'=>'The minimum severity required to display an error. Defaults to 5.',
],
'warning-severity'=>[
'argument'=>'--warning-severity=<severity>',
'description'=>'The minimum severity required to display a warning. Defaults to 5.',
],
'blank-line-2'=>['spacer'=>''],
's'=>[
'argument'=>'-s',
'description'=>'Show sniff error codes in all reports.',
],
'ignore-annotations'=>[
'argument'=>'--ignore-annotations',
'description'=>'Ignore all "phpcs:..." annotations in code comments.',
],
'colors'=>[
'argument'=>'--colors',
'description'=>'Use colors in screen output.',
],
'no-colors'=>[
'argument'=>'--no-colors',
'description'=>'Do not use colors in screen output (default).',
],
'p'=>[
'argument'=>'-p',
'description'=>'Show progress of the run.',
],
'q'=>[
'argument'=>'-q',
'description'=>'Quiet mode; disables progress and verbose output.',
],
'm'=>[
'argument'=>'-m',
'description'=>'Stop error messages from being recorded. This saves a lot of memory but stops many reports from being used.',
],
];
$options['Configuration Options']=[
'encoding'=>[
'argument'=>'--encoding=<encoding>',
'description'=>'The encoding of the files being checked. Defaults to "utf-8".',
],
'tab-width'=>[
'argument'=>'--tab-width=<tabWidth>',
'description'=>'The number of spaces each tab represents.',
],
'blank-line'=>['spacer'=>''],
'config-explain'=>[
'text'=>'Default values for a selection of options can be stored in a user-specific CodeSniffer.conf configuration file.'."\n"
.'This applies to the following options: "default_standard", "report_format", "tab_width", "encoding", "severity", "error_severity", "warning_severity", "show_warnings", "report_width", "show_progress", "quiet", "colors", "cache", "parallel".',
],
'config-show'=>[
'argument'=>'--config-show',
'description'=>'Show the configuration options which are currently stored in the applicable CodeSniffer.conf file.',
],
'config-set'=>[
'argument'=>'--config-set <key> <value>',
'description'=>'Save a configuration option to the CodeSniffer.conf file.',
],
'config-delete'=>[
'argument'=>'--config-delete <key>',
'description'=>'Delete a configuration option from the CodeSniffer.conf file.',
],
'runtime-set'=>[
'argument'=>'--runtime-set <key> <value>',
'description'=>'Set a configuration option to be applied to the current scan run only.',