60 lines
No EOL
1.9 KiB
Bash
Executable file
60 lines
No EOL
1.9 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# Das Skript arbeitet im aktuellen Ordner
|
|
ROOT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &> /dev/null && pwd)
|
|
|
|
# 1. Name des Projekts abfragen
|
|
NAME=$(zenity --entry --title="Projekt-Konfigurator" --text="Name des Projekts:")
|
|
[ -z "$NAME" ] && exit 0
|
|
NAME_CLEAN=${NAME// /_}
|
|
|
|
# 2. Art des Projekts wählen
|
|
TYPE=$(zenity --list --radiolist --title="Projekt-Typ" --column="" --column="Typ" \
|
|
TRUE "Hardware (3D-Druck/CNC)" \
|
|
FALSE "Software (Python/Bash)")
|
|
[ -z "$TYPE" ] && exit 0
|
|
|
|
# 3. Tags abfragen
|
|
USER_TAGS=$(zenity --entry --title="Tags" --text="Gib Schlagworte ein (z.B. Motor Gehäuse):")
|
|
|
|
# Pfad-Logik
|
|
if [[ "$TYPE" == "Hardware"* ]]; then
|
|
BASE_DIR="01_Hardware_Projekte/$NAME_CLEAN"
|
|
mkdir -p "$ROOT_DIR/$BASE_DIR"/{CAD,CAM,3D_Print,Dokumentation,Ressourcen}
|
|
CATEGORY="Hardware (3D-Druck/CNC)"
|
|
else
|
|
LANG=$(zenity --list --radiolist --title="Sprache" --column="" --column="Sprache" \
|
|
TRUE "Python" \
|
|
FALSE "Bash")
|
|
[ -z "$LANG" ] && exit 0
|
|
|
|
if [ "$LANG" == "Python" ]; then
|
|
BASE_DIR="02_Software_Scripts/Python/$NAME_CLEAN"
|
|
mkdir -p "$ROOT_DIR/$BASE_DIR"/{src,tests,docs}
|
|
touch "$ROOT_DIR/$BASE_DIR/src/main.py"
|
|
CATEGORY="Software (Python)"
|
|
else
|
|
BASE_DIR="02_Software_Scripts/Bash/$NAME_CLEAN"
|
|
mkdir -p "$ROOT_DIR/$BASE_DIR"
|
|
touch "$ROOT_DIR/$BASE_DIR/$NAME_CLEAN.sh"
|
|
chmod +x "$ROOT_DIR/$BASE_DIR/$NAME_CLEAN.sh"
|
|
CATEGORY="Software (Bash)"
|
|
fi
|
|
fi
|
|
|
|
# README.md erstellen
|
|
FINAL_PATH="$ROOT_DIR/$BASE_DIR"
|
|
{
|
|
echo "# $NAME"
|
|
echo "Kategorie: $CATEGORY"
|
|
echo "Erstellt am: $(date +'%d.%m.%Y')"
|
|
echo -e "\n## Tags zur Indizierung"
|
|
for tag in $USER_TAGS; do
|
|
CLEAN_TAG=${tag/#/}
|
|
echo -n "#$CLEAN_TAG "
|
|
done
|
|
echo -e "\n\n## Notizen"
|
|
echo "- Hier Projektdetails eintragen..."
|
|
} > "$FINAL_PATH/README.md"
|
|
|
|
zenity --info --title="Erfolg" --text="Projekt '$NAME_CLEAN' wurde erstellt!\n\nPfad: $BASE_DIR" |