Экспериментальный вебсайт. Ошибки гарантированы❗

Командная строка Hugo

Интерфейс командной строки — текстовый способ взаимодействия с программой приложения или операционной системы.

Команда — задание программе Hugo посредством интерфейса командной строки.

Все команды следует выполнять из корня веб сайта.

Синопсис

Команда Hugo имеет следующую структуру:

hugo [command] [parameter] [argument]

где,

  • hugo — вызов генератора Hugo;
  • command — наименование команды, которую должен выполнить генератор;
  • parameter — уточнение для команды.

Встроенный справочник

Встроенный справочник команд Hugo имеет иерархическую струткуру. Верхний уровень справочника — перечисление всех команд:

hugo --help

Следующий уровень справочника — это параметры команды. Каждая команда имеет свой набор параметров. Уточнить список параметров команды можно следующим образум:

hugo [command] --help

Команды

Команды генератора Hugo:

  • build — генерировать вебсайт;
  • completion — генерировать скрипт автозавершения для указанной оболочки;
  • config — показать настройки вебсайта;
  • convert — конвертировать метаданные страницы в другой формат;
  • env — показать сведения о версии и окружении;
  • gen — генерировать документацию и стиль подсветки кода;
  • help — показать справочник команд Hugo;
  • import — импортировать вебсайт из другой платформы;
  • list — перечислить контент;
  • mod — управлять модулями;
  • new — создать новый компонент;
  • server — запустить встроенный вебсервер;
  • version — показать версию Hugo.

Параметры

Параметры команд генератора Hugo:

  • -b, --baseURL string — домен вебсайта, путь к корню вебсайта (например, http://example.ru/);
  • -D, --buildDrafts — включить в состав предварительного просмотра черновики;
  • -E, --buildExpired — включить в состав предварительного просмотра вебстраницы с истёкшей датой публикации;
  • -F, --buildFuture — включить в состав предварительного просмотра вебстраницы с предстоящей в будущем датой публикации;
  • --cacheDir string — файловый путь к кэширующему каталогу;
  • --cleanDestinationDir — удалить файлы, не найденные в статических каталогах;
  • --clock string — установить формат даты и времени для Hugo (например –clock 2025-11-06T22:30:00.00+09:00);
  • --config string — добавить или изменить строку в файле настройки (hugo.yaml|json|toml);
  • --configDir string — указать каталог с расположением файлов настроек (по умолчанию каталог config);
  • -c, --contentDir string — путь к каталогу с содержимым (по умолчанию каталог content);
  • -d, --destination string — файловый путь для записи файла;
  • --disableKinds strings — отключить различение типов страниц (home, docs, posts, RSS);
  • --disableLiveReload — отключить перезагрузку страниц вебсервера Hugo при каждом изменении файлов в режиме проектирования;
  • --enableGitInfo — добавить на страницу сведения о Git ревизии, дате, авторе, владельце (CODEOWNERS);
  • -e, --environment string — добавить окружение вебсайта;
  • --forceSyncStatic — копировать все файлы, если каталог static изменён;
  • --gc — запустить команду очистки, удалить неиспользуемый кэш после генерации вебсайта;
  • -h, --help — справочник команды;
  • --ignoreCache — игнорировать каталог кэша;
  • --ignoreVendorPaths string — игнорировать любой путь к модулю, указанный вендором (_vendor);
  • -l, --layoutDir string — путь к файлам каталога макетов layout;
  • --logLevel string — уровень журналирования (debug|info|warn|error);
  • --minify — минимизировать поддерживаемые форматы вывода (HTML, XML);
  • --noBuildLock — не создавать файл .hugo_build.lock;
  • --noChmod — не синхронизировать права доступа к файлу;
  • --noTimes — не синхронизировать время изменения файлов;
  • --panicOnWarning — паниковать, выдавать сообщения при первом же предупреждении (WARNING) в журнале;
  • --poll string — задать интервал опроса для наблюдения за изменениями в файлах (например –poll 700ms);
  • --printI18nWarnings — выдать сообщение об отсутствии перевода на другой язык;
  • --printMemoryUsage — выдавать с заданным интервалом на экран сообщения об использовании памяти;
  • --printPathWarnings — выдать сообщения о дубликатах целевого пути;
  • --printUnusedTemplates — выдать сообщение о неиспользуемых шаблонах;
  • --quiet — генерировать без вывода на экран служебных сообщений;
  • --renderSegments strings — указать сегмент представления, существующий в конфигурации сегментов segments config;
  • -M, --renderToMemory — компилировать (рендерить) в оперативную память, полезно для запуске встроенного сервера;
  • -s, --source string — указать путь для чтения указанного файла;
  • --templateMetrics — показать метрики выполняемого шаблона;
  • --templateMetricsHints — показать совет к метрикам (следует выполнять совместно в параметром --templateMetrics);
  • -t, --theme strings — указать одну из тем, расположенных в каталоге /themes/;
  • --themesDir string — указать путь к каталогу темы;
  • --trace file — вывести трассировку в файл;
  • -w, --watch — просмотреть изменённые файлы и пересоздать при необходимости.

Наиболее употребительные команды

Вызов Hugo без параметров генерирует статический сайт из существующих компонентов. При этом Hugo подставляет параметры по умолчанию или параметры, указанные в настройках окружения.

 hugo

Для создания нового сайта выполните команду:

hugo new site [siteName] --format [yaml | toml | json]
hugo new site MySiteName --format json

Для создания новой страницы выполните команду:

hugo new content [path/pageName]
hugo new content /posts/postName.md

Метаданные страницы будут вставлены из соответствующего архетипа. Наименование каталога определяет тип страницы. Например, каталог docs содержит страницы типа docs. Метаданные создаваемых страниц будет вставлены из архетипа /archetypes/docs.md.

Для запуска сервера предпросмотра выполните команду:

hugo server -D

Далее страницы сайта станут доступны в браузере по адресу: http://localhost:1313/.

По умолчанию сервер Hugo в процессе проектирования автоматически перезагружает страницу при каждом изменении на сайте. Отключить перезагрузку страниц:

hugo server --disableLiveReload

Часто в кэше остаются предыдущие версии веб сайта. Для того, чтобы обновить версию сайта необходимо обновить страницу браузера <Ctrl+Shift+R> или <Crtl+F5>. Если это не помогло, то следует полностью очистить кэш:

hugo --gc