## Спасибо за то, что делаете WLED лучше!

Вот несколько советов, которые помогут вам внести свой вклад!  

### Опишите свой PR

Пожалуйста, добавьте описание предлагаемых вами изменений в коде. Это не должно быть исчерпывающим эссе, однако PR без описания или с несколькими словами может быть отклонён просто потому, что отсутствует базовая информация.

Хорошее описание помогает нам рассмотреть и понять ваши предлагаемые изменения. Например, вы можете сказать несколько слов о:
* том, чего вы пытаетесь достичь (новая функция, исправление ошибки, рефакторинг, улучшения безопасности и т. д.);
* работе вашего кода (краткое техническое резюме — сосредоточьтесь на важных аспектах, которые могут быть неочевидными при чтении кода);
* проведённом вами тестировании, известных ограничениях, открытых вопросах, которые вы, возможно, не смогли решить;
* любых областях, где вы хотели бы получить помощь от опытного сопровождающего (да, WLED стал большим 😉).

### Целевая ветка для запросов на вытягивание

Пожалуйста, делайте все PR против ветки `0_15`.

### Стиль кода

Если вы сомневаетесь, проще всего воспроизвести стиль кода, который вы найдёте в файлах, которые хотите отредактировать :) Ниже приведены рекомендации, которые мы используем в репозитории WLED.

#### Отступ

Мы используем табуляции для отступа в веб-файлах (.html/.css/.js) и пробелы (по 2 на уровень отступа) для всех остальных файлов. Вы всё сделаете правильно, если у вас включена опция «Редактор: определение отступов» в VS Code.

#### Блоки

Должна ли открывающая скобка блока `if`, например, находиться в той же строке, что и условие, или в отдельной строке, зависит от вашего усмотрения. Если есть только одно утверждение, допустимо опустить блоки.

Хорошо:  
```cpp
if (a == b) {
  doStuff(a);
}
```

```cpp
if (a == b)
{
  doStuff(a);
}
```

```cpp
if (a == b) doStuff(a);
```

Всегда должно быть пространство между ключевым словом и его условием и между условием и скобкой. В условии не должно быть пространства между круглыми скобками и переменными. Пространства между переменными и операторами зависят от усмотрения автора. Не должно быть места между именами функций и их аргументами в скобках.

Хорошо:  
```cpp
if (a == b) {
  doStuff(a);
}
```

Нехорошо:  
```cpp
if( a==b ){
  doStuff ( a);
}
```

#### Комментарии

В комментариях должен быть пробел между разделительными символами (например, `//`) и текстом комментария. Обратите внимание: это недавнее изменение, в большинстве кодовых баз по-прежнему есть комментарии без пробелов.

Хорошо:  
```
// Это комментарий.

/* Это CSS-комментарий */

/* 
 * Это комментарий,
 * охватывающий несколько строк,
 * используемый в WLED для заголовков файлов и объяснений функций
 */

<!-- Это HTML-комментарий -->
```

Для комментариев в одной строке нет жёсткого ограничения по количеству символов, хотя рекомендуется переносить после 120 символов. Встроенные комментарии допустимы, если они описывают только эту строку и не слишком широкие.