PHPCSStandards / PHP_CodeSniffer

PHP_CodeSniffer tokenizes PHP files and detects violations of a defined set of coding standards.
BSD 3-Clause "New" or "Revised" License
880 stars 54 forks source link

Config: revamp the help screen(s) #447

Closed jrfnl closed 4 months ago

jrfnl commented 5 months ago

👉🏻 This PR depends on PR #445 .

Description

This PR attempts to make the help information more informative and to improve the readability and findability of options.

This should be seen as a first step to address user concerns about difficulty in finding the options they are looking for and understanding how certain options work, like seen in the recent months in tickets #10/#294/#419, #248, #322, #415 and #434.

The format for the new screens is inspired by similar help screens as currently in use in various other typical CLI tools, like PHPUnit and PHPStan. This includes the choice for the use of colours and which colours to use.

The option descriptions are based on the previously available option descriptions with some improvements where I deemed those appropriate. I've elected to keep the descriptions short though as this is a help screen, not a tutorial.

Notes:

Todo:

Suggested changelog entry

The help screens have received a face-lift.

Types of changes

Testing this PR

To test this PR manually:

I'm in particularly looking for feedback on the choices made regarding:

Screenshots

New Help screen for PHPCS

image

New Help screen for PHPCBF

image

mbomb007 commented 5 months ago

The PR changes --colors to be the default, but the help text is wrong regarding that.

GaryJones commented 5 months ago

The PR changes --colors to be the default, but the help text is wrong regarding that.

I don't believe it does. From the original PR description:

The output, by default, is not coloured, as PHPCS default to --no-colors. To get coloured output, either ensure the colors option is saved as 1 in the user-specific configuration using --config-set colors 1 (making PHPCS default to --colors) or pass --colors on the command line.

mbomb007 commented 5 months ago

Okay, maybe I misunderstood what the change was when reading the code.

jrfnl commented 5 months ago

At the suggestion of @GaryJones - this is what the "before" looked like:

PHPCS: image

PHPCBF: image

jrfnl commented 4 months ago

Rebased without (further) changes after the merge of #445 to drop the commits which belonged to #445. Marking as ready for review.

If there is no further feedback I will merge this in a couple of days.

jrfnl commented 4 months ago

Rebased without changes, just squashed the commits together. Merging once the build passes.