# Посібник зі стилю

> Домовленості щодо стилю на рівні коду для шаблонів Hugo

---

LLMS index: [llms.txt](/llms.txt)

---

На цій сторінці зафіксовано домовленості щодо стилю на рівні коду для вебсайту OpenTelemetry, які наразі охоплюють шаблони Hugo. Щодо стилю _тексту_ та розмітки Markdown, дивіться натомість [Посібник зі стилю документації](/docs/contributing/style-guide/).

## Шаблони Hugo {#hugo-templates}

### Відступи {#indentation}

Для читабельності коду використовуйте належні відступи для вкладених блоків коду, зокрема всередині конструкцій `{{ if }}`, `{{ range }}` та `{{ with }}`.

### Керування пробілами {#whitespace-control}

Використовуйте тримери обрізання для [керування пробілами][whitespace control] в Hugo — `{{- ... }}` та `{{ ... -}}` — щоб згенерований вивід не містив зайвих порожніх рядків і відступів, зберігаючи при цьому читабельність вихідного коду шаблону.

- **Стандартно: обрізання лише справа.** Використовуйте `{{ ... -}}` — цього зазвичай достатньо, щоб згенерований вивід залишався охайним.
- Використовуйте **обрізання зліва** (`{{- ... }}`) або **двобічне обрізання** (`{{- ... -}}`) лише коли це виправдано, наприклад, щоб згорнути навколишні порожні рядки.
- **Вбудовані виводи всередині розмітки** не потребують обрізання. Наприклад, конструкція, що виводить значення атрибута, як-от `class="{{ $class }}"`, не потребує тримерів.

### Нові рядки в блоках `range` {#newlines-in-range-blocks}

Усередині блоків `range` розгляньте можливість використання `{{ "\n" -}}` або `{{- "\n" -}}`, щоб керувати новими рядками між ітераціями, уникаючи початкових і кінцевих порожніх рядків у згенерованому виводі.

[whitespace control]: https://gohugo.io/templates/introduction/#whitespace
