Files
kabellaengen/bin/tr2dxf.bat
T

87 lines
2.1 KiB
Batchfile

@echo off
REM Zentrale Batch-Datei für DXF/JSON-Übersetzungen
REM Wird von tr2dxf_XX.bat Dateien mit Sprachparameter aufgerufen
if [%1]==[] goto usage
if [%2]==[] goto usage
set "LANG=%1"
set "INPUT_FILE=%2"
for %%i in ("%INPUT_FILE%") do (
set "FILENAME=%%~ni"
set "EXT=%%~xi"
set "DIR=%%~dpi"
)
call "%~dp0setenv.bat"
REM echo Dateiname ohne Erweiterung: %FILENAME%
REM echo Erweiterung: %EXT%
REM echo Verzeichnis: %DIR%
REM echo Sprache: %LANG%
if exist "%PROJECT_BIN%\_setenv.bat" (
echo Lade lokale Umgebungseinstellungen aus _setenv.bat...
call "%PROJECT_BIN%\_setenv.bat"
)
REM Zielverzeichnis
set TARGET_DIR=%PROJECT_WORK%
mkdir "%TARGET_DIR%"
REM Prüfe Dateityp und wähle entsprechenden Workflow
if /I "%EXT%"==".json" goto retranslate_json
if /I "%EXT%"==".dxf" goto translate_dxf
if /I "%EXT%"==".dwg" goto translate_dxf
goto invalid_filetype
:translate_dxf
REM Namen der Ergebnisdateien
set RESULT_DXF=%FILENAME%_%LANG%.dxf
echo.
echo === Extracting TEXT, MTEXT and symbols, translating to %LANG% ===
call translate.bat --filename "%INPUT_FILE%" --translate %LANG% --todxf %RESULT_DXF%
if not exist "%PROJECT_WORK%\%RESULT_DXF%" (
@echo == failed: extracting texts
pause
goto :eof
)
echo.
echo === Translation file created: %PROJECT_WORK%\%RESULT_DXF% ===
pause
goto :eof
:retranslate_json
echo.
echo === Re-translating JSON file with current %LANG%.cfg ===
call translate.bat --retranslate-json "%INPUT_FILE%" --translate %LANG%
if errorlevel 1 (
@echo == failed: re-translating JSON
pause
goto :eof
)
echo.
echo === JSON file updated: %INPUT_FILE% ===
pause
goto :eof
:invalid_filetype
@echo FEHLER: Ungültiger Dateityp: %EXT%
@echo Erlaubt sind: .dxf, .dwg, .json
pause
goto :eof
:usage
@echo Usage: %0 ^<LANG^> ^<file.dxf^|file.json^>
@echo LANG: Zielsprache (CS, EN, FR, IT, ES)
@echo - .dxf/.dwg: Extrahiert und übersetzt Texte zur angegebenen Sprache
@echo - .json: Re-übersetzt vorhandene Übersetzungen mit aktueller LANG.cfg
@echo.
@echo Beispiele:
@echo %0 CS myfile.dxf
@echo %0 EN translations.json
exit /B 1
goto :eof