forked from Hg/htlle-da-vorlage
Compare commits
20 Commits
feat-AddTe
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
3c63de6edb | ||
|
8a9ffa43ac | ||
|
105c21562f | ||
|
b2ae73e538 | ||
|
51251c0bae | ||
|
f6b7290893 | ||
|
c2d6bb0c10 | ||
|
5b095573c0 | ||
|
4746e4ee0a | ||
|
1befba5364 | ||
|
a2d4ccbb04 | ||
|
211ade65d6 | ||
|
fb2738332d | ||
|
aeebc839c4 | ||
|
45a8e86bb7 | ||
|
47ee7bb2f3 | ||
|
a74be94c65 | ||
|
5689034008 | ||
|
1ee2fb447e | ||
|
7a369c4d2d |
29
Makefile
29
Makefile
@ -28,7 +28,7 @@ help:
|
|||||||
@echo ' make pdf generate a PDF file '
|
@echo ' make pdf generate a PDF file '
|
||||||
@echo ' make spellcheck checks the output for misspelled words'
|
@echo ' make spellcheck checks the output for misspelled words'
|
||||||
@echo ' '
|
@echo ' '
|
||||||
@echo ' '
|
@echo '
|
||||||
|
|
||||||
|
|
||||||
# Helper Targets
|
# Helper Targets
|
||||||
@ -47,9 +47,21 @@ build-stage:
|
|||||||
@echo "Merging style files into the staging directory"
|
@echo "Merging style files into the staging directory"
|
||||||
@rsync -av $(STYLEDIR)/ $(STAGINGDIR)/style --quiet
|
@rsync -av $(STYLEDIR)/ $(STAGINGDIR)/style --quiet
|
||||||
|
|
||||||
compile-pdf:
|
# Prüfen auf Dateien mit Unterstrichen im Namen
|
||||||
|
@echo "Checking for files containing underscores in $(STAGINGDIR)..."
|
||||||
|
@files=$$(find $(STAGINGDIR) -type f -name '*_*'); \
|
||||||
|
if [ -n "$$files" ]; then \
|
||||||
|
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"; \
|
||||||
|
echo "WARNING: Found files with underscores:"; \
|
||||||
|
echo " -> $$files"; \
|
||||||
|
echo "These files are very likely to cause issues during the build process"; \
|
||||||
|
echo "Remove or rename them to build the thesis safely"; \
|
||||||
|
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
compile-output:
|
||||||
# Bauen der Arbeit aus dem staging verzeichnis heraus
|
# Bauen der Arbeit aus dem staging verzeichnis heraus
|
||||||
@echo "Compiling the thesis into the pdf: $(OUTPUTFILE)"
|
@echo "Compiling the thesis into: $(OUTPUTFILE)"
|
||||||
|
|
||||||
# Builden mit pandoc. Als Basisverzeichnis springen wir ins staging.
|
# Builden mit pandoc. Als Basisverzeichnis springen wir ins staging.
|
||||||
# Damit sollten alle relativen Links stimmen
|
# Damit sollten alle relativen Links stimmen
|
||||||
@ -96,7 +108,16 @@ remove-stage:
|
|||||||
# Targets which are intended to be used directly
|
# Targets which are intended to be used directly
|
||||||
spellcheck: build-stage do-spellcheck remove-stage
|
spellcheck: build-stage do-spellcheck remove-stage
|
||||||
|
|
||||||
pdf: build-stage compile-pdf remove-stage
|
# Erzeugen einer PDF Datei
|
||||||
|
pdf: build-stage compile-output remove-stage
|
||||||
|
|
||||||
|
# Ziel für die Erzeugung einer .tex Datei
|
||||||
|
tex: OUTPUTFILE := $(OUTPUTFILE).tex
|
||||||
|
tex: build-stage compile-output remove-stage
|
||||||
|
|
||||||
|
clean:
|
||||||
|
# Remove the staging directory
|
||||||
|
@rm -rf $(STAGINGDIR)
|
||||||
|
|
||||||
# Special Targets
|
# Special Targets
|
||||||
.PHONY: help pdf clean
|
.PHONY: help pdf clean
|
||||||
|
188
README.md
188
README.md
@ -27,7 +27,7 @@ Wenn der HTL eigene GIT-Server verwendet wird, brauchen Sie die Tools nicht unbe
|
|||||||
|
|
||||||
## Windows
|
## Windows
|
||||||
|
|
||||||
Wenn man Windows 10 als primäres Betriebssystem verwendet hat man zwei Möglichkeiten um zu einer Linux Umgebung zu kommen:
|
Wenn man Windows 10 oder Windows 11 als primäres Betriebssystem verwendet hat man zwei Möglichkeiten um zu einer Linux Umgebung zu kommen:
|
||||||
|
|
||||||
### VM installieren
|
### VM installieren
|
||||||
Installation einer virtuellen Maschine auf der ein Linux läuft (z.B: mit [HyperV](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v), [VmWare](https://www.vmware.com/at/products/workstation-player.html), [VirtualBox](https://www.virtualbox.org/) oder einem anderen Virtualisierer) -> Dann erhält man eine VM welche man zum bearbeiten der VM extra starten muss
|
Installation einer virtuellen Maschine auf der ein Linux läuft (z.B: mit [HyperV](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v), [VmWare](https://www.vmware.com/at/products/workstation-player.html), [VirtualBox](https://www.virtualbox.org/) oder einem anderen Virtualisierer) -> Dann erhält man eine VM welche man zum bearbeiten der VM extra starten muss
|
||||||
@ -57,36 +57,13 @@ $ sudo apt-get install git build-essential make-guile texlive-full pandoc pandoc
|
|||||||
|
|
||||||
Bei einer englischen Diplomarbeit muss außerdem entweder das Paket `hunspell-en-gb` oder `hunspell-en-us` installiert werden.
|
Bei einer englischen Diplomarbeit muss außerdem entweder das Paket `hunspell-en-gb` oder `hunspell-en-us` installiert werden.
|
||||||
|
|
||||||
|
|
||||||
|
## Alternative platformen
|
||||||
|
|
||||||
|
Sie können die Diplomarbeit auch mit Hilfe von Docker oder Github WOrkflow bauen. Nähere Details dazu finden Sie im Verzeichnis `tools`.
|
||||||
|
|
||||||
# Grundlegende Schritte
|
# Grundlegende Schritte
|
||||||
|
|
||||||
## Automatisches erstellen einer Diplomarbeit
|
|
||||||
|
|
||||||
Um ein privates GIT-Repository mit der HTLLE-DA-Vorlage anzulegen oder diese zu einem bereits bestehenden GIT-Repository in einem Unterverzeichnis hinzuzufügen, können Sie folgenden [Link](https://itsp.htl-leoben.at/ci/job/HTLLE-Diplomarbeit%20Erstelle%20Repository%20mit%20Template/build?delay=0sec) verwenden (ggf. mit LDAP Benutzername und Passwort z.B.: "1911wit00" anmelden).
|
|
||||||
|
|
||||||
Das Repository muss dem eingeloggten Benutzer gehören bzw. wird es für diesen erstellt.
|
|
||||||
|
|
||||||
- `REPOSITORY_NAME` setzen Sie bitte den Namen Ihres bereits bestehenden oder neuen Repositories (z.B.: "Diplomarbeit")
|
|
||||||
- `GIT_PATH` hier können Sie ein Unterverzeichnis in GIT für Ihre Arbeit angeben
|
|
||||||
|
|
||||||
Sie bekommen anschließend eine E-Mail an Ihre Office365 Adresse mit weiteren Informationen und Links zu Ihrem Repository.
|
|
||||||
|
|
||||||
Fahren Sie bitte mit dem [Befüllen der speziellen Dateien](#befüllen-der-speziellen-dateien) fort.
|
|
||||||
|
|
||||||
### Build on Commit
|
|
||||||
|
|
||||||
Möchten Sie Ihre Diplomarbeit bei jedem GIT-Commit erstellen und an die - in der `metadata.yaml` genannten - E-Mail-Adressen zuschicken lassen, dann befolgen Sie diese Schritte:
|
|
||||||
- E-Mail an <hg@htl-leoben.at> oder <lcle@htl-leoben.at>
|
|
||||||
- Betreff: [Jenkins] Add Build-Job DA
|
|
||||||
- Body:
|
|
||||||
- Name: [Kürzel von Besitzer]-DA-remote-trigger (z.B.: *199wit99-DA-remote-trigger*)
|
|
||||||
- Repository: z.B.: *https://itsp.htl-leoben.at/git/199wit99/test_da.git*
|
|
||||||
- GIT Path: z.B.: *./text*
|
|
||||||
- GIT Branch: z.B.: *\*/master*
|
|
||||||
- Webhook in Gitea
|
|
||||||
- Einen **Gogs**-Webhook zum Repository hinzufügen (*Repository -> Settings -> Webhooks -> Add Webhook*)
|
|
||||||
- Target URL: https://itsp.htl-leoben.at/ci/gogs-webhook/?job=\[job-name\] (z.B.: *https://itsp.htl-leoben.at/ci/gogs-webhook/?job=199wit99-DA-remote-trigger*)
|
|
||||||
- Secret: **secureStudent**
|
|
||||||
|
|
||||||
## Manuelles erstellen einer Diplomarbeit
|
## Manuelles erstellen einer Diplomarbeit
|
||||||
|
|
||||||
Wenn Sie mit einer neuen Diplomarbeit beginnen, dann gehen Sie am besten wie folgt vor:
|
Wenn Sie mit einer neuen Diplomarbeit beginnen, dann gehen Sie am besten wie folgt vor:
|
||||||
@ -227,18 +204,28 @@ da-keywords: HTLLE, Keyword1, Keyword2, Keyword3
|
|||||||
# lang: english
|
# lang: english
|
||||||
|
|
||||||
# Autoren der Diplomarbeit (=Schüler)
|
# Autoren der Diplomarbeit (=Schüler)
|
||||||
# Je Autor sind alle felder asuzufüllen
|
# Je Autor sind die Felder vorname, nachname, klasse, und thema verpflichtend auszufüllen
|
||||||
|
# Sofern KI Toools verwendet wurden sind diese auch auszufüllen
|
||||||
# Information wird am Titelblatt und bei der Eidesstattlichen Erklärung verwendet
|
# Information wird am Titelblatt und bei der Eidesstattlichen Erklärung verwendet
|
||||||
da-author:
|
da-author:
|
||||||
- vorname: Joltawan
|
- vorname: Joltawan
|
||||||
nachname: Barodscheff
|
nachname: Barodscheff
|
||||||
klasse: 5IT
|
klasse: 5AHWIN
|
||||||
thema: Subthema des Schülers 1
|
thema: Bauen des LaTex Templates
|
||||||
|
ki-tools:
|
||||||
|
- name: ChatGPT3.5
|
||||||
|
zweck: Informationsbeschaffung
|
||||||
|
- name: Midjourney
|
||||||
|
zweck: Künstlerische Illustration
|
||||||
|
|
||||||
- vorname: Craig
|
- vorname: Craig
|
||||||
nachname: Tester
|
nachname: Tester
|
||||||
klasse: 5IT
|
klasse: 5AHWIN
|
||||||
thema: Subthema des Schülers 2
|
thema: Entwicklung eines Prototypen
|
||||||
|
ki-tools:
|
||||||
|
- name: Github Copilot
|
||||||
|
zweck: Boilerplate codegenerierung, Codedokumentation
|
||||||
|
|
||||||
|
|
||||||
# Diplomarbeitsbetreuer
|
# Diplomarbeitsbetreuer
|
||||||
# Je Betreuer sind alle Felder auszufüllen
|
# Je Betreuer sind alle Felder auszufüllen
|
||||||
@ -250,12 +237,34 @@ da-betreuer:
|
|||||||
- paraffe: me
|
- paraffe: me
|
||||||
name: DI Dr. mont Thomas Messner
|
name: DI Dr. mont Thomas Messner
|
||||||
|
|
||||||
# Eine Kurzfassung in Deutsch
|
# Kurzfassungen sind in Deutsch und Englisch zu verfassen und enthalten folgende Information welche auf nicht mehr als
|
||||||
|
# einer A4 Seite (ohne Grafiken) dargestellt wird:
|
||||||
|
# Einleitung und Hintergrund: Ein kurzer Überblick über das Thema der Arbeit, die Forschungsfrage(n) und die Relevanz des Forschungsvorhabens.
|
||||||
|
# Ziele: Eine klare Darstellung der Ziele oder Hypothesen, die die Arbeit zu untersuchen oder zu beweisen beabsichtigt.
|
||||||
|
# Methodik: Eine Zusammenfassung der angewandten Forschungsmethoden und Ansätze, inklusive der Datenerhebungs- und Analyseverfahren.
|
||||||
|
# Ergebnisse: Die wichtigsten Ergebnisse der Forschung, präsentiert in einer knappen und prägnanten Form. Dies kann quantitative oder qualitative Daten umfassen, je nach Art der Arbeit.
|
||||||
|
# Schlussfolgerungen: Eine Zusammenfassung der Schlussfolgerungen, die aus den Ergebnissen gezogen wurden, inklusive der Beantwortung der Forschungsfrage(n).
|
||||||
|
|
||||||
|
# Eine Kurzfassung in Deutsch.
|
||||||
da-kurzfassung-de: Hier kommt eine deutsche Kurzfassung hin.
|
da-kurzfassung-de: Hier kommt eine deutsche Kurzfassung hin.
|
||||||
|
|
||||||
# Eine Kurzfassung in Englisch
|
# Eine Kurzfassung in Englisch
|
||||||
da-kurzfassung-en: Hier kommt eine englische Kurzfassung hin.
|
da-kurzfassung-en: Hier kommt eine englische Kurzfassung hin.
|
||||||
|
|
||||||
|
|
||||||
|
# PDF Dateien welche die Wissensbeschaffung von generativer KI dokumentieren.
|
||||||
|
# Je Anwendungsfall ist jeweils ein PDF einzukopieren das im Ordner pdfs abgelegt ist, und
|
||||||
|
# den Prompt sowie die gesamte KI Antwort beinhaltet.
|
||||||
|
|
||||||
|
da-kiquellen:
|
||||||
|
- ki: ChatGPT4
|
||||||
|
short-prompt: Erklärung Pandoc
|
||||||
|
pdf-file: gpt-pandoc.pdf
|
||||||
|
|
||||||
|
- ki: ChatGPT3.5
|
||||||
|
short-prompt: Aufbau eines Atoms
|
||||||
|
pdf-file: gpt-atom.pdf
|
||||||
|
|
||||||
# PDF Dateien die im Anhang zur Diplomarbeit entweder ganz oder nur seitenweise einkopiert werden
|
# PDF Dateien die im Anhang zur Diplomarbeit entweder ganz oder nur seitenweise einkopiert werden
|
||||||
# Das Pflichtattribut 'abschnitt' bezeichnet hier die Überschrift für desen Anhang
|
# Das Pflichtattribut 'abschnitt' bezeichnet hier die Überschrift für desen Anhang
|
||||||
# Das Pflichtattribut 'pdf-file' ist der Dateiname des PDFs welches im pdfs Ordner zu finden ist (ohne Pfadangabe)
|
# Das Pflichtattribut 'pdf-file' ist der Dateiname des PDFs welches im pdfs Ordner zu finden ist (ohne Pfadangabe)
|
||||||
@ -265,26 +274,17 @@ da-kurzfassung-en: Hier kommt eine englische Kurzfassung hin.
|
|||||||
# Dateinamen ohne Sonderzeichen als Eingabedateien.
|
# Dateinamen ohne Sonderzeichen als Eingabedateien.
|
||||||
|
|
||||||
da-appendix:
|
da-appendix:
|
||||||
- abschnitt: Begleitprotokolle
|
|
||||||
pdf-file: begleitprotokolle.pdf
|
|
||||||
|
|
||||||
- abschnitt: Projekthandbuch
|
|
||||||
pdf-file: projekthandbuch.pdf
|
|
||||||
|
|
||||||
- abschnitt: Technische Dokumentation
|
- abschnitt: Technische Dokumentation
|
||||||
pdf-file: pandoc-manual.pdf
|
pdf-file: pandoc-manual.pdf
|
||||||
seiten: 53-73
|
seiten: 53-73
|
||||||
|
|
||||||
|
# Betreuungsprotokolle und organisatorische Dokumente sind verpflichtender Bestandteil des Appendix
|
||||||
|
- abschnitt: Betreuungsprotokolle
|
||||||
|
pdf-file: begleitprotokolle.pdf
|
||||||
|
|
||||||
|
# Die Diplomarbeitsvereinbarung sollte als letztes Dokument aufscheinen
|
||||||
- abschnitt: Diplomatbeitsvereinbarung
|
- abschnitt: Diplomatbeitsvereinbarung
|
||||||
pdf-file: HTL-DA-Vereinbarung.pdf
|
pdf-file: HTL-DA-Vereinbarung.pdf
|
||||||
|
|
||||||
# Eigenschaften für den Buildserver der HTL Leoben
|
|
||||||
# build-notification wird dazu verwendet um eine Emailadresse zu hinterlegen wohin das fertig gebaute
|
|
||||||
# File und alle anderen Artefakte dann versandt werden soll. Hier könnte man z.B: die eigene Emailadresse
|
|
||||||
# oder die des Diplomarbeitenteams angeben. Damit bekommt man die neusten Versionen automatisch zugestellt.
|
|
||||||
da-build-properties:
|
|
||||||
- build-notification: Diplomarbeit - DA_2021_Thema <269bc6a5.O365.htl-leoben.at@emea.teams.ms>
|
|
||||||
- build-notification: mytesms@adress.com
|
|
||||||
---
|
---
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -300,7 +300,6 @@ Um das Zusammensuchen der Quellenangaben für Bücher zu vereinfachen kann man i
|
|||||||
|
|
||||||
### Bauen der Diplomarbeit als PDF Datei
|
### Bauen der Diplomarbeit als PDF Datei
|
||||||
|
|
||||||
#### **Lokal**
|
|
||||||
Damit das PDF für die Diplomarbeit erstellt wird muss (aus Ihrem Basisverzeichnis heraus) folgender Befehl abgesetzt werden:
|
Damit das PDF für die Diplomarbeit erstellt wird muss (aus Ihrem Basisverzeichnis heraus) folgender Befehl abgesetzt werden:
|
||||||
|
|
||||||
```
|
```
|
||||||
@ -320,77 +319,6 @@ Mit den mitgelieferten Tasks kann in VS Code das Bauen entweder über das Ausfü
|
|||||||
|
|
||||||
Noch einfacher ist das Starten der Tasks mit der Erweiterung "Task Explorer". Dort können beide Tasks in einem separaten Fenster gefunden und gestartet werden. Die Tasks funktionieren jedoch nur wenn im Lokalen wsl alle benötigten Pakete installiert sind.
|
Noch einfacher ist das Starten der Tasks mit der Erweiterung "Task Explorer". Dort können beide Tasks in einem separaten Fenster gefunden und gestartet werden. Die Tasks funktionieren jedoch nur wenn im Lokalen wsl alle benötigten Pakete installiert sind.
|
||||||
|
|
||||||
#### **Remote**
|
|
||||||
Sollten Sie die notwendigen Tools (pandoc, LaTeX, etc.) nicht lokal installieren wollen und Sie haben Ihre Diplomarbeit am GIT-Server der HTL versioniert, dann können Sie Ihre PDF auch am [Jenkins](https://itsp.htl-leoben.at/ci) bauen und sich per E-Mail zuschicken lassen. Es wird dabei immer das aktuellste Template verwendet.
|
|
||||||
|
|
||||||
Öffnen Sie dazu den [Jenkins-Job](https://itsp.htl-leoben.at/ci/job/HTLLE-Diplomarbeit/build?delay=0sec) und melden Sie sich ggf. mit Ihren Benutzerdaten (z.B.: `1911wit00`) an.
|
|
||||||
|
|
||||||
- `REPOSITORY` Ihre Repository-URL z.B: `https://itsp.htl-leoben.at/git/1911wit00/Diplomarbeit.git`
|
|
||||||
- `GIT_PATH` Ggf. der Unterordner in dem sich Ihre Diplomarbeit auf GIT befindet z.B.: `diplomarbeit/`
|
|
||||||
- `GIT_BRANCH` Wenn Sie nicht wissen, was in GIT `branches` sind, brauchen Sie den Parameter nicht anpassen
|
|
||||||
- `ARCHIVE_FORMAT` Wählen Sie aus, ob die fertige Arbeit als `.zip` oder `.tar.gz` Datei versendet wird
|
|
||||||
|
|
||||||
Beispiel: `GIT_PATH` ist `"text"`
|
|
||||||
```
|
|
||||||
$ tree ~/Diplomarbeit
|
|
||||||
.
|
|
||||||
├── source
|
|
||||||
└── text
|
|
||||||
├── 10-einleitung.md
|
|
||||||
├── 20-zielsetzung.md
|
|
||||||
├── 30-ausarbeitungen.md
|
|
||||||
├── 31-ausarbeitung_schueler1.md
|
|
||||||
├── 32-ausarbeitung_schueler2.md
|
|
||||||
├── 40-zusammenfassung.md
|
|
||||||
├── HTLLE-DA-Vorlage
|
|
||||||
│ ├── ... Inhalte aus der DA Vorlage
|
|
||||||
│ └── ... wurden hier ausgeblendet
|
|
||||||
├── img
|
|
||||||
│ └── graph.png
|
|
||||||
├── literatur.bib
|
|
||||||
├── metadata.yaml
|
|
||||||
└── pdfs
|
|
||||||
├── HTL-DA-Vereinbarung.pdf
|
|
||||||
├── README
|
|
||||||
├── begleitprotokolle.pdf
|
|
||||||
├── pandoc-manual.pdf
|
|
||||||
└── projekthandbuch.pdf
|
|
||||||
```
|
|
||||||
|
|
||||||
Beispiel: `GIT_PATH` ist default `"./"`
|
|
||||||
```
|
|
||||||
$ tree ~/Diplomarbeit
|
|
||||||
.
|
|
||||||
├── 10-einleitung.md
|
|
||||||
├── 20-zielsetzung.md
|
|
||||||
├── 30-ausarbeitungen.md
|
|
||||||
├── 31-ausarbeitung_schueler1.md
|
|
||||||
├── 32-ausarbeitung_schueler2.md
|
|
||||||
├── 40-zusammenfassung.md
|
|
||||||
├── HTLLE-DA-Vorlage
|
|
||||||
│ ├── ... Inhalte aus der DA Vorlage
|
|
||||||
│ └── ... wurden hier ausgeblendet
|
|
||||||
├── img
|
|
||||||
│ └── graph.png
|
|
||||||
├── literatur.bib
|
|
||||||
├── metadata.yaml
|
|
||||||
└── pdfs
|
|
||||||
├── HTL-DA-Vereinbarung.pdf
|
|
||||||
├── README
|
|
||||||
├── begleitprotokolle.pdf
|
|
||||||
├── pandoc-manual.pdf
|
|
||||||
└── projekthandbuch.pdf
|
|
||||||
```
|
|
||||||
|
|
||||||
**Wichtig:** Das fertige PDF wird an die E-Mail Adressen aus `metadata.yaml` verschickt! Die E-Mail Adressen müssen mit `"- build-notification"` gekennzeichnet sein ([siehe oben](#befüllen-der-speziellen-dateien)).
|
|
||||||
|
|
||||||
Es muss nicht einmal die Vorlage als GIT submodule im Repository eingecheckt sein, weil hier während des Build Prozesses die aktuelle verwendet wird.
|
|
||||||
|
|
||||||
**Wichtig:** Sie bekommen eine Archiv-Datei (`.zip` oder `.tar.gz`) via E-Mail zugeschickt. Dieses Archiv lässt sich mit gängigen Tools entpacken (z.B.: [7-zip](https://www.7-zip.org/)). Darin befinet sich:
|
|
||||||
- `diplomarbeit.pdf` Ihre fertige Diplomarbeit
|
|
||||||
- `diplomarbeit.pdf.log` Der Log Output von pandoc
|
|
||||||
- `spellcheck-results.txt` Die vermeintlich falsch geschriebenen Begriffe
|
|
||||||
|
|
||||||
### Übertragen des aktuellen Standes nach GIT
|
### Übertragen des aktuellen Standes nach GIT
|
||||||
|
|
||||||
Es mach Sinn, die Diplomarbeit (auch nach kleinen Änderungen) immer wieder nach GIT zu übertragen. Damit ist sie optimal gesichert und falls Ihre Teammitglieder auch an der DA Arbeiten bekommen sie auch Zugang zum aktuellsten Stand. Falls Sie noch nicht mit GIT gearbeitet haben, stellen die folgenden Absätze eine (ultra-) [Kurzeinführung](https://rogerdudler.github.io/git-guide/) dar.
|
Es mach Sinn, die Diplomarbeit (auch nach kleinen Änderungen) immer wieder nach GIT zu übertragen. Damit ist sie optimal gesichert und falls Ihre Teammitglieder auch an der DA Arbeiten bekommen sie auch Zugang zum aktuellsten Stand. Falls Sie noch nicht mit GIT gearbeitet haben, stellen die folgenden Absätze eine (ultra-) [Kurzeinführung](https://rogerdudler.github.io/git-guide/) dar.
|
||||||
@ -468,12 +396,28 @@ Bei speziellen Fragen zu diesem Vorgehen wenden Sie sich bitte an den Programmie
|
|||||||
* Machen Sie Grafiken in guter Auflösung (> 72 dpi) und Achten Sie darauf dass diese nicht zu viel oder zu wenig Inhalt zeigen weil die Grafiken auf max. Seitenbreite skaliert werden können und dann entweder zu klein oder zu pixelig erscheinen.
|
* Machen Sie Grafiken in guter Auflösung (> 72 dpi) und Achten Sie darauf dass diese nicht zu viel oder zu wenig Inhalt zeigen weil die Grafiken auf max. Seitenbreite skaliert werden können und dann entweder zu klein oder zu pixelig erscheinen.
|
||||||
* Orientieren sie die Grafiken so wie sie selbige in der Arbeit haben wollen. Wenn sie Grafiken um 90 Grad drehen, dann drehen Sie alle Grafiken in die selbe Richtung !
|
* Orientieren sie die Grafiken so wie sie selbige in der Arbeit haben wollen. Wenn sie Grafiken um 90 Grad drehen, dann drehen Sie alle Grafiken in die selbe Richtung !
|
||||||
* Quellenangaben nicht vergessen (bei selbst erstellen Bildern: 'Eigene Darstellung')
|
* Quellenangaben nicht vergessen (bei selbst erstellen Bildern: 'Eigene Darstellung')
|
||||||
|
* Manchmal treten bei der Verwendung von Bildern Probleme auf. Hier ein best-of:
|
||||||
|
* Die extension von Bildern ist wichtig! `MeinBild.drawio.png` kann verhindern das eine DA korrekt baut, während `MeinBild-drawio.png` zu passenden Ergebnissen führt.
|
||||||
|
* Umlaute in Dateinamen verhinden auf manchen Maschinen das die Bilder eingefügt werden -> Also keine verwenden.
|
||||||
|
* Groß und Kleinschreibung der Dateinamen ist wichtig. Am besten verwenden Sie nur kleinschreibung mit Bindestrichen.
|
||||||
|
|
||||||
### Quellenangaben
|
### Quellenangaben
|
||||||
|
|
||||||
* alle Tools inkl. Versionsnummer
|
* alle Tools inkl. Versionsnummer
|
||||||
* alle Zitate bzw. übernommene Meinungen
|
* alle Zitate bzw. übernommene Meinungen
|
||||||
* Datenblätter usw. können auch zitiert werden-
|
* Datenblätter usw. können auch zitiert werden
|
||||||
|
|
||||||
|
### Künstliche Intlligenz
|
||||||
|
|
||||||
|
Es ist prinzipiell erlaubt KI im Rahmen der Diplomarbeit einzusetzen. Welche Art der KI, sowie für welchen Einsatzzweck sie diese verwendet haben halten Sie vollständig in der `metadata.yaml` fest, und diese Information unterschreiben Sie auch mit der eidesstattlichen Erklärung. Man unterscheidet dabei prinzipiell zwei Use-cases:
|
||||||
|
|
||||||
|
1. **Verwendung als Werkzeug (ähnlich einer Autokorrektur)**: In diesem Fall haben Sie selbst das Wissen generiert / recherchiert und es ist nicht notwendig das speziell in der Arbeit zu erwähnen. Dieser Anwendungsfall ist vergleichbar mit der Verwendung eines Taschenrechners. Dieser wird nur als Werkzeug verwendet und trägt inhaltlich nichts zur DA bei.
|
||||||
|
2. **Verwendung zur generierung von Wissen**: Sofern Sie irgendeine KI als Informationsquelle verwenden (also um neues Wissen zu generieren, aus Quellen zusammenzufassen o.Ä.) dann ist das in der Diplomarbeit speziell kennzuzeichnen. Dazu **müssen* sei den kompletten Chatverlauf inkl. Prompt und folgekorrespondenz als PDF an die Diplomarbeit anhängen, und diese korrekt in der `.bib` Datei als `@unpublished` referenzieren. Es ist dabei wichtig das der `short-prompt` (also eine art Kurzzusammenfassung des Prompts) in der metadata.yaml mit jenem im im finalen Literaturverzeichnis übereinstimmt. Ein Beispiel wie dabei vorzugehen ist, ist im DA Template enthalten.
|
||||||
|
|
||||||
|
|
||||||
|
Code-generierungstools wie z.B. _Github Copilot_ stellen hier einen Grenzfall dar. Sofern Sie Copilot dazu verwenden um z.B. Quellcode formatieren zu lassen oder kleine / lokale Anpassungen (im Sinne von Boilerplate code, oder Getter/Setter generierung) dann bedarf es zwar einer Nennung in der metadata.yaml, aber keine Nennung als Quelle. Sobald Sie mit dieser oder einer vergleichbaren KI neue Inhalte oer Ansätze generieren, ist die wie oben beschrieben zu dokumentieren.
|
||||||
|
|
||||||
|
Im Zweifelsfall behandeln Sie KI generierte Inhalte immer so als ob neues Wissen damit generiert wurde.
|
||||||
|
|
||||||
## Checkliste
|
## Checkliste
|
||||||
|
|
||||||
|
@ -13,12 +13,12 @@ Eine allgemeine Aufgabenstellung
|
|||||||
|
|
||||||
### So gehen Zitate
|
### So gehen Zitate
|
||||||
|
|
||||||
Einzel Zitat:
|
Hier ein einzel Zitat eines Buches das auf der Seite 17 zu finden ist:
|
||||||
[vgl. @leeb_einfuhrung_2016, S. 13]
|
([@hattie_lernen_2013] S. 17)
|
||||||
|
|
||||||
Zitatsammlung:
|
Zitatsammlung:
|
||||||
(vergleich dazu @heise oder @t3n)
|
(vergleich dazu @heise oder @t3n)
|
||||||
[vgl. @hattie_lernen_2013, S. 33-35; außerdem @walker_problem_2009, S. 6 f.]
|
[@hattie_lernen_2013, S. 33-35; außerdem @leeb_einfuhrung_2016, S. 6 f.]
|
||||||
|
|
||||||
Zitat ohne Autor
|
Zitat ohne Autor
|
||||||
Hattie sagte bla bla [-@hattie_lernen_2013]
|
Hattie sagte bla bla [-@hattie_lernen_2013]
|
||||||
@ -28,6 +28,25 @@ Name des Autors mit Jahr in Klammern
|
|||||||
|
|
||||||
Auch Videos kann man Zitieren wi Zum Biespiel hier [@Zatko15] in dieser Referenz.
|
Auch Videos kann man Zitieren wi Zum Biespiel hier [@Zatko15] in dieser Referenz.
|
||||||
|
|
||||||
|
Hier noch ein Zitat mit Seitenangabe [[@Zatko15] Seite 5f.]
|
||||||
|
|
||||||
|
Man darf auch ChatGPT oder andere KIs befragen um Wissen zu erlangen. Dazu muss allerdings ein PDF Log des exakten Chats in die Metadata.yaml eingetragen werden und der dort eingetragene `short-prompt` auch in der bib Datei eingefügt werden. Dann könnten indirekte Zitate so aussehen [@gpt-pandoc] oder auch so [@gpt-atomaufbau].
|
||||||
|
|
||||||
|
Wichtig ist es, das beim Author die verwendete KI eingetragen wird (mit Versionsnummern - so genau wie möglich), beim title eine kurze Referenz zum Prompt und beim Jahr - das Jahr in dem die Abfrage gemacht wurde. Das hat dem `short-prompt` aus der metadata.yaml zu entsprechen.
|
||||||
|
|
||||||
|
~~~~~
|
||||||
|
@unpublished{gpt-pandoc,
|
||||||
|
author = {{ChatGPT 4.0}},
|
||||||
|
title = {Was ist Pandoc ?},
|
||||||
|
year = {2024},
|
||||||
|
url={https://chat.openai.com/c/ef535195-0e39-4d5c-9c85-cdb7ec18ad03},
|
||||||
|
urldate = {2023-02-29}
|
||||||
|
}
|
||||||
|
~~~~~
|
||||||
|
|
||||||
|
Oben sieht man wie ein korrekter Bibtech Eintrag für eine ChatGPT Konversation aussieht. Zusätzlich wurden hier bei URL noch die url des Chats eingetragen - was zwar praktisch ist, uns allerdings nicht von der Pflicht entbindet den Chatverlauf in der DA als PDF einzufügen.
|
||||||
|
Anzumerkein ist ebenfalls noch das wir hier ein `unpublished` Tag verwenden weil wir hier eben Quellen verwenden die in dieser Form nicht gepublished wurden.
|
||||||
|
|
||||||
### Systembeschreibung Y
|
### Systembeschreibung Y
|
||||||
|
|
||||||
### Systembeschreibung Z
|
### Systembeschreibung Z
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Teilaufgabe Schüler Alpha
|
# Teilaufgabe Schüler Barodscheff
|
||||||
\textauthor{Schueler 1}
|
\textauthor{Joltawan Barodscheff}
|
||||||
|
|
||||||
Dieses Kapitel wird oft auch als _Literaturrecherche_ bezeichnet. Da gehört alles rein was der __normale__ Leser braucht um den praktischen Ansatz zu verstehen. Das bedeutet Sie brauchen einen roten Faden !
|
Dieses Kapitel wird oft auch als _Literaturrecherche_ bezeichnet. Da gehört alles rein was der __normale__ Leser braucht um den praktischen Ansatz zu verstehen. Das bedeutet Sie brauchen einen roten Faden !
|
||||||
|
|
||||||
@ -13,7 +13,9 @@ Die Frage nach der Detailgenauigkeit lässt sich wie folgt beantworten: So, dass
|
|||||||
|
|
||||||
### Messergebnisse
|
### Messergebnisse
|
||||||
|
|
||||||
![Ein PNG Bild\label{fig:png_bild}](img/graph.png)
|
![Ein PNG Bild\label{fig:png_bild}](img/graph.png){width=70%}
|
||||||
|
|
||||||
|
Bilder sind so scharf wie möglich darzustellen. Unnötige Dinge (welche für den Leser keine Information liefern) sind wegzuschneiden. Üblicherweise versucht das Framework Bilder möglichst gut und vollflächig in die Seite einzupassen - was aber speziell bei kleinen Bildern keinen Sinn macht. Daher kann man die Breite des Bildes `{width=xx%}` beeinflussen. Generell macht es keinen Sinn reisen Bilder mit dieser Funktion niederzuskalieren, sondern eher die Bilder schon vorher mittels eines Bildbearbeitungsprogrammes niederzurechnen. Damit wird das endgültige PDF nicht so groß.
|
||||||
|
|
||||||
### Etwas Fliesstext
|
### Etwas Fliesstext
|
||||||
|
|
@ -156,6 +156,19 @@ End Sub
|
|||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
|
und noch was in Dart (im Markdown direkt als Latex Quellcode eingefügt - damit funktionieren jegliche Sprachen welche als langdef vorliegen)
|
||||||
|
|
||||||
|
\begin{lstlisting}[language=Dart, caption={Ein Beispiel für Dart}]
|
||||||
|
library hallo;
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
String x;
|
||||||
|
print('Hello, World!');
|
||||||
|
x = 'hallo';
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
|
||||||
### Auswertung der Ergebnisse
|
### Auswertung der Ergebnisse
|
||||||
|
|
||||||
Anhand von XY kann man folgende Tabelle ableiten:
|
Anhand von XY kann man folgende Tabelle ableiten:
|
BIN
example/doc/HTL-DA-Doku-EN.docx
Normal file
BIN
example/doc/HTL-DA-Doku-EN.docx
Normal file
Binary file not shown.
BIN
example/doc/HTLLEDiplomarbeit-Kooperationsvereinbarungab2015.doc
Normal file
BIN
example/doc/HTLLEDiplomarbeit-Kooperationsvereinbarungab2015.doc
Normal file
Binary file not shown.
BIN
example/doc/VorlageDA-Präsentation-NAME.pptx
Normal file
BIN
example/doc/VorlageDA-Präsentation-NAME.pptx
Normal file
Binary file not shown.
BIN
example/doc/VorlagePoster(A0).ppt
Normal file
BIN
example/doc/VorlagePoster(A0).ppt
Normal file
Binary file not shown.
@ -239,3 +239,19 @@ bibtex: muller\_problem-based\_2016}
|
|||||||
year = {2015},
|
year = {2015},
|
||||||
urldate = {2016-07-17}
|
urldate = {2016-07-17}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@unpublished{gpt-atomaufbau,
|
||||||
|
title = {Aufbau eines Atoms},
|
||||||
|
author = {ChatGPT},
|
||||||
|
year = {2024},
|
||||||
|
url = {https://chat.openai.com/c/0484c9c2-fe7f-4922-af0b-76c3ca15fb58},
|
||||||
|
urldate = {2023-02-29}
|
||||||
|
}
|
||||||
|
|
||||||
|
@unpublished{gpt-pandoc,
|
||||||
|
author = {{ChatGPT 4.0}},
|
||||||
|
title = {Was ist Pandoc ?},
|
||||||
|
year = {2024},
|
||||||
|
url={https://chat.openai.com/c/ef535195-0e39-4d5c-9c85-cdb7ec18ad03},
|
||||||
|
urldate = {2023-02-29}
|
||||||
|
}
|
||||||
|
@ -14,11 +14,34 @@ da-author:
|
|||||||
nachname: Barodscheff
|
nachname: Barodscheff
|
||||||
klasse: 5AHWIN
|
klasse: 5AHWIN
|
||||||
thema: Bauen des LaTex Templates
|
thema: Bauen des LaTex Templates
|
||||||
|
ki-tools:
|
||||||
|
- name: ChatGPT3.5
|
||||||
|
zweck: Informationsbeschaffung
|
||||||
|
- name: Midjourney
|
||||||
|
zweck: Künstlerische Illustration
|
||||||
|
|
||||||
- vorname: Craig
|
- vorname: Craig
|
||||||
nachname: Tester
|
nachname: Tester
|
||||||
klasse: 5AHWIN
|
klasse: 5AHWIN
|
||||||
thema: Entwicklung eines Prototypen
|
thema: Entwicklung eines Prototypen
|
||||||
|
ki-tools:
|
||||||
|
- name: Github Copilot
|
||||||
|
zweck: Boilerplate codegenerierung, Codedokumentation
|
||||||
|
|
||||||
|
- vorname: Karl
|
||||||
|
nachname: Ranseier
|
||||||
|
klasse: 5AHWIN
|
||||||
|
thema: API-Mockups und Testen der Applikation
|
||||||
|
|
||||||
|
- vorname: Frank
|
||||||
|
nachname: Borland
|
||||||
|
klasse: 5AHWIN
|
||||||
|
thema: GUI Generierung
|
||||||
|
ki-tools:
|
||||||
|
- name: Galileo AI
|
||||||
|
zweck: Setendesign sowie UI/UX Design der App
|
||||||
|
- name: Grammarly Go
|
||||||
|
zweck: Stilverbesserung sowie Rechtschreibkorrekturen
|
||||||
|
|
||||||
da-betreuer:
|
da-betreuer:
|
||||||
- paraffe: hg
|
- paraffe: hg
|
||||||
@ -31,21 +54,31 @@ da-kurzfassung-de: Hier kommt eine deutsche Kurzfassung hin.
|
|||||||
|
|
||||||
da-kurzfassung-en: Hier kommt eine englische Kurzfassung hin.
|
da-kurzfassung-en: Hier kommt eine englische Kurzfassung hin.
|
||||||
|
|
||||||
|
|
||||||
|
da-kiquellen:
|
||||||
|
- ki: ChatGPT4
|
||||||
|
short-prompt: Erklärung Pandoc
|
||||||
|
pdf-file: gpt-pandoc.pdf
|
||||||
|
|
||||||
|
- ki: ChatGPT3.5
|
||||||
|
short-prompt: Aufbau eines Atoms
|
||||||
|
pdf-file: gpt-atom.pdf
|
||||||
|
|
||||||
|
|
||||||
da-appendix:
|
da-appendix:
|
||||||
- abschnitt: Begleitprotokolle
|
|
||||||
pdf-file: begleitprotokolle.pdf
|
|
||||||
|
|
||||||
- abschnitt: Projekthandbuch
|
|
||||||
pdf-file: projekthandbuch.pdf
|
|
||||||
|
|
||||||
- abschnitt: Technische Dokumentation
|
- abschnitt: Technische Dokumentation
|
||||||
pdf-file: pandoc-manual.pdf
|
pdf-file: pandoc-manual.pdf
|
||||||
seiten: 53-73
|
seiten: 53-73
|
||||||
|
|
||||||
- abschnitt: Diplomatbeitsvereinbarung
|
- abschnitt: Betreuungsprotokolle
|
||||||
pdf-file: HTL-DA-Vereinbarung.pdf
|
pdf-file: betreuungsprotokolle.pdf
|
||||||
|
|
||||||
|
# Diplomarbeitsvereinbarungen müssen zum Schluss sein
|
||||||
|
|
||||||
|
- abschnitt: Diplomatbeitsvereinbarung Englisch
|
||||||
|
pdf-file: HTL-DA-Doku-EN.pdf
|
||||||
|
|
||||||
|
- abschnitt: Diplomatbeitsvereinbarung Deutsch
|
||||||
|
pdf-file: HTL-DA-Doku-DE.pdf
|
||||||
|
|
||||||
da-build-properties:
|
|
||||||
- build-notification: MSTeams-DA_2021_Thema <test@muellmail.com>
|
|
||||||
- build-notification: abcdefg@byom.de
|
|
||||||
---
|
---
|
||||||
|
BIN
example/pdfs/HTL-DA-Doku-DE.pdf
Normal file
BIN
example/pdfs/HTL-DA-Doku-DE.pdf
Normal file
Binary file not shown.
BIN
example/pdfs/HTL-DA-Doku-EN.pdf
Normal file
BIN
example/pdfs/HTL-DA-Doku-EN.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
example/pdfs/gpt-atom.pdf
Normal file
BIN
example/pdfs/gpt-atom.pdf
Normal file
Binary file not shown.
BIN
example/pdfs/gpt-pandoc.pdf
Normal file
BIN
example/pdfs/gpt-pandoc.pdf
Normal file
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 1.7 KiB |
@ -13,7 +13,7 @@
|
|||||||
<category citation-format="numeric"/>
|
<category citation-format="numeric"/>
|
||||||
<category field="generic-base"/>
|
<category field="generic-base"/>
|
||||||
<summary>HTL Leoben numeric style</summary>
|
<summary>HTL Leoben numeric style</summary>
|
||||||
<updated>2021-03-26T07:58:44+00:00</updated>
|
<updated>2024-02-29T07:18:19+00:00</updated>
|
||||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||||
</info>
|
</info>
|
||||||
<macro name="editor">
|
<macro name="editor">
|
||||||
@ -112,6 +112,14 @@
|
|||||||
</sort>
|
</sort>
|
||||||
<layout prefix="[" suffix="]" delimiter=",">
|
<layout prefix="[" suffix="]" delimiter=",">
|
||||||
<text variable="citation-number"/>
|
<text variable="citation-number"/>
|
||||||
|
<choose>
|
||||||
|
<if match="any" variable="page">
|
||||||
|
<group>
|
||||||
|
<label prefix=" " variable="page" form="short"/>
|
||||||
|
<number variable="page"/>
|
||||||
|
</group>
|
||||||
|
</if>
|
||||||
|
</choose>
|
||||||
</layout>
|
</layout>
|
||||||
</citation>
|
</citation>
|
||||||
<bibliography et-al-min="6" et-al-use-first="4" second-field-align="flush" hanging-indent="true">
|
<bibliography et-al-min="6" et-al-use-first="4" second-field-align="flush" hanging-indent="true">
|
||||||
|
24
style/langdef-dart.tex
Normal file
24
style/langdef-dart.tex
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
\lstdefinelanguage{Dart}{
|
||||||
|
morekeywords={
|
||||||
|
% normal keywords (without data types)
|
||||||
|
abstract, as, assert, async, await, break, case, catch, class, const,
|
||||||
|
continue, default, deferred, do, dynamic, else, enum, export, extends,
|
||||||
|
extension, external, factory, false, final, finally, for, get, if, implements,
|
||||||
|
import, in, interface, is, late, library, mixin, new, null, on, operator,
|
||||||
|
part, required, rethrow, return, set, show, static, super, switch, sync,
|
||||||
|
this, throw, true, try, typedef, var, void, while, with, yield
|
||||||
|
},
|
||||||
|
morekeywords={[2] % data types
|
||||||
|
int, double, String, bool, List, Map, Set, Future, Stream
|
||||||
|
},
|
||||||
|
morekeywords={[3] % literals
|
||||||
|
% reserved words for literal values
|
||||||
|
null,true,false,
|
||||||
|
},
|
||||||
|
sensitive,
|
||||||
|
morecomment = [l]//,
|
||||||
|
morecomment = [s]{/*}{*/},
|
||||||
|
morestring = [b]",
|
||||||
|
morestring = [b]',
|
||||||
|
}
|
@ -289,6 +289,7 @@ $endif$
|
|||||||
\input{style/langdef-xml.tex}
|
\input{style/langdef-xml.tex}
|
||||||
\input{style/langdef-kotlin.tex}
|
\input{style/langdef-kotlin.tex}
|
||||||
\input{style/langdef-vba.tex}
|
\input{style/langdef-vba.tex}
|
||||||
|
\input{style/langdef-dart.tex}
|
||||||
$endif$
|
$endif$
|
||||||
|
|
||||||
%
|
%
|
||||||
@ -504,15 +505,25 @@ $for(da-betreuer)$$da-betreuer.name$$sep$\\ $endfor$
|
|||||||
\end{titlepage}
|
\end{titlepage}
|
||||||
|
|
||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
% EIDESSTATTLICHE ERKLAERUNG
|
% EIDESSTATTLICHE ERKLAERUNGEN
|
||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
$for(da-author)$
|
||||||
\cleardoublepage{}
|
\cleardoublepage{}
|
||||||
\section*{\translate{authorship}}
|
\section*{\translate{authorship}}
|
||||||
\translate{oath}
|
\translate{oath}
|
||||||
|
|
||||||
|
$if(da-author.ki-tools)$
|
||||||
|
\translate{aitools}
|
||||||
|
|
||||||
|
$for(da-author.ki-tools)$
|
||||||
|
\begin{itemize}[leftmargin=2cm]
|
||||||
|
\item \textbf{$da-author.ki-tools.name$}: $da-author.ki-tools.zweck$
|
||||||
|
\end{itemize}
|
||||||
|
$endfor$
|
||||||
|
$endif$
|
||||||
|
|
||||||
\noindent
|
\noindent
|
||||||
|
|
||||||
$for(da-author)$
|
|
||||||
\begin{minipage}[h]{0.4\linewidth} \vspace*{3cm}
|
\begin{minipage}[h]{0.4\linewidth} \vspace*{3cm}
|
||||||
\translate{signinglocation}, \translate{at} \dotfill\\
|
\translate{signinglocation}, \translate{at} \dotfill\\
|
||||||
\vspace*{2.5mm}
|
\vspace*{2.5mm}
|
||||||
@ -584,6 +595,41 @@ $body$
|
|||||||
% 2.) Tabellenverzeichnis
|
% 2.) Tabellenverzeichnis
|
||||||
% 3.) Literaturverzeichnis
|
% 3.) Literaturverzeichnis
|
||||||
|
|
||||||
|
|
||||||
|
$if(da-kiquellen)$
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
% KI Quellen
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
% ... besteht aus PDF Files die in der metadata.yaml Datei deklariert werden
|
||||||
|
% und hier dann eingebunden werden. Normalerweise sind das folgende Dateien
|
||||||
|
|
||||||
|
\translatelet\app{aisources}
|
||||||
|
\section{\app}
|
||||||
|
|
||||||
|
\translate{attachments}
|
||||||
|
\begin{itemize}
|
||||||
|
|
||||||
|
$for(da-kiquellen)$
|
||||||
|
\item \textbf{$da-kiquellen.ki$: $da-kiquellen.short-prompt$}\\ $if(da-kiquellen.seiten)$\translate{pages} $da-kiquellen.seiten$ \translate{of} $endif$ Datei: \texttt{$da-kiquellen.pdf-file$}
|
||||||
|
$endfor$
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
|
||||||
|
$for(da-kiquellen)$
|
||||||
|
\stepcounter{subsection}
|
||||||
|
\phantomsection
|
||||||
|
\addcontentsline{toc}{subsection}{\protect\numberline{\thesubsection}$da-kiquellen.ki$: $da-kiquellen.short-prompt$}
|
||||||
|
\includepdf[
|
||||||
|
clip=0mm 0mm 0mm 0mm,
|
||||||
|
pages=$if(da-kiquellen.seiten)$$da-appendix.seiten$$else$-$endif$,
|
||||||
|
frame,
|
||||||
|
scale=.73,
|
||||||
|
pagecommand={\begin{center}\translate{attachment}: $da-kiquellen.short-prompt$\\\begin{tiny}$da-kiquellen.pdf-file$\end{tiny}\end{center}}
|
||||||
|
]{pdfs/$da-kiquellen.pdf-file$}
|
||||||
|
%\includepdf[pages=$if(da-appendix.seiten)$$da-appendix.seiten$$else$-$endif$]{source/pdfs/$da-appendix.pdf-file$}
|
||||||
|
$endfor$
|
||||||
|
$endif$
|
||||||
|
|
||||||
$if(da-appendix)$
|
$if(da-appendix)$
|
||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
% APPENDIX
|
% APPENDIX
|
||||||
|
@ -15,15 +15,18 @@
|
|||||||
\providetranslation{noteofhanks}{Danksagung}
|
\providetranslation{noteofhanks}{Danksagung}
|
||||||
\providetranslation{appendix}{Anhang}
|
\providetranslation{appendix}{Anhang}
|
||||||
\providetranslation{attachments}{Folgende Dokumente bilden einen Bestandteil dieser Diplomarbeit und liegen der digitalen Version bei.}
|
\providetranslation{attachments}{Folgende Dokumente bilden einen Bestandteil dieser Diplomarbeit und liegen der digitalen Version bei.}
|
||||||
\providetranslation{oath}{Ich erkläre hiermit an Eides statt, dass ich die vorliegende Arbeit ohne Hilfe Dritter und ohne Benutzung anderer als der angegebenen Hilfsmittel angefertigt habe; die aus fremden Quellen direkt oder indirekt übernommenen Gedanken sind als solche kenntlich gemacht. Die Arbeit wurde bisher in gleicher oder ähnlicher Form in keiner anderen Prüfungsbehörde vorgelegt und auch noch nicht veröffentlicht. Ich habe keine KI-Tools verwendet, außer in den entsprechend gekennzeichneten Bereichen.}
|
\providetranslation{oath}{Hiermit versichere ich, dass ich die vorliegende Arbeit selbstständig verfasst und keine anderen Hilfsmittel als die angegebenen benützt habe. Die Stellen, die anderen Werken (gilt ebenso für Werke aus elektronischen Datenbanken oder aus dem Internet) wörtlich oder sinngemäß entnommen sind, habe ich unter Angabe der Quelle und Einhaltung der Regeln wissenschaftlichen Zitierens kenntlich gemacht. Diese Versicherung umfasst auch in der Arbeit verwendete bildliche Darstellungen, Tabellen, Skizzen und Zeichnungen. }
|
||||||
|
\providetranslation{aitools}{Für die Erstellung der Arbeit habe ich auch Hilfsmittel generativer KI-Tools zu folgendem Zweck verwendet, wobei die verwendeten Hilfsmittel vollständig und wahrheitsgetreu inkl. Produktversion und Prompt ausgewiesen wurden: }
|
||||||
\providetranslation{of}{der}
|
\providetranslation{of}{der}
|
||||||
\providetranslation{file}{Datei}
|
\providetranslation{file}{Datei}
|
||||||
\providetranslation{pages}{Seite(n)}
|
\providetranslation{pages}{Seite(n)}
|
||||||
\providetranslation{author}{Autor}
|
\providetranslation{author}{Autor}
|
||||||
\providetranslation{authorship}{Erklärung der Urheberschaft}
|
\providetranslation{authorship}{Eidesstattliche Erklärung}
|
||||||
\providetranslation{attachment}{Datei}
|
\providetranslation{attachment}{Datei}
|
||||||
\providetranslation{lstoffigures}{Abbildungsverzeichnis}
|
\providetranslation{lstoffigures}{Abbildungsverzeichnis}
|
||||||
\providetranslation{lstoftables}{Tabellenverzeichnis}
|
\providetranslation{lstoftables}{Tabellenverzeichnis}
|
||||||
\providetranslation{lstoflistings}{Quellcodeverzeichnis}
|
\providetranslation{lstoflistings}{Quellcodeverzeichnis}
|
||||||
\providetranslation{lstofreferences}{Literaturverzeichnis}
|
\providetranslation{lstofreferences}{Literaturverzeichnis}
|
||||||
|
\providetranslation{aisources}{KI Quellen}
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,15 +15,17 @@
|
|||||||
\providetranslation{noteofhanks}{Note of Thanks}
|
\providetranslation{noteofhanks}{Note of Thanks}
|
||||||
\providetranslation{appendix}{Appendix}
|
\providetranslation{appendix}{Appendix}
|
||||||
\providetranslation{attachments}{The following documents are part of this thesis and are included in the digital version.}
|
\providetranslation{attachments}{The following documents are part of this thesis and are included in the digital version.}
|
||||||
\providetranslation {oath}{I hereby declare in lieu of oath that I have prepared this work without the help of third parties and without the use of any aids other than those specified; Thoughts taken directly or indirectly from external sources are marked as such. The thesis has not been submitted in the same or a similar form to any other examination authority and has not yet been published. I have not used any AI tools, except in the areas specifically marked.}
|
\providetranslation{oath}{I hereby declare that I have written the present work independently and have not used any sources or aids other than those specified. Passages taken verbatim or in essence from other works (this also applies to works from electronic databases or from the Internet) have been identified as such with the source cited and in compliance with the rules of academic citation. This declaration also covers images, tables, sketches, and drawings used in the work.}
|
||||||
|
\providetranslation{aitools}{For the preparation of the work, I have also used generative AI tools for the following purposes, where the tools used have been fully and truthfully disclosed, including product version and prompt:}
|
||||||
\providetranslation{of}{of}
|
\providetranslation{of}{of}
|
||||||
\providetranslation{file}{File}
|
\providetranslation{file}{File}
|
||||||
\providetranslation{pages}{Page(s)}
|
\providetranslation{pages}{Page(s)}
|
||||||
\providetranslation{author}{Author}
|
\providetranslation{author}{Author}
|
||||||
\providetranslation{authorship}{Declaration of authorship}
|
\providetranslation{authorship}{Affidavit}
|
||||||
\providetranslation{attachment}{File}
|
\providetranslation{attachment}{File}
|
||||||
\providetranslation{lstoffigures}{List of Figures}
|
\providetranslation{lstoffigures}{List of Figures}
|
||||||
\providetranslation{lstoftables}{List of Tables}
|
\providetranslation{lstoftables}{List of Tables}
|
||||||
\providetranslation{lstoflistings}{List of Listings}
|
\providetranslation{lstoflistings}{List of Listings}
|
||||||
\providetranslation{lstofreferences}{List of References}
|
\providetranslation{lstofreferences}{List of References}
|
||||||
|
\providetranslation{aisources}{AI Sources}
|
||||||
|
|
||||||
|
3
tools/README.md
Normal file
3
tools/README.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# docker tools
|
||||||
|
|
||||||
|
The provided Dockerfile allows one to create a docker container taht builds the diploma thesis.
|
33
tools/docker/Dockerfile
Normal file
33
tools/docker/Dockerfile
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
FROM ubuntu:20.04
|
||||||
|
|
||||||
|
# Set the environment variables
|
||||||
|
ENV LANG=C.UTF-8 \
|
||||||
|
LC_ALL=C.UTF-8 \
|
||||||
|
DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
# Update the package list and install dependencies
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get install -y --no-install-recommends \
|
||||||
|
git \
|
||||||
|
build-essential \
|
||||||
|
make \
|
||||||
|
texlive-full \
|
||||||
|
pandoc \
|
||||||
|
pandoc-citeproc \
|
||||||
|
tree \
|
||||||
|
rsync \
|
||||||
|
hunspell \
|
||||||
|
hunspell-de-at \
|
||||||
|
hunspell-en-us && \
|
||||||
|
apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Set the working directory
|
||||||
|
WORKDIR /workspace
|
||||||
|
|
||||||
|
# Copy the Diplomarbeit template repository clone command here
|
||||||
|
# Uncomment the following line if the repository URL is provided
|
||||||
|
# RUN git clone https://itsp.htl-leoben.at/git/Hg/HTLLE-DA-Vorlage.git /workspace/template
|
||||||
|
|
||||||
|
# Set entrypoint to bash
|
||||||
|
ENTRYPOINT ["make", "pdf", "-C", "HTLLE-DA-Vorlage", "SOURCEDIR=/workspace"]
|
32
tools/docker/README.md
Normal file
32
tools/docker/README.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# docker container
|
||||||
|
|
||||||
|
The provided `Dockerfile` can be used to cerate a dockerized build environment where all depenencies are satisfied.
|
||||||
|
|
||||||
|
|
||||||
|
## building the environment
|
||||||
|
|
||||||
|
In order to build a docker container (in this example it will be namend `diplomarbeit-env` just run the following command on a docker host (Testsd with docker 20.10.22)
|
||||||
|
|
||||||
|
~~~~
|
||||||
|
$ docker build -t htlle-da-env .
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
This creates a container that contains all dependencies and expects to find your diplomathesis in mounted into the `/workspace` folder.
|
||||||
|
|
||||||
|
Alternatively the image can be pulled from dockerhub. See instructions here: https://hub.docker.com/r/bytebang/htlle-da-env
|
||||||
|
|
||||||
|
|
||||||
|
## usage
|
||||||
|
|
||||||
|
One can build the thesis ba running the followin command:
|
||||||
|
|
||||||
|
~~~~
|
||||||
|
$ docker run -it --rm -v $(pwd):/workspace htlle-da-env
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
This command runs the diplomarbeit-env container interactively, mounts the current directory into the container at /workspace, and automatically cleans up the container after it exits.
|
||||||
|
|
||||||
|
Errors and log messages are shown in the console, the file will be written back to the `/workspace` folder.
|
||||||
|
This also works with _Docker Desktop_
|
||||||
|
|
||||||
|
![Docker Dektop settings](docker-desktop.png)
|
BIN
tools/docker/docker-desktop.png
Normal file
BIN
tools/docker/docker-desktop.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
4
tools/github/README.md
Normal file
4
tools/github/README.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# Github tools
|
||||||
|
|
||||||
|
The workflow `build-and-send.yaml` allows the user to build the diploma thesis via a github workflow.
|
||||||
|
Adapt it to meet your needs.
|
41
tools/github/build-and-send.yaml
Normal file
41
tools/github/build-and-send.yaml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
name: Build and Send Diplomathesis
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
paths:
|
||||||
|
- Diplomarbeit/**
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install git build-essential make-guile texlive-full pandoc pandoc-citeproc tree rsync hunspell hunspell-de-at
|
||||||
|
|
||||||
|
|
||||||
|
- name: Build DA-Thesis
|
||||||
|
run: |
|
||||||
|
make pdf -C HTLLE-DA-Vorlage SOURCEDIR=../Diplomarbeit/
|
||||||
|
|
||||||
|
|
||||||
|
- name: Send File via Email
|
||||||
|
uses: dawidd6/action-send-mail@v2
|
||||||
|
with:
|
||||||
|
server_address: smtp.gmail.com
|
||||||
|
server_port: 587
|
||||||
|
username: ${{ secrets.GMAIL_MAIL }}
|
||||||
|
password: ${{ secrets.GMAIL_APP_PASSWORD }}
|
||||||
|
subject: "Diploma thesis"
|
||||||
|
body: " "
|
||||||
|
to: ${{ secrets.TEAMS_MAIL }}
|
||||||
|
from: ${{ secrets.GMAIL_MAIL }}
|
||||||
|
attachments: Diplomarbeit/diplomarbeit.pdf
|
Loading…
Reference in New Issue
Block a user