https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards
http://cs.sensiolabs.org/
php-cs-fixer has dry-run mode.
https://gist.github.com/andrei0807/a0e7e4f22d6f3d42c88d489a7d303771 ( :-)
https://confluence.jetbrains.com/display/PhpStorm/PHP+Code+Sniffer+in+PhpStorm#PHPCodeSnifferinPhpStorm-1.EnablePHPCodeSnifferintegrationinPhpStorm
Default (?) Storm has build in Wordpress standard and it seem work well.
I have tried format code from Code menu for a folder and its result is as expected.
We have to install PHPCodeSniff ? (May be for automatic hinting, suggest ?). See link above for install on Windows Xampp.
http://web-techno.net/code-quality-check-tools-php/#phpcs-php-codesniffer
https://www.jetbrains.com/help/phpstorm/using-php-code-sniffer-tool.html
Fucking Windows .bat (I miss this point to phpcs, so it not work, it should be ...phpcs.bat)
ENV path should be separate like this (not only one record):
http://www.bravo-kernel.com/2017/03/installing-php7-composer-and-codesniffer-on-windows10-for-vscode/
export PATH=$PATH:"/C/Program Files (x86)/apache-maven-3.3.3/bin" (GitBash do the trick)
https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards#installation
Dammit, no one noted ab how to add Standard to PHPCS. I have to manually clone PHP WP standard to PHP-CS install path. (AppData/Roaming ...).
https://dri.es/clean-css-with-stylelint
Again basedir have to set in C:/Users/Admin/AppData/Roaming/npm/node_modules/
It seem default D:/Program File/node_modules/ has nothing.
npm install -g stylelint-config-standard stylelint-no-browser-hacks
.stylelintrc
{
"extends": "C:/Users/Admin/AppData/Roaming/npm/node_modules/stylelint-config-standard/",
"rules": {
"at-rule-empty-line-before": [ "always", {
"except": [ "first-nested" ],
"ignore": [ "after-comment", "blockless-after-blockless" ],
"ignoreAtRules": ["else"]
} ],
"at-rule-name-case": "lower",
"at-rule-name-space-after": "always-single-line",
"at-rule-semicolon-newline-after": "always",
"block-closing-brace-newline-after": "always",
"block-closing-brace-newline-before": "always-multi-line",
"block-closing-brace-space-before": "always-single-line",
"block-no-empty": true,
"block-opening-brace-newline-after": "always-multi-line",
"block-opening-brace-space-after": "always-single-line",
"block-opening-brace-space-before": "always",
"color-hex-case": "lower",
"color-hex-length": "short",
"color-no-invalid-hex": true,
"comment-empty-line-before": [ "always", {
"except": ["first-nested"],
"ignore": ["stylelint-commands"]
} ],
"comment-whitespace-inside": "always",
"declaration-bang-space-after": "never",
"declaration-bang-space-before": "always",
"declaration-block-no-shorthand-property-overrides": true,
"declaration-block-semicolon-newline-after": "always-multi-line",
"declaration-block-semicolon-space-after": "always-single-line",
"declaration-block-semicolon-space-before": "never",
"declaration-block-single-line-max-declarations": 1,
"declaration-block-trailing-semicolon": "always",
"declaration-colon-newline-after": "always-multi-line",
"declaration-colon-space-after": "always-single-line",
"declaration-colon-space-before": "never",
"function-calc-no-unspaced-operator": true,
"function-comma-newline-after": "always-multi-line",
"function-comma-space-after": "always-single-line",
"function-comma-space-before": "never",
"function-linear-gradient-no-nonstandard-direction": true,
"function-max-empty-lines": 0,
"function-parentheses-newline-inside": "always-multi-line",
"function-parentheses-space-inside": "never-single-line",
"function-whitespace-after": "always",
"indentation": "tab",
"keyframe-declaration-no-important": true,
"length-zero-no-unit": true,
"max-empty-lines": 1,
"media-feature-colon-space-after": "always",
"media-feature-colon-space-before": "never",
"media-feature-parentheses-space-inside": "never",
"media-feature-range-operator-space-after": "always",
"media-feature-range-operator-space-before": "always",
"media-query-list-comma-newline-after": "always-multi-line",
"media-query-list-comma-space-after": "always-single-line",
"media-query-list-comma-space-before": "never",
"no-empty-source": true,
"no-eol-whitespace": true,
"no-extra-semicolons": true,
"no-invalid-double-slash-comments": true,
"no-missing-end-of-source-newline": true,
"number-leading-zero": "always",
"number-no-trailing-zeros": true,
"property-case": "lower",
"selector-attribute-brackets-space-inside": "never",
"selector-attribute-operator-space-after": "never",
"selector-attribute-operator-space-before": "never",
"selector-combinator-space-after": "always",
"selector-combinator-space-before": "always",
"selector-list-comma-newline-after": "always",
"selector-list-comma-space-before": "never",
"selector-max-empty-lines": 0,
"selector-pseudo-class-case": "lower",
"selector-pseudo-class-no-unknown": true,
"selector-pseudo-class-parentheses-space-inside": "never",
"selector-pseudo-element-case": "lower",
"selector-pseudo-element-no-unknown": true,
"selector-type-case": "lower",
"selector-type-no-unknown": true,
"shorthand-property-no-redundant-values": true,
"string-no-newline": true,
"unit-case": "lower",
"unit-no-unknown": true,
"value-list-comma-newline-after": "always-multi-line",
"value-list-comma-space-after": "always-single-line",
"value-list-comma-space-before": "never"
}
}
Some SCSS refactor:
https://stylelint.io/user-guide/rules/selector-pseudo-element-colon-notation/
https://stylelint.io/user-guide/rules/no-descending-specificity/
http://cs.sensiolabs.org/
php-cs-fixer has dry-run mode.
https://gist.github.com/andrei0807/a0e7e4f22d6f3d42c88d489a7d303771 ( :-)
https://confluence.jetbrains.com/display/PhpStorm/PHP+Code+Sniffer+in+PhpStorm#PHPCodeSnifferinPhpStorm-1.EnablePHPCodeSnifferintegrationinPhpStorm
Default (?) Storm has build in Wordpress standard and it seem work well.
I have tried format code from Code menu for a folder and its result is as expected.
We have to install PHPCodeSniff ? (May be for automatic hinting, suggest ?). See link above for install on Windows Xampp.
http://web-techno.net/code-quality-check-tools-php/#phpcs-php-codesniffer
https://www.jetbrains.com/help/phpstorm/using-php-code-sniffer-tool.html
Fucking Windows .bat (I miss this point to phpcs, so it not work, it should be ...phpcs.bat)
ENV path should be separate like this (not only one record):
http://www.bravo-kernel.com/2017/03/installing-php7-composer-and-codesniffer-on-windows10-for-vscode/
export PATH=$PATH:"/C/Program Files (x86)/apache-maven-3.3.3/bin" (GitBash do the trick)
https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards#installation
Dammit, no one noted ab how to add Standard to PHPCS. I have to manually clone PHP WP standard to PHP-CS install path. (AppData/Roaming ...).
https://dri.es/clean-css-with-stylelint
Again basedir have to set in C:/Users/Admin/AppData/Roaming/npm/node_modules/
It seem default D:/Program File/node_modules/ has nothing.
npm install -g stylelint-config-standard stylelint-no-browser-hacks
.stylelintrc
{
"extends": "C:/Users/Admin/AppData/Roaming/npm/node_modules/stylelint-config-standard/",
"rules": {
"at-rule-empty-line-before": [ "always", {
"except": [ "first-nested" ],
"ignore": [ "after-comment", "blockless-after-blockless" ],
"ignoreAtRules": ["else"]
} ],
"at-rule-name-case": "lower",
"at-rule-name-space-after": "always-single-line",
"at-rule-semicolon-newline-after": "always",
"block-closing-brace-newline-after": "always",
"block-closing-brace-newline-before": "always-multi-line",
"block-closing-brace-space-before": "always-single-line",
"block-no-empty": true,
"block-opening-brace-newline-after": "always-multi-line",
"block-opening-brace-space-after": "always-single-line",
"block-opening-brace-space-before": "always",
"color-hex-case": "lower",
"color-hex-length": "short",
"color-no-invalid-hex": true,
"comment-empty-line-before": [ "always", {
"except": ["first-nested"],
"ignore": ["stylelint-commands"]
} ],
"comment-whitespace-inside": "always",
"declaration-bang-space-after": "never",
"declaration-bang-space-before": "always",
"declaration-block-no-shorthand-property-overrides": true,
"declaration-block-semicolon-newline-after": "always-multi-line",
"declaration-block-semicolon-space-after": "always-single-line",
"declaration-block-semicolon-space-before": "never",
"declaration-block-single-line-max-declarations": 1,
"declaration-block-trailing-semicolon": "always",
"declaration-colon-newline-after": "always-multi-line",
"declaration-colon-space-after": "always-single-line",
"declaration-colon-space-before": "never",
"function-calc-no-unspaced-operator": true,
"function-comma-newline-after": "always-multi-line",
"function-comma-space-after": "always-single-line",
"function-comma-space-before": "never",
"function-linear-gradient-no-nonstandard-direction": true,
"function-max-empty-lines": 0,
"function-parentheses-newline-inside": "always-multi-line",
"function-parentheses-space-inside": "never-single-line",
"function-whitespace-after": "always",
"indentation": "tab",
"keyframe-declaration-no-important": true,
"length-zero-no-unit": true,
"max-empty-lines": 1,
"media-feature-colon-space-after": "always",
"media-feature-colon-space-before": "never",
"media-feature-parentheses-space-inside": "never",
"media-feature-range-operator-space-after": "always",
"media-feature-range-operator-space-before": "always",
"media-query-list-comma-newline-after": "always-multi-line",
"media-query-list-comma-space-after": "always-single-line",
"media-query-list-comma-space-before": "never",
"no-empty-source": true,
"no-eol-whitespace": true,
"no-extra-semicolons": true,
"no-invalid-double-slash-comments": true,
"no-missing-end-of-source-newline": true,
"number-leading-zero": "always",
"number-no-trailing-zeros": true,
"property-case": "lower",
"selector-attribute-brackets-space-inside": "never",
"selector-attribute-operator-space-after": "never",
"selector-attribute-operator-space-before": "never",
"selector-combinator-space-after": "always",
"selector-combinator-space-before": "always",
"selector-list-comma-newline-after": "always",
"selector-list-comma-space-before": "never",
"selector-max-empty-lines": 0,
"selector-pseudo-class-case": "lower",
"selector-pseudo-class-no-unknown": true,
"selector-pseudo-class-parentheses-space-inside": "never",
"selector-pseudo-element-case": "lower",
"selector-pseudo-element-no-unknown": true,
"selector-type-case": "lower",
"selector-type-no-unknown": true,
"shorthand-property-no-redundant-values": true,
"string-no-newline": true,
"unit-case": "lower",
"unit-no-unknown": true,
"value-list-comma-newline-after": "always-multi-line",
"value-list-comma-space-after": "always-single-line",
"value-list-comma-space-before": "never"
}
}
Some SCSS refactor:
https://stylelint.io/user-guide/rules/selector-pseudo-element-colon-notation/
https://stylelint.io/user-guide/rules/no-descending-specificity/
Comments
Post a Comment