Хьюго не может найти каталог тем - PullRequest
0 голосов
/ 11 октября 2018

В моем проекте у меня есть небольшой скрипт, который запускает несколько скриптов сборки для подготовки моего разработчика.Но моя текущая конфигурация вызывает ошибку.Он ищет каталог тем в неправильном месте.

Мой скрипт сборки находится в корневом каталоге.И мое приложение Hugo живет в frontend/.Я хочу вызвать скрипт сборки из маршрута и сделать так, чтобы он собирался.

/my-project
  /frontend
    /custom-theme
  build-script.sh

Мой frontend/config.toml:

baseURL = "https://site.local"
title = "Site Title"
themesDir = "themes"
theme = "custom-theme"
disableKinds = [ "taxonomyTerm", "taxonomy", "robotsTXT" ]

Когда я запускаю свой скрипт сборки из каталога сборки сВ следующей команде я получаю сообщение об ошибке:

# Build HTML and CSS
npm run build:dev --prefix $PWD/frontend/themes/custom-theme

# Hugo frontend
hugo --config $PWD/frontend/config.dev.toml

# Build PHP dependencies
composer install -d $PWD/api/

Ошибка:

Error: Unable to find theme Directory: C:\Users\James\Projects\my-project\themes\custom-theme

Отсутствует часть пути \frontend.Это должно быть:

C:\Users\James\Projects\my-project\frontend\themes\custom-theme

Можно ли сказать Гюго, где искать темы?

1 Ответ

0 голосов
/ 15 октября 2018

Похоже, Хьюго предполагает, что ваши пути относительно текущего каталога.Вы строите из каталога C:\Users\James\Projects\my-project, поэтому, когда Хьюго объединяет это с вашим значением themesDir, равным themes, он получает C:\Users\James\Projects\my-project\themes.Вместо этого попробуйте установить themesDir = "frontend\themes".

. Следствием этого является то, что вам нужно будет установить и все остальные параметры каталога, если вы хотите, чтобы Hugo вел себя так же, как если бы вы строили из каталога frontend,Например, вам нужно установить contentDir = "frontend\content" и layoutDir = "frontend\layout".Вы можете проверить, какие каталоги настраиваются в документации Hugo .

Предупреждение: я сам на самом деле не проверял это, поэтому, если он не работает, возможно, поэтому.:)

...