sudakov.spb.ru

Бортовой журнал жизни (ту-152)

26 мар. 2025

Инструкция по настройке Ink-Free

Этот файл config.toml содержит основные настройки для сайта на Hugo с темой Ink-Free. Ниже приведены пояснения к каждому разделу.

1️⃣ Основные настройки сайта

baseURL = "http://example.org/"
languageCode = "en-us"
title = "Ink-Free"
theme = "ink-free"
  • baseURL — базовый URL сайта. Замените http://example.org/ на ваш реальный домен.
  • languageCode — язык сайта (например, ru-ru для русского).
  • title — заголовок сайта.
  • theme — название используемой темы (должно совпадать с именем папки в themes/).

2️⃣ Пагинация (разбиение на страницы)

[pagination]
pagerSize = 5
  • pagerSize — количество записей на одной странице блога.

3️⃣ Авторские права

copyright = "© Copyright notice"
  • Текст, который будет отображаться внизу страницы.

4️⃣ ЧПУ (пермалинки)

[permalinks]
  posts = "/:year/:month/:title"
  • Определяет структуру ссылок на посты (год/месяц/название). Можно настроить под свои нужды.

5️⃣ Основные параметры темы

[params]
subtitle = "Crisp, minimal, privacy-conscious personal [blog theme for Hugo](https://github.com/chollinger93/ink-free)"
  • subtitle — подзаголовок, который будет отображаться на сайте.

Аватар (необязательный)

# avatar = "https://image.freepik.com/free-vector/young-man-head-with-beard-avatar-character_24877-36786.jpg"
  • Если хотите добавить аватар, раскомментируйте строку и укажите ссылку на изображение.

Цветовая схема

mode = "auto"
  • dark — тёмный режим.
  • light — светлый режим.
  • auto — автоматически подстраивается под систему пользователя.

Полный список всех доступных стилей можно посмотреть здесь: 👉 https://xyproto.github.io/splash/docs/

Оглавление (Table of Contents, TOC)

Этот блок ([params]) управляет отображением оглавления на сайте.

  • toc = "both" — тип отображения оглавления:
    • static (или true) — статическое оглавление перед статьёй.
    • floating — плавающее оглавление сбоку.
    • both — оба варианта одновременно.
    • none — отключает оглавление.
  • enableTocTrunate = true — если последняя заголовочная секция в TOC не помещается, Hugo будет автоматически скрывать всё, кроме заголовков H1 и H2.

Количество тегов и чтение

maxTags = 7
wpm = 250
  • maxTags — максимальное количество тегов, отображаемых для поста.
  • wpm — скорость чтения в словах в минуту (используется для расчёта времени чтения).

6️⃣ “Глупые” футеры 😄

footers = [
  "What Tiger King can teach us about x86 Assembly",
  "10 Reasons why gcc SHOULD be re-written in JavaScript - You won't believe #8!"
]
  • Эти строки будут случайно появляться внизу страницы. Можно добавить свои шутки или цитаты.

7️⃣ Социальные ссылки

[[params.social]]
name = "Github"
icon = "github"
url = "https://github.com/chollinger93/"
  • name — название соцсети.
  • icon — иконка (использует Feather Icons).
  • url — ссылка на профиль.

Добавьте аналогичные блоки для других соцсетей (Twitter, RSS и т.д.).


8️⃣ Меню

[[menu.main]]
name = "Home"
url = "/"
weight = 1
  • Определяет пункты меню.
  • weight — порядок следования (меньшее число = выше в списке).

9️⃣ Таксономии (теги)

[taxonomies]
   tag = "tags"
  • Позволяет группировать записи по тегам.

🔟 Настройки разметки и подсветки кода

[markup]
  [markup.highlight]
    codeFences = true
    lineNos = true
    style = "github"
  [markup.tableOfContents]
    startLevel = 2
    endLevel = 3
  [markup.goldmark.renderer]
    unsafe = true

[markup]

Этот раздел отвечает за обработку разметки и отображение кода в Hugo.

[markup.highlight] — Подсветка синтаксиса

Этот блок управляет отображением кода в статьях.

  • codeFences = true — включает поддержку ограждений кода (```) в Markdown.
  • guessSyntax = false — отключает автоматическое определение синтаксиса.
  • hl_Lines = "" — определяет строки, которые нужно подсвечивать (оставлено пустым, значит, не используется).
  • lineNoStart = 1 — начальный номер строки для нумерации.
  • lineNos = false — отключает нумерацию строк в коде.
  • lineNumbersInTable = true — включает отображение номеров строк в отдельной колонке таблицы.
  • noClasses = true — отключает использование CSS-классов для подсветки (Hugo будет использовать встроенные стили).
  • style = "dracula" — выбирает стиль подсветки кода (используется “Dracula”).
  • tabWidth = 4 — задает ширину табуляции (4 пробела).

[markup.tableOfContents] — Настройки оглавления

  • endLevel = 3 — максимальный уровень заголовков, которые будут включены в оглавление.
  • ordered = true — нумерованное оглавление (если false, будет использоваться маркированный список).
  • startLevel = 2 — начиная с какого уровня заголовков (h2) строить оглавление.

[markup.goldmark] — Рендеринг Markdown

  • [markup.goldmark.renderer]
    • unsafe = true — позволяет использовать небезопасный HTML-код в Markdown (например, <script>, <iframe> и другие теги, которые по умолчанию удаляются).

✅ Итог

После настройки файла config.toml, перезапустите Hugo:

hugo server -D
А ты знал: "Зачем писать документацию, если можно оставить TODO-комментарий?"