feat: add Linux/Unix scripts and Makefile entry
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
#!/usr/bin/env bash
|
||||
# SFCraft 文档开发服务器入口 (Linux / macOS / Unix): 先同步贴图, 再启动 hugo server。
|
||||
# 贴图同步失败(有物品找不到)时终止启动。
|
||||
# 用法: ./scripts/dev.sh [-NoSync] [hugo server 参数...]
|
||||
set -euo pipefail
|
||||
|
||||
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
NOSYNC=0
|
||||
HUGO_ARGS=()
|
||||
for arg in "$@"; do
|
||||
case "$arg" in
|
||||
-NoSync|--no-sync|-nosync)
|
||||
NOSYNC=1
|
||||
;;
|
||||
*)
|
||||
HUGO_ARGS+=("$arg")
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$NOSYNC" -eq 0 ]; then
|
||||
echo
|
||||
echo "[1/2] 同步物品贴图"
|
||||
"$DIR/sync-items.sh"
|
||||
else
|
||||
echo "[跳过] 已指定 -NoSync, 不执行贴图同步"
|
||||
fi
|
||||
|
||||
if ! command -v hugo >/dev/null 2>&1; then
|
||||
echo "[错误] 未找到 hugo, 请安装 Hugo 或将其加入 PATH。" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "[2/2] 启动 hugo server"
|
||||
exec hugo server "${HUGO_ARGS[@]}"
|
||||
Reference in New Issue
Block a user