Шпаргалка ни в коей мере не является альтернативой официальной документации или руководствам по генератору статических сайтов Hugo.

Локальный сервер

Описание команды: https://gohugo.io/commands/hugo_server/#hugo-server

Дефолтный локальный адрес: http://localhost:1313/

Запуск локального сервера с указанием конкретной папки с контентом

Два равнозначных варианта команды:

hugo server --contentDir string
hugo server -c string

Пример:

hugo server --contentDir /Users/zlonov/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/🧬live

Автоматический переход к изменённой странице

Два равнозначных варианта команды:

hugo server --navigateToChanged
hugo server -N

Пример:

hugo server --navigateToChanged --contentDir /Users/zlonov/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/🧬live

Автоматическое удаление папки со сгенерированным сайтом после остановки сервера

Вторая команда запускается после завершения первой и удаляет папку public:

hugo server && rm -rf public

Как вариант, папку можно не удалять, а переименовывать. Так и сгенерированный сайт сохранится и при следующем запуске папка public будет создана с нуля:

hugo server && mv public public_last

Пример:

hugo server --navigateToChanged --contentDir /Users/zlonov/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/🧬live && mv public public_last

Содержание

Проверить, что содержание не пустое

{{ with .TableOfContents }}
	<!-- the variable is set -->
	{{ if ne .TableOfContents "<nav id=\"TableOfContents\"></nav>" }}
		<!-- the variable is not an empty navigation -->
		{{ . }}
		<!-- it is a dot because we are inside of a `with` -->
	{{ end }}
{{ end }}
Источник:

Сокращённый вариант с реальным примером:

{{ if ne .TableOfContents "<nav id=\"TableOfContents\"></nav>" }}
	<div class="row">
	    <div class="col-sm-3 order-sm-2">{{ .TableOfContents }}</div>
		<div class="serif main-content col-sm-9 order-sm-1">{{ .Content | markdownify | safeHTML }}</div>
	</div>
{{ else }}
	<div class="serif main-content">{{ .Content | markdownify | safeHTML }}</div>
{{ end }}

Ccылки

Использование точек в именах файлов

В версии 0.146+ есть проблема с использованием точек в именах файлах: Hugo отсекает всё, что идёт после первой точки, поэтому для файла c именем, например, 2025-04 18 10.27.52.md будет создана страница /2025-04-18-10/index.html , а не /2025-04-18-10.27.52/index.html , как хотелось бы.

Варианта решения пока два:

  1. Отказаться от использования точек, заменив их, например, на дефис: 2025-04 18 10-27-52.md или нижнее подчёркивание: 2025-04 18 10_27_52.md
  2. Использовать явное указание желаемое результата в параметрах: slug: 2025-04 18 10.27.52
Справка про управление ссылками: