erste Fassung eines Python Skripts zur Skeleton Erzeugung über ein json Zwischenformat geschrieben

This commit is contained in:
2026-07-06 17:44:03 +02:00
parent fed13fa077
commit 48ec3abdba
16 changed files with 102180 additions and 8 deletions
+20
View File
@@ -0,0 +1,20 @@
@echo off
REM ================================================================
REM HundM_Fortna - Python Virtual Environment aktivieren
REM ================================================================
call "%~dp0setenv.bat"
if not exist "%PROJECT%\.venv" (
echo FEHLER: Virtual environment nicht gefunden.
echo Bitte zuerst bin\install_py.bat ausfuehren.
exit /b 1
)
call "%PROJECT%\.venv\Scripts\activate.bat"
echo Virtuelle Umgebung aktiviert.
echo Python-Version:
python --version
echo.
echo Installierte Pakete:
pip list
+22
View File
@@ -0,0 +1,22 @@
@echo off
REM ================================================================
REM HundM_Fortna - Skeleton-Generator aufrufen
REM
REM Liest die Eingabelisten (%PV_EINGABEN%) und erzeugt je Steuerung
REM ein Skeleton der JSON-Zwischendatei sowie ein SCL-Grundgeruest
REM nach %PV_RESULTS%.
REM ================================================================
call "%~dp0setenv.bat"
REM .venv bevorzugen, sonst System-Python
set "PYTHON=python"
if exist "%PROJECT%\.venv\Scripts\python.exe" (
set "PYTHON=%PROJECT%\.venv\Scripts\python.exe"
)
"%PYTHON%" "%PV_LIB%\create_skel.py" %*
if errorlevel 1 (
echo FEHLER: create_skel.py wurde mit Fehler beendet.
exit /b 1
)
+10 -5
View File
@@ -18,15 +18,20 @@ if errorlevel 1 (
exit /b 1
)
where dot >nul 2>nul
set "DOT_EXE=dot"
where %DOT_EXE% >nul 2>nul
if errorlevel 1 (
echo dot.exe wurde nicht gefunden. Bitte Graphviz installieren:
echo winget install --id Graphviz.Graphviz -e
exit /b 1
if exist "C:\Program Files\Graphviz\bin\dot.exe" (
set "DOT_EXE=C:\Program Files\Graphviz\bin\dot.exe"
) else (
echo dot.exe wurde nicht gefunden. Bitte Graphviz installieren:
echo winget install --id Graphviz.Graphviz -e
exit /b 1
)
)
echo Rendere %SVG_FILE% ...
dot -Tsvg "%DOT_FILE%" -o "%SVG_FILE%"
"%DOT_EXE%" -Tsvg "%DOT_FILE%" -o "%SVG_FILE%"
if errorlevel 1 (
echo Fehler beim Rendern der SVG-Datei.
exit /b 1
+7
View File
@@ -0,0 +1,7 @@
@echo off
REM ================================================================
REM HundM_Fortna - Shell mit gesetzten Umgebungsvariablen oeffnen
REM ================================================================
call "%~dp0setenv.bat"
start cmd /k "echo HundM_Fortna Umgebung aktiv. && echo PROJECT=%PROJECT%"
+21
View File
@@ -0,0 +1,21 @@
@echo off
REM ================================================================
REM HundM_Fortna - Python Virtual Environment einrichten
REM ================================================================
call "%~dp0setenv.bat"
if not exist "%PROJECT%\.venv" (
echo Initialisiere Python virtual environment...
py -m venv "%PROJECT%\.venv" --upgrade-deps
echo Erfolgreich.
call "%PROJECT%\.venv\Scripts\activate.bat"
echo Installiere erforderliche Python Packages...
pip install -r "%PROJECT%\requirements.txt" -q
echo Erfolgreich.
deactivate
) else (
echo .venv existiert bereits - Abbruch.
echo Zum Neuaufsetzen .venv loeschen und install_py.bat erneut ausfuehren.
)
+62
View File
@@ -0,0 +1,62 @@
@echo off
REM ================================================================
REM HundM_Fortna - Umgebungsvariablen Setup
REM ================================================================
echo Setting up environment variables for HundM_Fortna ...
REM Basis-Projektpfad (Elternordner von bin\)
set "PROJECT=%~dp0.."
if "%PROJECT:~-6%"=="bin\.." set "PROJECT=%PROJECT:~0,-6%"
if "%PROJECT:~-1%"=="\" set "PROJECT=%PROJECT:~0,-1%"
REM Pfade fuer die Komponenten
set "PV_BIN=%PROJECT%\bin"
set "PV_LIB=%PROJECT%\lib"
set "PV_CFG=%PROJECT%\cfg"
set "PV_DATA=%PROJECT%\data"
set "PV_DOC=%PROJECT%\doc"
set "PV_LOG=%PROJECT%\log"
set "PV_RESULTS=%PROJECT%\results"
set "PV_EXAMPLES=%PROJECT%\examples"
set "PV_TESTS=%PROJECT%\tests"
REM PYTHONPATH um PV_LIB erweitern (nur wenn noch nicht enthalten)
if not defined PYTHONPATH (
set "PYTHONPATH=%PV_LIB%"
) else (
echo.%PYTHONPATH% | find /i "%PV_LIB%" >nul || set "PYTHONPATH=%PYTHONPATH%;%PV_LIB%"
)
REM Ueberladen von Umgebungsvariablen durch _setenv.bat
REM (z.B. PV_DATA auf einen Netzlaufwerk-Pfad umbiegen)
if exist "%~dp0_setenv.bat" (
echo Lade lokale Umgebungseinstellungen aus _setenv.bat...
call "%~dp0_setenv.bat"
)
REM Ordner erstellen falls sie nicht existieren
if not exist "%PV_BIN%" mkdir "%PV_BIN%"
if not exist "%PV_LIB%" mkdir "%PV_LIB%"
if not exist "%PV_CFG%" mkdir "%PV_CFG%"
if not exist "%PV_DATA%" mkdir "%PV_DATA%"
if not exist "%PV_LOG%" mkdir "%PV_LOG%"
if not exist "%PV_RESULTS%" mkdir "%PV_RESULTS%"
if not exist "%PV_EXAMPLES%" mkdir "%PV_EXAMPLES%"
if not exist "%PV_TESTS%" mkdir "%PV_TESTS%"
REM Umgebungsvariablen anzeigen
echo.
echo ================================================================
echo PROJECT = %PROJECT%
echo PV_BIN = %PV_BIN%
echo PV_LIB = %PV_LIB%
echo PV_CFG = %PV_CFG%
echo PV_DATA = %PV_DATA%
echo PV_LOG = %PV_LOG%
echo PV_RESULTS = %PV_RESULTS%
echo PV_EXAMPLES = %PV_EXAMPLES%
echo PV_TESTS = %PV_TESTS%
echo PYTHONPATH = %PYTHONPATH%
echo ================================================================
echo.