Add first version of workshop slides
This commit is contained in:
parent
0739d26c9e
commit
a57fda18c1
45 changed files with 879 additions and 0 deletions
9
chapters/about-me.typ
Normal file
9
chapters/about-me.typ
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
#slide(title: "Über mich")[
|
||||
- B.#(sym.space.nobreak.narrow)Eng. Julius Freudenberger
|
||||
- 2000 geboren
|
||||
- 2016 erste Kontakte mit #LaTeX
|
||||
- 2019 -- 2023 Bachelorstudium an der Hochschule Esslingen
|
||||
- 2023 -- 2026(?) Masterstudium an der Hochschule Karlsruhe
|
||||
]
|
||||
41
chapters/closing.typ
Normal file
41
chapters/closing.typ
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Ausblick
|
||||
|
||||
#slide(title: [Was kann typst noch?])[
|
||||
- Präsentationen mit #link("https://typst.app/universe/package/polylux")[polylux] oder #link("https://typst.app/universe/package/touying")[touying]
|
||||
|
||||
- Zeichnen mit #link("https://typst.app/universe/package/cetz")[cetz]
|
||||
- Plotting mit #link("https://typst.app/universe/package/lilaq")[lilaq]
|
||||
- Chemische Formeln mit #link("https://typst.app/universe/package/alchemist")[alchemist]
|
||||
]
|
||||
|
||||
#slide(title: [Nächste Projekte für typst?])[
|
||||
- Wissenschaftliches Dokumentieren
|
||||
|
||||
- Praxissemesterbericht
|
||||
- Hausarbeiten
|
||||
#v(1em)
|
||||
- (Thesis)
|
||||
#v(2em)
|
||||
- Bewerbungsunterlagen
|
||||
]
|
||||
|
||||
#slide(title: [Bewerbungsunterlagen])[
|
||||
#columns(2)[
|
||||
- Lebenslauf mit #link("https://typst.app/universe/package/moderner-cv")[moderner-cv]
|
||||
#image(height: 90%, "/images/moderner-cv.png")
|
||||
|
||||
#colbreak()
|
||||
- Anschreiben mit #link("https://typst.app/universe/package/briefs")[briefs]
|
||||
#image(height: 90%, "/images/briefs.png")
|
||||
]
|
||||
]
|
||||
|
||||
#slide(title: [Wohin bei Problemen?])[
|
||||
- #link("https://typst.app/docs")[typst Dokumentation]
|
||||
- bzw.~Dokumentation des jeweiligen Pakets
|
||||
|
||||
- Suchmaschine des Vertrauens
|
||||
- #link("https://forum.typst.app")[typst-Forum]
|
||||
]
|
||||
24
chapters/external-files.typ
Normal file
24
chapters/external-files.typ
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Externe Dateien
|
||||
|
||||
#slide(title: [Externe Dateien einbinden --- SVG und PDF])[
|
||||
- `#image` akzeptiert die Vektorformate `svg` und `pdf` nativ
|
||||
- Nutzung entweder als Bild (z.#(sym.space.nobreak.narrow)B. mit `#figure`)
|
||||
- oder um PDF--Dateien als ganze Seiten einzufügen (z.#(sym.space.nobreak.narrow)B. externe Dokumente im Anhang)
|
||||
```typ
|
||||
#page(margin: 0pt, image("filename.pdf", page: 1))
|
||||
|
||||
// mehrere Seiten
|
||||
#page(margin: 0pt, for n in range(1, N + 1) { image("file.pdf", page: n) })
|
||||
```
|
||||
- aktuell kann typst nicht erkennen, wie viele Seiten eine PDF hat
|
||||
- deshalb `N` mit der Anzahl an einzubindender Seiten ersetzen
|
||||
- Eintrag im Inhaltsverzeichnis
|
||||
```typ
|
||||
#{
|
||||
show heading: none
|
||||
heading[Eingebettete PDF]
|
||||
}
|
||||
```
|
||||
]
|
||||
71
chapters/formatting.typ
Normal file
71
chapters/formatting.typ
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Dokumentformatierung
|
||||
|
||||
#slide(title: "Formatierungsoptionen")[
|
||||
- Papierformat
|
||||
- wird im Parameter `paper` in der Funktion `#page()` gesetzt
|
||||
- `#set page(paper: "a4")` (Standard)
|
||||
- `#set page(paper: "a5")`
|
||||
- `#set page(paper: "us-letter")`
|
||||
- Seitenränder
|
||||
- wird im Paramter `margin` in der Funktion `#page()` gesetzt
|
||||
- Standard: $frac(2.5,21)*$kleinere Kante der Seite
|
||||
- A4: 2,5~cm
|
||||
- `#set page(margin: 4pt)` gleicher Rand auf allen Seiten
|
||||
- `#set page(margin: (x: 8pt, y: 4pt))` horizontale und vertikale Ränder
|
||||
- `top, right, bottom, left` Ränder an den jeweiligen Seiten
|
||||
- `inside, outside` Ränder innen und außen (bei Büchern)
|
||||
]
|
||||
|
||||
#slide(title: "Querformat")[
|
||||
- Gesamtes Dokument im Querformat
|
||||
```
|
||||
#set page(flipped: true)
|
||||
```
|
||||
|
||||
- Einzelne Seiten im Querformat (nützlich für große Tabellen oder breite Abbildungen)
|
||||
```
|
||||
#page(flipped: true)[
|
||||
Inhalt
|
||||
]```
|
||||
]
|
||||
|
||||
#slide(title: "Kopf- und Fußzeile")[
|
||||
- `#set page(header: [Kopfzeile], footer: [Fußzeile])`
|
||||
- Inhalt wird standardmäßig wie gewohnt linksbündig gesetzt
|
||||
- immer rechts mit `#align(right)[Inhalt]`
|
||||
- mehrere Spalten
|
||||
```
|
||||
#set page(footer: [#grid(columns: (1fr, 1fr, 1fr), align(left)[Linker Inhalt], align(center)[Mittlerer Inhalt], align(right)[Rechter Inhalt])])
|
||||
```
|
||||
- wenn Seitenzahl angezeigt werden soll `context` nutzen
|
||||
```
|
||||
#set page(footer: context [#grid(columns: (1fr, 1fr, 1fr), align(left)[Linker Inhalt], align(center)[Mittlerer Inhalt], align(right)[#counter(page).display("1")])])
|
||||
```
|
||||
]
|
||||
|
||||
|
||||
|
||||
#slide(title: "Fußzeile in Büchern")[
|
||||
- `inner` und `outer` nicht nativ vorgesehen
|
||||
- Paket #link("https://typst.app/universe/package/chic-hdr/")[chic-hdr] nicht auf aktuelle typst Version angepasst
|
||||
- daher selbst gebastelte Lösung
|
||||
#raw(lang: "typ", read("/codebeispiele/book-footer.typ"))
|
||||
]
|
||||
|
||||
#slide(title: "Kopfzeile mit Überschriften")[
|
||||
- Paket #link("https://typst.app/universe/package/hydra")[hydra] ermöglicht Anzeigen der aktuellen Überschriften
|
||||
```
|
||||
#set page(header: context {
|
||||
[#grid(columns: (1fr, 1fr),
|
||||
align(left, emph(hydra(1))),
|
||||
align(right, emph(hydra(2))
|
||||
))]
|
||||
if hydra(1) != none {
|
||||
line(length: 100%, stroke: 0.5pt, start: (0%, -.8em))
|
||||
}
|
||||
})
|
||||
```
|
||||
- Dieser Header ist ähnlich zum Style `scrheadings` von `scrlayer-scrpage` in #LaTeX
|
||||
]
|
||||
27
chapters/graphics-floats.typ
Normal file
27
chapters/graphics-floats.typ
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Abbildungen und Gleitobjekte
|
||||
|
||||
#slide(title: [Abbildungen und Graphiken])[
|
||||
- Einbinden mit `#image("/path/to/file")` (mit Dateiendung)
|
||||
- Dateipfad mit `/` am Anfang: vom Projektverzeichnis aus
|
||||
- ohne `/`: vom Verzeichnis der aktuellen Datei aus
|
||||
- folgende Formate sind möglich: `png`, `jpg`, `gif`, `svg`, `pdf`, `webp`
|
||||
#v(1em)
|
||||
- Höhe und Breite optionale Parameter
|
||||
- Standard ist `auto`, das Bild wird an den zur Verfügung stehenden Platz angepasst
|
||||
- kann auch relativ angegeben werden
|
||||
- `#image("/path/to/file", width: 80%)`
|
||||
]
|
||||
|
||||
#slide(title: [Graphiken als Gleitobjekt])[
|
||||
#show-code-render("image-float.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Gleitobjekte])[
|
||||
- können für Graphiken, Tabellen, Codelistings, etc. verwendet werden
|
||||
- immer mit `#figure()` eingeleitet
|
||||
- der `body` ist dann unterschiedlich
|
||||
- automatische Positionierung im Text
|
||||
- Platzierungsalgorithmus nicht ganz so gut wie in #LaTeX
|
||||
]
|
||||
17
chapters/introduction.typ
Normal file
17
chapters/introduction.typ
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
#slide(title: "Wer seid ihr?")[
|
||||
- Name
|
||||
- Fakultät? Was macht ihr da?
|
||||
- Schon von typst gehört oder etwas damit gemacht?
|
||||
- Schon #LaTeX genutzt?
|
||||
- Nächste (wissenschaftliche) Arbeit, die du vielleicht mit typst schreiben möchtest?
|
||||
]
|
||||
|
||||
#slide(title: "Materialien für den Kurs")[
|
||||
- Dieser Foliensatz
|
||||
- Kleine Vorlagen zum Mitmachen
|
||||
- Dokumente, die wir im Laufe des Kurses erstellen
|
||||
#v(1em)
|
||||
- wird alles im geteilten Ordner hochgeladen
|
||||
]
|
||||
67
chapters/listings.typ
Normal file
67
chapters/listings.typ
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
== Codelistings
|
||||
|
||||
#slide(title: [Codelistings])[
|
||||
- Abdrucken von Codezeilen
|
||||
- einfaches Syntaxhighlighting
|
||||
- nativ unterstützt
|
||||
- Paket #link("https://typst.app/universe/package/codly")[codly] für mehr Anpassungsmöglichkeiten und Zeilennummern
|
||||
]
|
||||
|
||||
#slide(title: [Native Codelistings])[
|
||||
#show-code-render("native-listings.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Einbinden von Beispielen aus externen Dateien])[
|
||||
- `lang` _muss_ explizit gesetzt werden, auch wenn die Dateiendung Teil des Pfades ist
|
||||
```typ
|
||||
#raw(read("/path/to/file"), lang: "<language>", block: true)
|
||||
```
|
||||
- `#read()` ließt Inhalt der Datei ein
|
||||
- `#raw()` für Listingdarstellung
|
||||
]
|
||||
|
||||
#slide(title: [Plugin codly])[
|
||||
- #link("https://typst.app/universe/package/codly")[codly] bietet viele weitergehende Features
|
||||
- Einrückung
|
||||
- Zeilennummern
|
||||
- Zebrastreifen
|
||||
- Einrichtung:
|
||||
```typ
|
||||
#import "@preview/codly:1.3.0": *
|
||||
#import "@preview/codly-languages:0.1.1": *
|
||||
#show: codly-init.with()
|
||||
#codly(languages: codly-languages)
|
||||
```
|
||||
|
||||
- danach werden Codeblöcke automatisch durch codly formatiert
|
||||
- tiefgehende #link("https://raw.githubusercontent.com/Dherse/codly/main/docs.pdf")[Dokumentation]
|
||||
]
|
||||
|
||||
#codly-enable()
|
||||
|
||||
#slide(title: [codly -- Beispiel])[
|
||||
```java
|
||||
public static void main(String[] args) {
|
||||
System.out.println("Hello Cyberweek");
|
||||
}
|
||||
```
|
||||
|
||||
- codly ist stark konfigurierbar
|
||||
- jedes Verhalten und Feature kann deaktiviert oder angepasst werden
|
||||
]
|
||||
|
||||
#slide(title: [codly -- In `figure`])[
|
||||
#show-code-render("codly-figure.typ")
|
||||
]
|
||||
|
||||
#slide(title: [codly -- Highlights])[
|
||||
#show-code-render("codly-highlights.typ")
|
||||
]
|
||||
|
||||
#slide(title: [codly -- Highlights referenzieren])[
|
||||
#show-code-render("codly-highlights-reference.typ")
|
||||
]
|
||||
|
||||
#codly-disable()
|
||||
110
chapters/listofs.typ
Normal file
110
chapters/listofs.typ
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
== Weitere Verzeichnisse
|
||||
|
||||
#slide(title: "Weitere Verzeichnisse")[
|
||||
- automatisch aktualisierendes Inhaltsverzeichnis sowie Verzeichnisse für
|
||||
- Abbildungen (`kind: image`)
|
||||
- Codelistings (`kind: raw`)
|
||||
- (Glossar (Paket #link("https://typst.app/universe/package/glossarium")[glossarium])
|
||||
- Abkürzungen (entweder auch glossarium oder Paket #link("https://typst.app/universe/package/acrostiche")[acrostiche])
|
||||
- ...)
|
||||
- alles mit der Funktion `#outline()`
|
||||
- Ausnahme: Literaturverzeichnis
|
||||
|
||||
```typ
|
||||
#outline()
|
||||
|
||||
#outline(target: figure.where(kind: image))
|
||||
```
|
||||
]
|
||||
|
||||
= Literatureinbindung
|
||||
|
||||
#slide(title: "Literaturverzeichnis")[
|
||||
- Erstellen/Generieren von Literaturdateien
|
||||
- `.bib`, häufig Bib#(TeX)--Format genannt
|
||||
- `.yaml`, das typst--eigene Hayagriva--Format
|
||||
- Hinzufügen von Literaturdateien (`.bib` oder `.yaml`)
|
||||
- Zitieren von Literatur im Text `@citekey` oder `#cite(<citekey>)`
|
||||
- Literaturverzeichnis (`#bibliography("file")`)
|
||||
]
|
||||
|
||||
#slide(title: "Literaturdatei")[
|
||||
- Jeder Eintrag hat einen eindeutigen Key, unter dem er im Text referenziert wird
|
||||
- Literatur kann durch verschiedene Typen kategorisiert werden, u.a.
|
||||
- article
|
||||
- book
|
||||
- inproceedings
|
||||
- online
|
||||
- thesis
|
||||
- ...
|
||||
- Jeder Literatureintrag hat verschiedene Attribute
|
||||
- Titel
|
||||
- Autor:innen
|
||||
- Jahr
|
||||
- ...
|
||||
]
|
||||
|
||||
#slide(title: "Literaturdatei -- Formate")[
|
||||
- typst unterstützt neben dem gängigen Bib#(TeX)--Format auch das eigene Hayagriva--Format, das die YAML--Syntax nutzt
|
||||
- Hayagriva ist eine Eigenentwicklung vom typst--Team
|
||||
- von Literaturverwaltungen nicht sonderlich unterstützt
|
||||
- von Verlagen selten angeboten
|
||||
- hat aber interessante Ideen
|
||||
]
|
||||
|
||||
#slide(title: "Literaturdatei -- Formate")[
|
||||
#columns(2)[
|
||||
#raw(lang: "bib", read("/codebeispiele/bib-file.bib"))
|
||||
#colbreak()
|
||||
#raw(lang: "yaml", read("/codebeispiele/hayagriva-file.yaml"))
|
||||
]
|
||||
]
|
||||
|
||||
#slide(title: "Quellen für Literaturdateien")[
|
||||
- Literatursuchmaschinen
|
||||
#only("1")[#align(center, image(width: 80%, "/images/boss.png"))]
|
||||
#only("2")[#align(center, image(width: 65%, "/images/blb.png"))]
|
||||
#only("3-")[- Verlage]
|
||||
#only("4")[#align(center, image(width: 50%, "/images/springer.png"))]
|
||||
#only("5")[#align(center, image(width: 75%, "/images/pearson.png"))]
|
||||
]
|
||||
|
||||
== Exkurs: Literaturverwaltung
|
||||
|
||||
#slide(title: "Exkurs: Literaturverwaltung")[
|
||||
#only("1")[#align(center, image(width: 90%, "/images/bibliothek.png"))]
|
||||
#only("2-")[
|
||||
- Verschiedene Programme zur Literaturverwaltung verfügbar
|
||||
- #link("https://zotero.org/")[Zotero] (Open--Source, Crossplattform)
|
||||
- #link("https://lumivero.com/products/citavi/")[Citavi] (Keine Hochschullizenz mehr in Baden-Württemberg)
|
||||
- #link("https://www.mendeley.com")[Mendeley]
|
||||
- bieten Integrationen in WYSIWYG--Editoren
|
||||
- können auch nach Bib#(TeX) exportieren
|
||||
]
|
||||
]
|
||||
|
||||
#slide(title: "Exkurs: Literaturverwaltung -- Zotero")[
|
||||
- guter automatischer Export mit #link("https://retorque.re/zotero-better-bibtex/")[Better Bib#(TeX) for Zotero]
|
||||
- generiert automatisch Bib#(TeX) mit allen Literatureinträgen einer Sammlung
|
||||
- hält Datei bei Änderungen oder neu hinzugefügten Dateien aktuell
|
||||
#v(1em)
|
||||
- einfach neue Literatur in Zotero einfügen mit #link("https://www.zotero.org/download/connectors")[Zotero Connector]
|
||||
]
|
||||
|
||||
#slide(title: "Literatur -- Meine Empfehlungen")[
|
||||
- Verschiedene Literaturarten (Bücher, Paper, Thesen, Webseiten) in verschiedenen Untersammlungen verwalten
|
||||
- pro Untersammlung ein automatischer Bib#(LaTeX)--Export
|
||||
- Bib#(TeX)--Dateien in einen eigenen Unterordner
|
||||
]
|
||||
|
||||
#slide(title: "Einbinden der Literatur in das Dokument und Zitieren")[
|
||||
#raw(lang: "typ", read("/codebeispiele/bibliography.typ"))
|
||||
]
|
||||
|
||||
#slide(title: "Zitieren und Erscheinen im Literaturverzeichnis")[
|
||||
- Standardmäßig wird nur Literatur im Literaturverzeichnis ausgegeben, die auch im Text zitiert wurde
|
||||
- `#cite(<citekey>, form: none)` fügt ein unzitiertes Werk ins Literaturverzeichnis ein
|
||||
- `#bibliography("file", full: true)` zeigt alle Werke im Literaturverzeichnis an
|
||||
]
|
||||
38
chapters/math.typ
Normal file
38
chapters/math.typ
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
== Mathematik
|
||||
|
||||
#slide(title: "Mathematik")[
|
||||
- typst nutzt eine andere Mathematiksyntax als #LaTeX
|
||||
- Exponenten und Indizes gleich
|
||||
- Symbole, Klammern und Funktionen werden anders gesetzt
|
||||
- es gibt aber ein Kompatibilitätsplugin: #link("https://typst.app/universe/package/mitex")[mitex]
|
||||
- Mathemodus wird immer mit `$` begonnen und beendet
|
||||
- wird als Block gesetzt, wenn die Formel mit einem Leerzeichen beginnt und endet
|
||||
]
|
||||
|
||||
#slide(title: [Mathematik -- inline])[
|
||||
- setzt die Gleichung in eine Fließtext ein
|
||||
- keine Referenzierung
|
||||
#show-code-render("math-inline.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Mathematik -- block])[
|
||||
- setzt die Gleichung als Block mit Absätzen
|
||||
- Leerzeichen oder Zeilenumbruch nach erstem `$` und vor letzem `$`
|
||||
- standardmäßig keine Referenzierung
|
||||
#show-code-render("math-block.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Mathematik -- Gleichung])[
|
||||
- Um Gleichungen referenzieren zu können, müssen diese nummeriert sein
|
||||
- Nummerierung entweder pro Gleichung aktivieren
|
||||
#show-code-render("math-numbered.typ")
|
||||
- oder global aktivieren
|
||||
`#set math.equation(numbering: "(1)")`
|
||||
]
|
||||
|
||||
#slide(title: [Mathematik -- Zeichen])[
|
||||
#show-code-render("math-symbols.typ")
|
||||
#align(center)[Die Größe der Klammern wird automatisch angepasst.]
|
||||
]
|
||||
22
chapters/own-changes.typ
Normal file
22
chapters/own-changes.typ
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Direkt ausprobieren und mitmachen
|
||||
|
||||
#slide(title: "Projekt kompilieren")[
|
||||
- Im Projektverzeichnis `typst compile file.typ`
|
||||
|
||||
- oder inkrementell `typst watch file.typ`
|
||||
- in Typesetter Vorschau aktivieren
|
||||
- mit Docker
|
||||
- Outputfile `file.pdf` als PDF-Datei im gleichen Verzeichnis
|
||||
]
|
||||
|
||||
#slide(title: "Erste eigene Änderungen")[
|
||||
- Eigener Text, Absätze
|
||||
- Textformatierung: *fett* und _kursiv_ mit `*fett*` und `_kursiv_`
|
||||
- Eigene Abschnitte mit Überschriften (`=`, `==`)
|
||||
- Metadaten ändern
|
||||
- Titel des Dokuments ändern mit `title:`
|
||||
- Eigener Name als Autor mit `author:`
|
||||
- Anzeigen des Titels mit `#title()`
|
||||
]
|
||||
44
chapters/tables.typ
Normal file
44
chapters/tables.typ
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Tabellen
|
||||
|
||||
#slide(title: [Setzen von Tabellen])[
|
||||
- Tabellen werden mithilfe der Funktion `#table` gesetzt
|
||||
- Jede Tabellenzeile ist ein eigener Inhaltsblock
|
||||
- kann dementsprechend formatiert werden
|
||||
- Anzahl der Spalten wird als Parameter festgelegt
|
||||
]
|
||||
|
||||
#slide(title: [Beispieltabelle])[
|
||||
#show-code-render("example-table.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Spaltenbreite])[
|
||||
- `auto`: Standard und versucht bestmögliche Verteilung
|
||||
- absolute Längen
|
||||
- Verhältnis der Gesamttabelle in `%`
|
||||
- Anteil an verfügbarem Platz
|
||||
]
|
||||
|
||||
#slide(title: [Spaltenbreite --- Verhältnis der Gesamttabelle])[
|
||||
- Spalten können so maximal 100 % der Tabellenbreite einnehmen
|
||||
- Durch `gutter` können aber weitere Abstände hinzukommen
|
||||
- Tabelle nimmt mehr als 100 % ihres Platzes ein
|
||||
]
|
||||
|
||||
#slide(title: [Spaltenbreite --- Anteil an verfügbarem Platz])[
|
||||
- Summe aller Werte mit Einheit `fr`
|
||||
- Verteilt all diese Spalten entsprechend des Verhältnisses
|
||||
#show-code-render("table-fr.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Alternierende Zeilenfarbe])[
|
||||
#show-code-render("table-alternate-row-color.typ")
|
||||
]
|
||||
|
||||
#slide(title: [Tabelle über mehrere Seiten])[
|
||||
- `block`, der Tabelle umschließt muss `breakable` gemacht werden
|
||||
```
|
||||
#show figure: set block(breakable: true)
|
||||
```
|
||||
]
|
||||
31
chapters/typst-code.typ
Normal file
31
chapters/typst-code.typ
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
#slide(title: "Wie sieht typst Code aus?")[
|
||||
#raw(lang: "typ", read("/codebeispiele/beispiel.typ"))
|
||||
]
|
||||
|
||||
#slide(title: "Grundlegender Aufbau")[
|
||||
- Keine Präambel wie in #LaTeX
|
||||
|
||||
- Einstellungen für das gesamte Dokument und eingebundene Pakete trotzdem am Anfang des Dokuments
|
||||
- Einstellungen können später im Dokument geändert werden
|
||||
- Einstellungen können auch lokal überschrieben werden
|
||||
- Zusätzliche Pakete
|
||||
- Preview von vielen Paketen, die von der Community entwickelt werden
|
||||
- werden im Repository gehostet und bei Bedarf heruntergeladen
|
||||
- keine Distributionen wie bei #LaTeX
|
||||
]
|
||||
|
||||
#slide(title: "Modi")[
|
||||
- typst kennt drei Modi
|
||||
- Markupmodus
|
||||
- Mathemodus
|
||||
- Programmiermodus
|
||||
- Schreibmodus ist der normale Modus
|
||||
- Text wird gesetzt
|
||||
- aus Programmiermodus als Inhaltsblock `[]`
|
||||
- Mathemodus ermöglicht das Setzen von Formeln
|
||||
- eingeleitet mit `$`
|
||||
- Programmiermodus für Konfiguration oder eigene Funktionalität
|
||||
- eingeleitet mit `#`
|
||||
]
|
||||
18
chapters/what-is-needed.typ
Normal file
18
chapters/what-is-needed.typ
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
#slide(title: "Bevor wir beginnen: Was brauche ich?")[
|
||||
- typst Installation
|
||||
- Windows: https://typst.app/open-source/#download
|
||||
- Mac: Homebrew `typst`
|
||||
- Linux: Installation über den Paketmanager
|
||||
- deb: nicht paketiert, rpm: `copr/claaj/typst`
|
||||
- Arch Linux: `typst`
|
||||
- NixOS: `nixpkgs.typst`
|
||||
- Docker: `ghcr.io/typst/typst`
|
||||
- Texteditor
|
||||
- #link("https://code.visualstudio.com/")[VSCode] mit #link("https://marketplace.visualstudio.com/items?itemName=myriad-dreamin.tinymist")[Tinymist], #link("https://neovim.io/")[neovim] mit #link("https://github.com/Myriad-Dreamin/tinymist/blob/main/editors/neovim/README.md")[Tinymist]
|
||||
- #link("https://typesetter.trowell.net/")[Typesetter]
|
||||
- Online-Editoren
|
||||
- #link("https://typst.app/")[Online-Editor], Registrierung erforderlich
|
||||
- #link("https://typst.app/play/")[Playground]
|
||||
]
|
||||
35
chapters/what-is-typst.typ
Normal file
35
chapters/what-is-typst.typ
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= typst -- die Theorie
|
||||
|
||||
#slide(title: "Was ist typst?")[
|
||||
- Textsatzsystem
|
||||
- moderne Entwicklung als Konkurrenz zu #LaTeX
|
||||
- Preview Dezember 2022 gestartet
|
||||
- seit März 2023 Open Source
|
||||
- viele Entwicklungen
|
||||
- Noch nicht komplett stabil -- es gibt Änderungen in neuen Versionen, die manchmal nicht abwärtskompatibel sind
|
||||
#v(1em)
|
||||
- setzt vorgegebenen Text und weitere Anweisungen automatisch und versucht dabei bestmögliches Layout
|
||||
- hat einfacherere Programmiermöglichkeiten als #LaTeX
|
||||
]
|
||||
|
||||
#slide(title: "Warum typst?")[
|
||||
#columns(2)[
|
||||
=== Warum typst?
|
||||
- Automatisch Textsatz, Referenzen, Layout
|
||||
- Keine große Layoutarbeit am Ende
|
||||
- Kein Ruinieren des Dokuments beim Verschieben eines Bildes
|
||||
- Das Dokument "sieht einfach schön aus"
|
||||
#v(1em)
|
||||
- Als Bibliothek in Softwareprogrammen einsetzbar
|
||||
- inkrementelles Kompilieren, ohne doppelte Durchläufe
|
||||
#colbreak()
|
||||
=== Warum (noch) kein typst?
|
||||
- Neue Versionen nicht komplett abwärtskompatibel
|
||||
- Vorlagen für #LaTeX vorgegeben
|
||||
- Unbekannter
|
||||
]
|
||||
#v(1em)
|
||||
#align(center)[Mit typst ist das Layouten von Arbeiten deutlich einfacher.]
|
||||
]
|
||||
51
chapters/writing-text.typ
Normal file
51
chapters/writing-text.typ
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
#import "/globals.typ": *
|
||||
|
||||
= Text, Inhalt und Struktur
|
||||
|
||||
#slide(title: "Funktionen")[
|
||||
- ermöglichen besondere Formatierung oder lokales Überschreiben von Einstellungen
|
||||
- werden mit `#` eingeleitet
|
||||
- im Programmiermodus können weitere Funktionen ohne `#` begonnen werden
|
||||
- Parameter können positioniert oder benannt sein
|
||||
- Inhalt wird nach den Parametern in `[]` angegeben
|
||||
- besteht der Inhalt aus einem weiteren Funktionsaufruf, kann dieser auch als Argument übergeben werden
|
||||
#show-code-render("functions.typ")
|
||||
]
|
||||
|
||||
#slide(title: "Anführungszeichen")[
|
||||
- Werden je nach ausgewählter Sprache richtig gesetzt
|
||||
#show-code-render("quotations.typ")
|
||||
]
|
||||
|
||||
#slide(title: "Wichtige besondere Zeichen")[
|
||||
#table(
|
||||
columns: (auto, auto, auto),
|
||||
align: center,
|
||||
[Schrägstrich], [\\], [`\\`],
|
||||
[geschütztes Leerzeichen (ohne Zeilenumbruch)], [~], [\~],
|
||||
[schmales geschütztes Leerzeichen], [z.#(sym.space.nobreak.narrow)B.], [`z.#(sym.space.nobreak.narrow)B.`],
|
||||
[Tilde], [\~], [`\~`],
|
||||
[Gedankenstrich (Halbgeviertstrich)], [--], [`--`],
|
||||
[Geviertstrich], [---], [`---`],
|
||||
)
|
||||
]
|
||||
|
||||
== Verweise
|
||||
|
||||
#slide(title: [Verweise -- Was wollen wir?])[
|
||||
- Referenzieren von Abbildungen, Tabellen, Codezeilen, etc.
|
||||
- automatische Nummerierung
|
||||
- kein manuelles Nummerieren, Aktualisieren und Überprüfen
|
||||
- automatische Verzeichnisse
|
||||
- anklickbarer Link
|
||||
]
|
||||
|
||||
#slide(title: "Verweise")[
|
||||
- Label setzen: `<labelname>`
|
||||
- Referenzieren: `@labelname`
|
||||
- Typ des referenzierten Objekts wird in der Textsprache mitgenannt (Abbildung, Gleichung, ...)
|
||||
- Seite referenzieren: `#ref(<labelname>, form: "page")`
|
||||
- Referenz nutzt immer aktuellste Abschnittnummer bzw. Seitenzahl – ohne weiteren Aufwand
|
||||
- Daten sind immer aktuell, keine doppelten Kompilierungsdurchläufe notwendig
|
||||
- Verweis ist ein Link, der direkt auf das referenzierte Objekt führt
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue