Beautify: Difference between revisions
No edit summary |
No edit summary |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
Code is sometimes ugly. You want to make it look pretty. http://jsbeautifier.org/ is one such tool. | Code is sometimes ugly. You want to make it look pretty. [http://jsbeautifier.org/ JS-beautify] is one such tool. | ||
For PHP, JavaScript and CSS, '''[https://github.com/PHPCSStandards/PHP_CodeSniffer PHP Code Sniffer]''' (phpcs) and its counterpart PHP Code Beautifier (phpcbf) work to ensure your code adheres to standards. | For [[PHP]], [[JavaScript]] and [[CSS]], '''[https://github.com/PHPCSStandards/PHP_CodeSniffer PHP Code Sniffer]''' (<code>phpcs</code>) and its counterpart '''PHP Code Beautifier''' (<code>phpcbf</code>) work to ensure your code adheres to standards. Project Documentation for PHP CodeSniffer is at https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki | ||
For using phpcs in MediaWiki, see [[mw:Manual:Coding_conventions/PHP|Manual:Coding_conventions/PHP]]. phpcs is enabled in ~89% of repositories hosted by WMF<ref>https://phpcs.toolforge.org/</ref> '''[https://github.com/wikimedia/mediawiki-tools-codesniffer MediaWiki Code Sniffer]''' is the '''set of rules''' (or ruleset to be more precise) that defines the standards for the MediaWiki project. | |||
You can <code>composer phpcs</code> to run the tool from the project root. For more on how to run it, see [[mw:Continuous_integration/PHP_CodeSniffer|Continuous_integration/PHP_CodeSniffer]] | |||
You can list the standards available in the MediaWiki project using the <code>-i</code> option. The standard you want to enforce/use is ''''MediaWiki'''<nowiki/>' | |||
<code>php ./vendor/bin/phpcs -i</code> | |||
<poem> | |||
The installed coding standards are | |||
MySource, | |||
PEAR, | |||
PSR1, | |||
PSR2, | |||
PSR12, | |||
Squiz, | |||
Zend, | |||
'''MediaWiki''', | |||
Modernize, | |||
NormalizedArrays, | |||
Universal and | |||
PHPCSUtils | |||
</poem> | |||
== Configuration == | |||
If you're a MediaWiki extension developer, you can create a <code>.phpcs.xml</code> configuration file that sets things up for the project and integrates with the MediaWiki vendored binaries. See [[using docker-compose-ci]] | |||
{{References}} | {{References}} | ||
[[Category:CSS]] | [[Category:CSS]] | ||