Nette Documentation Preview

syntax
Nette Code Checker
******************

.[perex]
[Code Checker |https://github.com/nette/code-checker] проверяет ваши исходные файлы на формальные недочёты вроде невидимого BOM, управляющих символов, повреждённой кодировки или неверного синтаксиса файлов PHP, Latte, NEON и JSON и умеет исправлять их автоматически.


Установка
=========

Установите его глобально через Composer:

```shell
composer global require nette/code-checker
```

Убедитесь, что глобальный каталог Composer `bin` находится [в вашем `$PATH` |https://getcomposer.org/doc/03-cli.md#global]. Команда `code-checker` тогда доступна откуда угодно и в любой операционной системе.

Как вариант, установите его как самостоятельный проект:

```shell
composer create-project nette/code-checker
```

Он требует PHP 8.0 или новее.


Использование
=============

По умолчанию Code Checker работает в режиме только для чтения и лишь сообщает о найденных проблемах:

```shell
code-checker
```

Чтобы файлы действительно исправлять, добавьте `--fix`. Сначала сделайте резервную копию файлов или запускайте его на чистом рабочем дереве, чтобы потом просмотреть изменения через `git diff`:

```shell
code-checker --fix
```

Проверку можно ограничить конкретным путём, пропускать файлы или выполнять более быструю проверку только синтаксиса:

```shell
code-checker -d src --ignore "temp/*"
code-checker --only-syntax
```

В режиме только для чтения инструмент завершается с кодом `0`, когда всё в порядке, и `1`, когда находит какую-нибудь ошибку или исправимую проблему, так что он хорошо вписывается в конвейеры CI.

Полный список параметров:

```
Usage: code-checker [options]

Options:
	-d <path>             Folder or file to scan (default: current directory)
	-i | --ignore <mask>  Files to ignore
	-f | --fix            Fix the files
	-l | --eol            Normalize line endings to the system default
	--only-syntax         Check syntax only (faster)
	--no-progress         Do not show progress dots
	--version             Show version
```


Что делает Code Checker
=======================

- проверяет синтаксис шаблонов [Latte |latte:] и файлов `.php`, `.neon` и `.json`
- убирает [BOM |nette:glossary#BOM]
- проверяет, что файлы являются корректным UTF-8
- проверяет [управляющие символы |nette:glossary#Управляющие символы]
- обнаруживает неправильно записанные комментарии phpDoc (например, `/* @var` вместо `/** @var`)
- сообщает о PHP-файлах, в которых нет объявления `declare(strict_types=1)`
- требует табуляции для отступов в файлах PHP, CSS, JS и TS и пробелов в YAML
- убирает пробелы в конце строк и пустые строки в конце файлов
- приводит окончания строк к принятым в системе (с параметром `-l`)

Nette Code Checker

Code Checker проверяет ваши исходные файлы на формальные недочёты вроде невидимого BOM, управляющих символов, повреждённой кодировки или неверного синтаксиса файлов PHP, Latte, NEON и JSON и умеет исправлять их автоматически.

Установка

Установите его глобально через Composer:

composer global require nette/code-checker

Убедитесь, что глобальный каталог Composer bin находится в вашем $PATH. Команда code-checker тогда доступна откуда угодно и в любой операционной системе.

Как вариант, установите его как самостоятельный проект:

composer create-project nette/code-checker

Он требует PHP 8.0 или новее.

Использование

По умолчанию Code Checker работает в режиме только для чтения и лишь сообщает о найденных проблемах:

code-checker

Чтобы файлы действительно исправлять, добавьте --fix. Сначала сделайте резервную копию файлов или запускайте его на чистом рабочем дереве, чтобы потом просмотреть изменения через git diff:

code-checker --fix

Проверку можно ограничить конкретным путём, пропускать файлы или выполнять более быструю проверку только синтаксиса:

code-checker -d src --ignore "temp/*"
code-checker --only-syntax

В режиме только для чтения инструмент завершается с кодом 0, когда всё в порядке, и 1, когда находит какую-нибудь ошибку или исправимую проблему, так что он хорошо вписывается в конвейеры CI.

Полный список параметров:

Usage: code-checker [options]

Options:
	-d <path>             Folder or file to scan (default: current directory)
	-i | --ignore <mask>  Files to ignore
	-f | --fix            Fix the files
	-l | --eol            Normalize line endings to the system default
	--only-syntax         Check syntax only (faster)
	--no-progress         Do not show progress dots
	--version             Show version

Что делает Code Checker

  • проверяет синтаксис шаблонов Latte и файлов .php, .neon и .json
  • убирает BOM
  • проверяет, что файлы являются корректным UTF-8
  • проверяет управляющие символы
  • обнаруживает неправильно записанные комментарии phpDoc (например, /* @var вместо /** @var)
  • сообщает о PHP-файлах, в которых нет объявления declare(strict_types=1)
  • требует табуляции для отступов в файлах PHP, CSS, JS и TS и пробелов в YAML
  • убирает пробелы в конце строк и пустые строки в конце файлов
  • приводит окончания строк к принятым в системе (с параметром -l)