feat: Add smart document auto-detection and generic project path support for fellow students
This commit is contained in:
+21
-7
@@ -9,16 +9,30 @@ set -e
|
||||
# Beliebiger Befehl (z.B. latexmk -pdf ...)
|
||||
|
||||
resolve_target() {
|
||||
# 1. Wenn explizit als Argument übergeben
|
||||
if [ -n "$1" ]; then
|
||||
echo "$1"
|
||||
elif [ -f "seminararbeit.tex" ]; then
|
||||
echo "seminararbeit.tex"
|
||||
elif [ -f "main.tex" ]; then
|
||||
echo "main.tex"
|
||||
else
|
||||
# Fallback auf alle tex-Dateien oder Standard-latexmk-Verhalten
|
||||
echo ""
|
||||
return
|
||||
fi
|
||||
|
||||
# 2. Bekannte typische Hauptdateinamen prüfen
|
||||
for name in seminararbeit.tex main.tex thesis.tex bachelorarbeit.tex masterarbeit.tex arbeit.tex document.tex index.tex; do
|
||||
if [ -f "$name" ]; then
|
||||
echo "$name"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
# 3. Automatische Suche nach einer .tex-Datei mit \documentclass im Verzeichnis
|
||||
candidates=$(grep -l "\\\\documentclass" *.tex 2>/dev/null || true)
|
||||
count=$(echo "$candidates" | grep -v '^$' | wc -l)
|
||||
if [ "$count" -eq 1 ]; then
|
||||
echo "$candidates"
|
||||
return
|
||||
fi
|
||||
|
||||
# Fallback: latexmk entscheidet selbst anhand von .latexmkrc oder allen tex-Dateien
|
||||
echo ""
|
||||
}
|
||||
|
||||
COMMAND="${1:-build}"
|
||||
|
||||
Reference in New Issue
Block a user