All checks were successful
Gitea/kapitanbooru-uploader/pipeline/head This commit looks good
42 lines
1.2 KiB
Batchfile
42 lines
1.2 KiB
Batchfile
@echo off
|
|
setlocal enabledelayedexpansion
|
|
|
|
:: Extract version from pyproject.toml
|
|
for /f "usebackq tokens=2 delims== " %%v in (`findstr /R "^version *= *" pyproject.toml`) do set VERSION=%%v
|
|
set VERSION=%VERSION:"=%
|
|
echo Detected version: %VERSION%
|
|
|
|
pushd kapitanbooru_uploader
|
|
|
|
:: 1. Delete old .pot
|
|
del locales\messages.pot 2>nul
|
|
|
|
:: 2. Collect all .py files into a list
|
|
set PY_FILES=
|
|
for %%f in (*.py) do set PY_FILES=!PY_FILES! "%%f"
|
|
|
|
:: 3. Generate .pot file
|
|
if defined PY_FILES (
|
|
xgettext --package-name="Kapitanbooru Uploader" --package-version="%VERSION%" -d messages -o locales\messages.pot %PY_FILES%
|
|
) else (
|
|
echo Error: No .py files found.
|
|
exit /b 1
|
|
)
|
|
|
|
:: 4. Normalize .po headers with msgcat
|
|
for /D %%d in (locales\*) do (
|
|
if exist "%%d\LC_MESSAGES\messages.po" (
|
|
msgcat --no-location --sort-output -o "%%d\LC_MESSAGES\messages.po.new" "%%d\LC_MESSAGES\messages.po"
|
|
move /Y "%%d\LC_MESSAGES\messages.po.new" "%%d\LC_MESSAGES\messages.po"
|
|
)
|
|
)
|
|
|
|
:: 5. Force-update PO files
|
|
for /D %%d in (locales\*) do (
|
|
if exist "%%d\LC_MESSAGES\messages.po" (
|
|
msgmerge --update --force-po --backup=none "%%d\LC_MESSAGES\messages.po" locales\messages.pot
|
|
)
|
|
)
|
|
|
|
popd
|
|
echo Done. |