-
-
Notifications
You must be signed in to change notification settings - Fork 277
Expand file tree
/
Copy pathcode-checker.texy
More file actions
78 lines (54 loc) · 2.59 KB
/
code-checker.texy
File metadata and controls
78 lines (54 loc) · 2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Nette Code Checker
******************
.[perex]
[Code Checker |https://github.com/nette/code-checker] sprawdza Twoje pliki źródłowe i znajduje w nich formalne usterki, takie jak niewidoczny BOM, znaki kontrolne, błędne kodowanie czy nieprawidłowa składnia plików PHP, Latte, NEON, JSON i YAML, oraz potrafi je automatycznie naprawić.
Instalacja
==========
Zainstaluj go globalnie za pomocą Composera:
```shell
composer global require nette/code-checker
```
Upewnij się, że Twój globalny katalog `bin` Composera znajduje się w [zmiennej `$PATH` |https://getcomposer.org/doc/03-cli.md#global]. Polecenie `code-checker` jest wtedy dostępne z dowolnego miejsca, w dowolnym systemie operacyjnym.
Alternatywnie zainstaluj go jako samodzielny projekt:
```shell
composer create-project nette/code-checker
```
Wymaga PHP 8.0 lub nowszego.
Użytkowanie
===========
Domyślnie Code Checker działa w trybie tylko do odczytu i jedynie wypisuje znalezione problemy:
```shell
code-checker
```
Aby faktycznie naprawić pliki, dodaj `--fix`. Najpierw wykonaj kopię zapasową plików lub uruchom narzędzie na czystym drzewie roboczym, abyś mógł później przejrzeć zmiany za pomocą `git diff`:
```shell
code-checker --fix
```
Skanowanie możesz ograniczyć do konkretnej ścieżki, pominąć pliki lub uruchomić szybszą kontrolę samej składni:
```shell
code-checker -d src --ignore "temp/*"
code-checker --only-syntax
```
W trybie tylko do odczytu narzędzie kończy działanie z kodem `0`, gdy wszystko jest w porządku, oraz `1`, gdy znajdzie jakikolwiek problem, dzięki czemu dobrze pasuje do procesów CI.
Pełna lista opcji:
```
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
```
Co robi Code Checker
====================
- sprawdza składnię szablonów [Latte |latte:] oraz plików `.php`, `.neon` i `.json`
- usuwa [BOM |nette:glossary#BOM]
- weryfikuje, czy pliki są poprawnym UTF-8
- sprawdza występowanie [znaków kontrolnych |nette:glossary#Znaki kontrolne]
- wykrywa błędnie zapisane komentarze phpDoc (np. `/* @var` zamiast `/** @var`)
- wymusza wcięcia tabulatorami w plikach PHP, CSS, JS i TS oraz spacjami w YAML
- usuwa końcowe spacje i puste wiersze na końcu plików
- normalizuje końce wierszy do domyślnych dla systemu (za pomocą parametru `-l`)