-
Notifications
You must be signed in to change notification settings - Fork 902
simple-thesis-ger-host:1.0.1 #4012
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
67f2809
95c1b15
0ae292e
fb9811d
a212d60
03121b7
21e89d6
bb9f946
6055df4
d0da9af
d33a5b0
947d3cf
779ad8c
25240c5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| MIT License | ||
|
|
||
| Copyright (c) 2026 compera24 | ||
|
|
||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
|
|
||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
|
|
||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| ## Purpose: | ||
| A simple, clean thesis templete with a wide range of functionality. | ||
|
|
||
| ## Usage | ||
|
|
||
| The template can be initialized via `typst init`. | ||
| E.g.: | ||
|
|
||
| ```bash | ||
| typst init @preview/simple-thesis-ger-host:1.0.1 | ||
| ``` | ||
|
|
||
|
|
||
| ## How to Start: | ||
|
|
||
| Importing all files. | ||
|
|
||
| The main file is: 0_main.typ | ||
| In the main file you can see every implementet file, and the main (global) layout settings. | ||
| Use the implementet file as example to implement your own chapters. | ||
| It is only dependent from glosasarium so you possibly have to install it first (if you use typst offline on your maschiene) | ||
|
|
||
| change the bib file which your own (for example export from zotero) | ||
|
|
||
| ## Newest Version: | ||
| 1.0.0 29.1.2026 uncensored version, not published | ||
| 1.0.1 29.1.2026 censored version (image), public | ||
|
|
||
| ## Dependencies | ||
| - glossarium (MIT License) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| // ===== Imports (package responsibility) | ||
| #import "@preview/glossarium:0.5.10": | ||
| make-glossary, | ||
| register-glossary, | ||
| print-glossary, | ||
| gls, | ||
| glspl | ||
|
|
||
| // ===== Public entry function | ||
|
|
||
| #let thesis(entry-list, body) = { | ||
| // Language & layout | ||
| set text(lang: "de") | ||
| set page(paper: "a4") | ||
| set par(justify: true) | ||
| set page(margin: (top: 2.5cm, bottom: 2.5cm, left: 3cm, right: 2.5cm)) | ||
|
|
||
| // Title page margin reset will be done by template | ||
| body | ||
| } | ||
|
|
||
| // import "header" everything what is defined globally, except glossarium because its not working than (print-glossary funktion is missing) | ||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| //Imports | ||
| #import "@preview/simple-thesis-ger-host:1.0.1": thesis // import "header" everything what is defined globally, except glossarium because its not working than (print-glossary funktion is missing) | ||
| #import "@preview/glossarium:0.5.10": make-glossary, register-glossary, print-glossary, gls, glspl | ||
| #import "./chapter/glossar.typ": entry-list | ||
| // Glossary setup | ||
| #register-glossary(entry-list) | ||
| #show: make-glossary | ||
|
Comment on lines
+6
to
+7
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If you put that in |
||
|
|
||
| // ==================== | ||
| // Deckblatt | ||
| // ==================== | ||
| #include "./chapter/TitlePage.typ" | ||
|
|
||
| #set page(margin: (top: 2.5cm, bottom: 2.5cm, left: 3cm, right: 2.5cm)) | ||
|
|
||
|
|
||
| // Inhaltsverzeichnis | ||
| #pagebreak() | ||
| #set heading(numbering: "1.") | ||
| #set page(numbering: "I") | ||
| #outline(title: "Inhaltsverzeichnis ") | ||
|
|
||
| #outline( title: "Abbildungsverzeichnis", target: figure.where(kind: image)) | ||
|
|
||
| //Start Real Numbering | ||
| #set page(numbering: "1") | ||
| #counter(page).update(1) | ||
|
Comment on lines
+9
to
+27
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think all this logic could go in your |
||
| #include "./chapter/vorwort.typ" | ||
| = Chapter 1 | ||
| #lorem(20) @host #lorem(60) @hostWebsite #lorem(800) | ||
| = Chapter 2 | ||
| #lorem(20) @host #lorem(60) @hostWebsite #lorem(80) @hostWebsite #lorem(200) | ||
| = Chapter 3 | ||
| #lorem(500) | ||
| //Glossar | ||
| #pagebreak() | ||
| = Glossar | ||
| #print-glossary(entry-list) | ||
| //Quellen | ||
| = Quellenverzeichniss | ||
| #bibliography("./bib/Abschlussarbeit.bib", title: none) | ||
| //Anhang | ||
| = Anhang | ||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| @misc{hostWebsite, | ||
| title = {Startseite - {{Hochschule Stralsund}}}, | ||
| urldate = {2026-01-29}, | ||
| howpublished = {https://www.hochschule-stralsund.de/}, | ||
| file = {C:\Users\elias\Zotero\storage\L7T46NZB\www.hochschule-stralsund.de.html} | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I didn't notice at first, but I think it would be better to have a placeholder file that is not tied to your personal setup. Can you remove that |
||
| } | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If you don't expect people using your template to modify the layout of that page substantially, I think this should be part of the template (i.e in the #show: thesis.with(title: [My groundbreaking thesis], author: [Jane Doe]) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| #set page( margin: (top: 0cm, bottom: 0cm, left: 0cm, right: 0cm )) | ||
|
|
||
|
|
||
| #align(center)[ | ||
| #v(1cm) // Vertikal zentrieren (oben) | ||
|
|
||
| // ---------- Logo ---------- | ||
| #image("../dat/HOSTLogo.png", width: 8cm) | ||
| #v(0.5cm) | ||
|
|
||
| // ---------- Hauptblock (zentriert, schmale Spalte) ---------- | ||
| #block(width: 75%)[ | ||
| #align(center)[ | ||
| #text(size: 16pt, weight: "bold")[Abschlussarbeit] | ||
| #v(0.5cm) | ||
| #text(size: 12pt, weight: "bold")[Studiengang Elektrotechnik Bachelor] | ||
| #v(0.5cm) | ||
|
|
||
| // Linie | ||
| //#hline() | ||
| #v(0.2cm) | ||
|
|
||
| // ---------- Titel ---------- | ||
| #line(length: 100%) | ||
| #text(size: 24pt, weight: "bold")[ | ||
| Titel der Abschlussarbeit, der viel zu lang ist, sowie sich das für eine Ordentliche Abschlussarbeit, die was aufsich hält, gehört | ||
| ] | ||
| #line(length: 100%) | ||
| #v(0.2cm) | ||
|
|
||
| // Linie | ||
| //#hline() | ||
| #v(0.5cm) | ||
|
|
||
| #text(size: 11pt)[von] | ||
| #text(size: 12pt, weight: "bold")[Vorname Nachname] | ||
| ] | ||
| ] | ||
| ] | ||
| #v(2cm) | ||
|
|
||
| #block(width: 100%)[ | ||
| #set align(center) | ||
|
|
||
|
|
||
| #table( | ||
| columns: (auto, auto), | ||
| stroke: none, | ||
| align: (left), | ||
| [Erstprüfer:], [Prof. Dr. Beispielname], | ||
| [Zweitprüfer:], [Prof. Dr. Zweitname], | ||
| [durchgeführt in der:], [Fakultät Elektrotechnik und Informatik], | ||
| [durchgeführt für:], [Beispiel GmbH], | ||
| [Verfasser:], [Vorname Nachname], | ||
| [], [Straße 1], | ||
| [], [12345 Stadt], | ||
|
|
||
| [Arbeit vorgelegt am:], [#datetime.today().display("[year]-[month]-[day]")], | ||
|
|
||
| ) | ||
|
|
||
| #v(1fr) // Vertikal zentrieren (unten) | ||
| ] | ||
|
|
||
| // ---------- Danach normale Seitenränder wiederherstellen ---------- | ||
|
|
||
|
|
||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| #let entry-list = ( | ||
| ( | ||
| key: "host", | ||
| short: "HOST", | ||
| long: "Hochschule Stralsund", | ||
| description: [ | ||
| Eine Hochschule in Stralsund mit den Fachbereichen Wirtschaft, Maschienbau, Elektrotechnik und Informatik. | ||
| ] | ||
| ), | ||
|
|
||
| ) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| = Vorwort | ||
| Echtes Logo fehlt aufgrund unklarer Copyright lage. | ||
| @host #lorem(60) @hostWebsite | ||
|
|
||
|
|
||
| #figure( image("../dat/HOSTLogo.png", width: 8cm, ), caption: [ | ||
| example | ||
| ],) | ||
|
|
||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| [package] | ||
| name = "simple-thesis-ger-host" | ||
| version = "1.0.1" | ||
| entrypoint = "header.typ" | ||
| authors = ["compera24"] | ||
| license = "MIT" | ||
| description = "simple clean Thesis Template, Language DE, with Bibliography, Glossar etc." | ||
| repository = "https://github.com/compera24/thesis-template-typst" | ||
| keywords = ["abschlussarbeit", "Thesis","deutsch","german","ger","Bachelor","Master"] | ||
| categories = ["layout","thesis"] | ||
| exclude = [] | ||
|
|
||
| [template] | ||
| path = "template" | ||
| entrypoint = "0_main.typ" | ||
| thumbnail = "thumbnail.png" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't use the
thesisfunction anywhere. I think you should introduce a#show: thesiscall to apply the styling it defines, and remove any duplicate styling such as the#set page(margin: …)line.