Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • v.mattfeld/fg-website
1 result
Show changes
Commits on Source (377)
Showing
with 3104 additions and 1 deletion
/output
/docs-output
/public
/content
/pandoc-*
/venv
__pycache__
*.swp
image: ubuntu:focal
variables:
DEBIAN_FRONTEND: noninteractive
GIT_SUBMODULE_STRATEGY: recursive
CHECKOUT_BRANCH: main
stages:
- build
- deploy
site:
stage: build
rules:
- if: $UPSTREAM_BRANCH
variables:
CHECKOUT_BRANCH: $UPSTREAM_BRANCH
- when: on_success
before_script:
- apt-get update && apt-get install -y --no-install-recommends python3-pip python3 python3-venv make git wget software-properties-common
- pip3 install -r requirements.txt
- "echo \"CHECKOUT_BRANCH: $CHECKOUT_BRANCH UPSTREAM_BRANCH: $UPSTREAM_BRANCH\""
- git clone https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data.git content --branch $CHECKOUT_BRANCH
script:
- make publish
artifacts:
paths:
- "./output/"
docs:
stage: build
before_script:
- apt-get update && apt-get install -y --no-install-recommends python3-pip python3 python3-venv make git wget software-properties-common
- pip3 install -r requirements.txt
script:
- make docs
artifacts:
paths:
- "./docs-output/"
rules:
- when: on_success
pages:
stage: deploy
needs: [ "site", "docs" ]
script:
- mkdir -p ./public
- cp -v ./index.html ./public/
- mv -v ./output/ ./public/
- mv -v ./docs-output/ ./public/
artifacts:
paths:
- "./public/"
rules:
- when: on_success
environment:
name: staging
deploy:
stage: deploy
needs: [ "site" ]
before_script:
- "echo \"CHECKOUT_BRANCH: $CHECKOUT_BRANCH UPSTREAM_BRANCH: $UPSTREAM_BRANCH\""
# see https://filipsjanis.com/articles/scp-upload-files-gitlab-ci.html
# the following script is taken from https://docs.gitlab.com/ee/ci/ssh_keys/README.html
- 'DEBIAN_FRONTEND=noninteractive apt-get update -y'
- 'DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends openssh-client'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
script:
- scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -r ./output/** $USERNAME@$HOST:/home/gitlab/public/
rules:
- if: $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
when: never
- if: $UPSTREAM_BRANCH && $UPSTREAM_BRANCH != "main"
when: never
- when: on_success
environment:
name: production
#when: manual
[submodule "mathjax"]
path = mathjax
url = https://github.com/mathjax/MathJax.git
.PHONY: html
html: docs build
.PHONY: publish
publish: build
.PHONY: build
build: venv/bin/activate pandoc mathjax
. venv/bin/activate && cd fgs && python3 __main__.py "../content" "../output" "../theme" "../config.json" "../lang.json"
.PHONY: docs
docs: venv/bin/activate pandoc mathjax
. venv/bin/activate && cd fgs && python3 __main__.py "../docs" "../docs-output" "../theme" "../config.json" "../lang.json"
.PHONY: mathjax
mathjax:
git submodule init
git submodule update
[ ! -d output/mathjax ] && mkdir -p output && cp -vr mathjax/es5 output/mathjax || true
.PHONY: devserver
devserver: venv/bin/activate
. venv/bin/activate && python3 -m http.server 8000
.PHONY: clean
clean:
$(RM) -r venv output
.PHONY: pandoc
pandoc: pandoc-2.18
ln -svf pandoc-2.18 pandoc
pandoc-2.18:
[ ! -x pandoc-2.18/bin/pandoc ] \
&& wget https://github.com/jgm/pandoc/releases/download/2.18/pandoc-2.18-linux-amd64.tar.gz -O pandoc.tar.gz \
&& tar xzvf pandoc.tar.gz \
&& rm -v pandoc.tar.gz \
|| true
[ -x pandoc-2.18/bin/pandoc ]
venv/bin/activate: requirements.txt
python3 -m venv venv
. venv/bin/activate && pip3 install -r requirements.txt
fg-website
# Metarepo für die Fachgruppenwebseite
[![meta pipeline status](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/badges/master/pipeline.svg)](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/-/commits/master)
[![pipeline status](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data/badges/main/pipeline.svg)](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data/-/commits/main)
Webseite: https://fg.informatik.uni-goettingen.de/
Inhaltsrepo: https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data
[TOC]
## Was ist in diesem Repo?
Dieses Repo beschreibt wie die Fachgruppenwebseite gebaut wird und baut diese auch.
Den eigentlichen Inhalt findest du im [Inhaltsrepo](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data).
## Seite Lokal Hosten
Um an der Seite zu arbeiten ist es meistens sinnvoll diese auch lokal zu hosten.
### Setup
Die folgenden Befehle sind für Ubuntu 20.04 LTS (Focal) gedacht.
1. Pakete installieren: `apt-get update && apt-get install -y --no-install-recommends python3-pip python3 python3-venv make git wget software-properties-common`
1. Metarepo klonen: `git clone git@gitlab.gwdg.de:GAUMI-fginfo/fg-website.git`
1. `cd fg-website`
1. Inhaltsrepo klonen: `git clone git@gitlab.gwdg.de:GAUMI-fginfo/fg-website-data.git content`
### (Automatisch) Bauen und Hosten
Die Seite kann nun relativ einfach mit `make` gebaut werden.
Dabei wird die [config.json](config.json) Datei als Config verwendet.
Die Ausgabe befindet sich im `output` Ordner.
Um die Seite lokal zu hosten kann `make devserver` verwendet werden.
Die Seite kann man dann unter [http://127.0.0.1:8000](http://127.0.0.1:8000) finden.
Die Seite wird **nicht** automatisch neu gebaut. Man muss also `make` manuell ausführen um die Seite neuzubauen.
{
"relative_urls": true,
"homepage": { "page": "index" },
"theme": {
"default_tag_color": "#DDDDDD",
"static_dir": "theme",
"css_file": "main.css",
"default_template": "page.html",
"footer": [],
"global_before": [],
"global_after": []
},
"link_target": {
"internal": "_self",
"external": "_blank"
},
"default_status": "published",
"gitlab": {
"edit_url": {
"prefix": "<Insert GitLab link prefix here>",
"suffix": ""
},
"view_url": {
"prefix": "<Insert GitLab link prefix here>",
"suffix": "?plain=1"
},
"history_url": {
"prefix": "<Insert GitLab link prefix here>",
"suffix": ""
}
},
"pandoc": {
"mimetypes": {
"text/markdown": {
"base": "markdown",
"extensions": [
"+abbreviations",
"+all_symbols_escapable",
"+ascii_identifiers",
"+auto_identifiers",
"+autolink_bare_uris",
"+backtick_code_blocks",
"+bracketed_spans",
"+definition_lists",
"+emoji",
"+escaped_line_breaks",
"+example_lists",
"+fancy_lists",
"+fenced_code_attributes",
"+fenced_code_blocks",
"+fenced_divs",
"+footnotes",
"+gfm_auto_identifiers",
"+grid_tables",
"+hard_line_breaks",
"+header_attributes",
"+implicit_figures",
"+implicit_header_references",
"+inline_code_attributes",
"+inline_notes",
"+intraword_underscores",
"+latex_macros",
"+line_blocks",
"+link_attributes",
"+lists_without_preceding_blankline",
"+multiline_tables",
"+native_divs",
"+native_spans",
"+pipe_tables",
"+raw_attribute",
"+raw_html",
"+raw_tex",
"+shortcut_reference_links",
"+simple_tables",
"+smart",
"+space_in_atx_header",
"+startnum",
"+strikeout",
"+subscript",
"+superscript",
"+table_captions",
"+tex_math_dollars",
"+tex_math_single_backslash",
"+yaml_metadata_block",
"-angle_brackets_escapable",
"-blank_before_blockquote",
"-blank_before_header",
"-citations",
"-compact_definition_lists",
"-east_asian_line_breaks",
"-four_space_rule",
"-ignore_line_breaks",
"-literate_haskell",
"-markdown_attribute",
"-markdown_in_html_blocks",
"-mmd_header_identifiers",
"-mmd_link_attributes",
"-mmd_title_block",
"-old_dashes",
"-pandoc_title_block",
"-spaced_reference_links",
"-tex_math_double_backslash"
]
},
"text/x-tex": {
"base": "latex"
},
"application/x-tex": {
"base": "latex"
}
},
"extensions": [
"+ascii_identifiers",
"+auto_identifiers",
"+gfm_auto_identifiers",
"+latex_macros",
"+raw_tex",
"+smart",
"-east_asian_line_breaks",
"-literate_haskell"
]
}
}
.PHONY: run
run:
make -C .. docs
---
title: "Konfiguration"
tags: content
---
:::warning
TODO
:::
## Menüleiste & Startseite anpassen
Die Menüleiste und die Startseite werden über die [config.json](config.json) Datei konfiguriert.
Die Menüleiste kann (derzeitig nur) auf Kategorien und Artikel/Seiten verlinken. Um auf eine Seite in der Menüleiste zu verlinken, muss diese im Markdown Header, muss diese im Markdown Header den `slug` Wert gesetzt haben.
{
"menuitems": [
{ "link": "tag:content" },
{ "link": "tag:admin" },
{ "link": "tag:internal" }
],
"gitlab": {
"edit_url": {
"prefix": "https://gitlab.gwdg.de/-/ide/project/GAUMI-fginfo/fg-website/edit/master/-/docs/"
},
"view_url": {
"prefix": "https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/-/blob/master/docs/"
},
"history_url": {
"prefix": "https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/-/commits/master/docs/"
}
},
"lang": {
"supported": ["de"],
"de": {
"sitename": "Dokumentation Fachgruppenwebseite",
"banner": {
"title": "Startseite Dokumentation Fachgruppenwebseite"
},
"atom": {
"title": "Dokumentation Fachgruppenwebseite Atom Feed"
}
}
}
}
---
title: "Seite erstellen"
prio: 2
---
:::warning
TODO
:::
---
title: "Dateien, Kategorien & Ordnerstruktur"
prio: 2
---
:::info
Im [Inhaltsrepo](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data) liegen die Inhalte für die Fachgruppenwebseite.
Auf dieser Seite findest du alle Informationen über die Struktur vom Inhaltsrepo.
:::
Für die Konfiguration gibt es die [config.json Datei](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data/-/blob/main/config.json), worüber z.B. das Seitenmenü konfiguriert werden kann. Für weitere Informationen zur Konfiguration und was alles in diese Datei kann, siehe [hier](slug:config).
Ordner und Dateien die mit `.` anfangen werden beim Generieren der Webseite ignoriert.
:::danger
Alle Dateinamen im Inhaltsrepo müssen eindeutig sein!
Heißt es darf nicht zwei Dateien mit gleichem Namen in unterschiedlichen Ordnern geben.
Falls Dateien mit gleichem Namen existieren, kann die Webseite nicht gebaut werden.
(Außerdem darf es auch keine Dateien mit dem gleichen Namen einer Datei aus dem [statischen Teil des Themes](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/-/tree/master/theme/static) geben.)
:::
## Inhaltsdateien
Inhaltsdateien sind die Dateien aus denen die einzelnen Seiten mit Inhalt generiert werden.
Diese Dateien sind häufig [Markdown](slug:mdsyntax)dateien und folgen häufig dem Namensschema `<slug>.<lang>.md` (z.B. `imprint.de.md`).
Sie können entweder im Stammverzeichnis vom Inhaltsrepo liegen, oder in einem Unterordner(einer [Kategorie](#Kategorien)).
Weitere Informationen zum Erstellen und Schreiben von Inhaltsdateien findest du [hier](slug:createpage).
## Kategorien
Alle sonstigen Ordner repräsentiern eine Kategorie. Kategorien werden in der [config.json](config.json) Datei konfiguriert.
Dateien die in gar keinem Ordner abgelegt werden (also z.B. diese [README.md](README.md)), werden implizit in die `misc` Kategorie getan.
This diff is collapsed.
---
title: "Markdown Syntax"
prio: 4
---
:::info
Die Markdown Syntax baut auf der [Markdown Syntax von Pandoc](https://pandoc.org/MANUAL.html#pandocs-markdown) auf. Es sind einige Extensions aktiviert, um die Syntax möglichst ähnlich zur [Hedgedoc Markdown Syntax](https://pad.gwdg.de/features) zu machen.
Die vollständige Markdown Syntax die verwendet werden kann ist also sehr umfangreich. Dieses Dokument *sollte* alle Features und Schreibweisen aufzeigen.
:::
Markdowncodebeispiele zusammen mit den entsprechenden Ergebnissen die generiert wurden sehen in diesem Dokument wie folgt aus:
```markdown
Ich bin ein *Markdown* Beispiel.
```
:::success
Ich bin ein *Markdown* Beispiel.
:::
## Inhaltsverzeichnis
Ein Paragraph mit einzigem Inhalt `[TOC]` generiert ein Inhaltsverzeichnis.
```markdown
[TOC]
```
:::success
[TOC]
:::
## Paragraphen
Ein Paragraph besteht aus einer oder mehr Zeilen an Text gefolgt von einer oder mehreren Leerzeilen.
Ein Zeilenumbruch in einem Paragraphen wird, wie in Hedgedoc auch, direkt auf der Webseite als Zeilenumbruch übernommen.
```markdown
Dies ist der erste Paragraph.
Dies ist der zweite Paragraph und dieser Paragraph
beinhaltet sogar einen Zeilenumbruch.
```
:::success
Dies ist der erste Paragraph.
Dies ist der zweite Paragraph und dieser Paragraph
beinhaltet sogar einen Zeilenumbruch.
:::
## Überschriften
Überschriften werden genutzt um ein Dokument zu strukturieren.
Es gibt zwei Arten Überschriften zu schreiben: [Setext](#setext) und [ATX](#atx).
In Überschriften kann [Inlinemarkup](#inlinemarkup) verwendet werden.
Eine Leerzeile vor oder nach einer Überschrift ist nicht notwendig.
### Nutzungsinformationen
- Jede Seite wird automatisch mit einer Level 1 Überschrift aus dem Titel generiert.
Entsprechend sollten die meisten Dokumente nur Level 2-6 Überschriften verwenden!
- Überschriften haben semantische Bedeutung welche von Browsern, Bots und Screenreadern interpretiert und verwendet wird.
Überschriften sollten deshalb _niemals_ verwendet werden um Text einfach nur **fettgedruckt** oder in einer bestimmten Schriftgröße zu schreiben weil es ja "gut aussehen würde".
- Es sollte vermieden werden Überschriftenlevel zu überspringen. Siehe [hier](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements#navigation) für eine Erklärung.
### Setext
Setext-Style Überschriften bestehen jeweils aus einer Zeile mit dem Überschriftstext gefolgt von einer Zeile mit `=`-Symbolen (für eine Level 1 Überschrift) oder `-`-Symbolen (für eine Level 2 Überschrift).
```markdown
Eine Level 1 Überschrift
========================
Eine Level 2 Überschrift
------------------------
```
:::success
Eine Level 1 Überschrift
========================
Eine Level 2 Überschrift
------------------------
:::
### ATX
ATX-Style Überschriften bestehen jeweils aus einer Zeile mit ein bis sechs `#`-Symbolen gefolgt von mindestens einem Leerzeichen, dem jeweiligen Überschriftstext und einer optionalen Menge an weiteren `#`-Symbolen.
Die Anzahl der `#`-Symbole am Anfang der Zeile gibt das Level an.
```markdown
# Eine Level 1 Überschrift
## Eine Level 2 Überschrift
### Eine Level 3 Überschrift ###
#### Eine Level 4 Überschrift
##### Eine Level 5 Überschrift
###### Eine Level 6 Überschrift
```
:::success
# Eine Level 1 Überschrift
## Eine Level 2 Überschrift
### Eine Level 3 Überschrift ###
#### Eine Level 4 Überschrift
##### Eine Level 5 Überschrift
###### Eine Level 6 Überschrift
:::
### Identifikator, Attribute und Klassen
Am Ende der Zeile mit dem Überschriftentext kann man auch optionale Metadaten hinzugefügen.
Dafür schreibt man leerzeichengetrennt in geschweiften Klammern die folgenden Dinge:
- den Identifikator: `#Identifikator` (maximal einmal)
- die Klassen: `.eine-klasse .eine-andere-klasse .noch-eine-klasse`
- Die Klasse `.unnumbered` makiert eine Überschrift als "soll nicht nummeriert werden". Als Alias reicht auch ein `-`.
- Die Klasse `.unlisted` makiert eine Überschrfit als "soll im Inhaltsverzeichnis nicht eingetragen werden".
In den meisten Fällen wird maximal der Identifikator benötigt.
Der Identifaktor kann zum verlinken des entsprechenden Abschnittes verwendet werden.
```markdown
#### Eine Überschrift {#bspueberschrift}
#### Eine andere Überschrift {#anderebspueberschrift .mit-klassen .foobar}
#### Nich Nummeriert und nicht im Inhaltsverzeichnis {- .unlisted}
```
:::success
#### Eine Überschrift {#bspueberschrift}
#### Eine andere Überschrift {#anderebspueberschrift .mit-klassen .foobar}
#### Nich Nummeriert und nicht im Inhaltsverzeichnis {- .unlisted}
:::
:::info
Falls kein Identifikator für eine Überschrift gesetzt wurde, wird automatisch einer aus dem Überschriftentext generiert.
:::danger
TODO https://pandoc.org/MANUAL.html#headings-and-sections
:::
:::
## Inlinemarkup
Es gibt einige Inlinemarkups.
Die simplesten sind im folgenden Beispiel aufgezeigt.
```markdown
Normaler Text
**Fettgedruckter Text**
__Fettgedruckter Text__
*Kursiv gesetzter Text*
_Kursiv gesetzter Text_
~~Durchgestichener Text~~
"Schöne doppelte Anführungszeichen"
'Schöne einfache Anführungszeichen'
Superscript: 19^th^
Subscript: H~2~O
Hinweis: Superscript und Subscript ~funktioniert nur~ ohne ^Leerzeichen dazwischen^. Es sei denn ~man\ escaped~ ^die\ Leerzeichen^.
Geviertstriche werden mit zwei oder drei Minuszeichen gemacht:
Schön---nein, unfassbar!
Während 1980--1988.
***Gemischte*** ~~_Syntax_~~ __~geht~__ **_^auch^_**
```
:::success
Normaler Text
**Fettgedruckter Text**
__Fettgedruckter Text__
*Kursiv gesetzter Text*
_Kursiv gesetzter Text_
~~Durchgestichener Text~~
"Schöne doppelte Anführungszeichen"
'Schöne einfache Anführungszeichen'
Superscript: 19^th^
Subscript: H~2~O
Hinweis: Superscript und Subscript ~funktioniert nur~ ohne ^Leerzeichen dazwischen^. Es sei denn ~man\ escaped~ ^die\ Leerzeichen^.
Geviertstriche werden mit zwei oder drei Minuszeichen gemacht:
Schön---nein, unfassbar!
Während 1980--1988.
***Gemischte*** ~~_Syntax_~~ __~geht~__ **_^auch^_**
:::
:::danger
TODO
https://pandoc.org/MANUAL.html#underline
https://pandoc.org/MANUAL.html#small-caps
https://pandoc.org/MANUAL.html#extension-smart
https://pandoc.org/MANUAL.html#emphasis
https://pandoc.org/MANUAL.html#highlighting
https://pandoc.org/MANUAL.html#strikeout
https://pandoc.org/MANUAL.html#superscripts-and-subscripts
:::
"Strong" :{"handler" : InlineSimple, "etype":"strong" },
"Emph" :{"handler" : InlineSimple, "etype":"emph" },
"Underline" :{"handler" : InlineSimple, "etype":"underline" },
"Strikeout" :{"handler" : InlineSimple, "etype":"strikeout" },
"Superscript":{"handler" : InlineSimple, "etype":"superscript"},
"Subscript" :{"handler" : InlineSimple, "etype":"subscript" },
"SmallCaps" :{"handler" : InlineSimple, "etype":"smallcaps" },
"Quoted" : InlineQuoted,
"SoftBreak" : InlineSoftBreak,
"LineBreak" : InlineLineBreak,
Die restlichen Inlinemarkups sind in den folgenden Unterabschnitten genauer beschrieben.
### Links
:::danger
TODO
https://pandoc.org/MANUAL.html#links-1
https://pandoc.org/MANUAL.html#extension-abbreviations
https://pandoc.org/MANUAL.html#extension-implicit_header_references
:::
"Link" : InlineLink,
### Bilder
:::danger
TODO
https://pandoc.org/MANUAL.html#images
:::
"Image" : InlineImage,
### :point_right: Emoji :point_left:
Es gibt Emojis! :smiley:
Eine Auflistung *aller* 1855 möglichen Emojis findest du in der [Emojiliste](slug:emojis).
```markdown
Fühl dich gedrückt :hugs: :hearts:
```
:::success
Fühl dich gedrückt :hugs: :hearts:
:::
<!-- https://pandoc.org/MANUAL.html#extension-emoji -->
### Mathe
:::danger
TODO
https://pandoc.org/MANUAL.html#math-input
https://pandoc.org/MANUAL.html#math
https://pandoc.org/MANUAL.html#extension-tex_math_single_backslash
:::
"Math" : InlineMath,
### Code
:::danger
TODO https://pandoc.org/MANUAL.html#verbatim
:::
### Fußnoten
:::danger
TODO
https://pandoc.org/MANUAL.html#footnotes
:::
"Note" : InlineFootnote,
### Backslash-Escape
Außer in [Codeblöcken](#codeblocke) oder [Inline Code](#code), werden alle Zeichensetzungen oder Leerzeichen, welche direkt auf ein Backslash folgen, als Literale gelesen.
```markdown
*Dieser Text ist kursiv.*
\*Dieser Text hat Sternchen.\*
*\*Dieser Text hat Sternchen und ist kursiv.\**
```
:::success
*Dieser Text ist kursiv.*
\*Dieser Text hat Sternchen.\*
*\*Dieser Text hat Sternchen und ist kursiv.\**
:::
:::danger
TODO
https://pandoc.org/MANUAL.html#extension-all_symbols_escapable
:::
### Nonbreaking Space
:::danger
TODO
https://pandoc.org/MANUAL.html#extension-smart
https://pandoc.org/MANUAL.html#extension-all_symbols_escapable
:::
## Alerts
:::danger
TODO
:::
## Zitate
:::danger
TODO
https://pandoc.org/MANUAL.html#block-quotations
:::
"BlockQuote" : BlockQuote,
## Listen
:::danger
TODO
https://pandoc.org/MANUAL.html#extension-lists_without_preceding_blankline
:::
### Ungeordnete Listen
:::danger
TODO
https://pandoc.org/MANUAL.html#bullet-lists
:::
"BulletList" : BlockBulletList,
### Geordnete Listen
:::danger
TODO
https://pandoc.org/MANUAL.html#ordered-lists
:::
"OrderedList" : BlockOrderedList,
### Aufgabenlisten
:::danger
TODO
https://pandoc.org/MANUAL.html#extension-task_lists
:::
### Beispiellisten
:::danger
TODO
https://pandoc.org/MANUAL.html#numbered-example-lists
:::
### Listen beenden
:::danger
TODO
https://pandoc.org/MANUAL.html#ending-a-list
:::
## Definitionslisten
:::danger
TODO
https://pandoc.org/MANUAL.html#definition-lists
:::
"DefinitionList": BlockDefinitionList,
## Codeblöcke
:::danger
TODO
https://pandoc.org/MANUAL.html#verbatim-code-blocks
:::
"CodeBlock" : BlockCode,
## Horizontale Trennlinien
:::danger
TODO
https://pandoc.org/MANUAL.html#horizontal-rules
:::
"HorizontalRule": BlockHorizontalRule,
## Tabellen
:::danger
TODO
https://pandoc.org/MANUAL.html#tables
:::
"Table" : BlockTable,
## Kommentare
Kommentare können einfach mit [HTML Kommentaren](https://www.w3schools.com/html/html_comments.asp) gemacht werden.
```markdown
Hallo Welt
<!-- Ich bin unsichtbar. Achtung: Es kann zusätzliche Zeilenumbrüche geben. -->
Guten Tag
```
:::success
Hallo Welt
<!-- Ich bin unsichtbar. Achtung: Es kann zusätzliche Zeilenumbrüche geben. -->
Guten Tag
:::
## Divs und Spans
:::danger
TODO
https://pandoc.org/MANUAL.html#divs-and-spans
https://pandoc.org/MANUAL.html#generic-raw-attribute
https://pandoc.org/MANUAL.html#raw-htmltex
:::
"Div" : BlockContainer,
"Span" : InlineContainer,
### Sachen nebeneinander darstellen
:::danger
TODO
https://pandoc.org/MANUAL.html#columns
:::
## Rohes HTML
:::danger
TODO
https://pandoc.org/MANUAL.html#raw-html
https://pandoc.org/MANUAL.html#raw-htmltex
:::
"RawBlock" : BlockRaw,
"RawInline" : InlineRaw,
## Abbreviations
Nicht unterstützt.
:::danger
TODO
https://pandoc.org/MANUAL.html#extension-abbreviations
:::
## Line Blocks
:::danger
TODO
https://pandoc.org/MANUAL.html#line-blocks
:::
---
title: "Yaml Metadatenblock"
prio: 3
---
Eine jede Markdown Datei **muss** mit einem Metadaten Header anfangen.
Dieser muss mindestens `title` gesetzt haben.
Ein Metadaten Header sieht z.B. wie folgt aus:
```markdown
---
title: Mein toller Artikel
slug: mein_toller_artikel
status: published
tags: droggelbecher,foo,bar,hallo,welt
lang: de
---
```
Weiter Informationen zu möglichen Metadaten gibt es in der [Pelican Dokumentation](https://gaumi-fginfo.pages.gwdg.de/pelican/_build/html/content.html#file-metadata).
---
title: "Schnellstart"
prio: 5
---
:::warning
TODO
:::
---
title: Dokumentation
template: "index.html"
after:
- type: "news"
title:
de: "Zuletzt Veränderte Seiten"
id: "last_changed"
num: 5
---
Hier findest du die Dokumentation zur Fachgruppenwebseite.
---
title: Content Format
---
## Attr
| Key | Parser | Comment |
|-----|--------|---------|
| id | String | |
| classes | \[String\] | |
| extra | {foo: bar, alice: bob, ...} | |
## Blocks
### header
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `header` | |
| eclass | `block` | |
| level | Integer | |
| attr | [Attr](#attr) | |
| content | \[[Inline](#inlines)\] | |
### rawblock
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `rawblock` | |
| eclass | `block` | |
| format | String | |
| raw | String | |
### bulletlist
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `bulletlist` | |
| eclass | `block` | |
| items | \[\[[Block](#blocks)\]\] | |
| count | Integer | |
### orderedlist
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `orderedlist` | |
| eclass | `block` | |
| items | \[\[[Block](#blocks)\]\] | |
| count | Integer | |
| start | Integer | |
| style | `default` \| `example` \| `decimal` \| `lower_roman` \| `upper_roman` \| `lower_alpha` \| `upper_alpha` | |
| delim | `default` \| `period` \| `one_parenthesis` \| `two_parentheses` | |
### blockquote
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `blockquote` | |
| eclass | `block` | |
| content | \[[Block](#blocks)\] | |
### plain
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `plain` | |
| eclass | `block` | |
| content | \[[Inline](#inlines)\] | |
### paragraph
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `paragraph` | |
| eclass | `block` | |
| content | \[[Inline](#inlines)\] | |
### codeblock
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `codeblock` | |
| eclass | `block` | |
| attr | [Attr](#attr) | |
| code | String | |
| code_lines | \[String\] | |
### horizontalrule
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `horizontalrule` | |
| eclass | `block` | |
### blockcontainer
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `blockcontainer` | |
| eclass | `block` | |
| attr | [Attr](#attr) | |
| content | \[[Block](#blocks)\] | |
## Inlines
### space
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `space` | |
| eclass | `inline` | |
### linebreak
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `linebreak` | |
| eclass | `inline` | |
### softbreak
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `softbreak` | |
| eclass | `inline` | |
### string
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `string` | |
| eclass | `inline` | |
| text | String | |
### strong
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `strong` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### emph
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `emph` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### underline
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `underline` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### strikeout
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `strikeout` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### superscript
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `superscript` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### subscript
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `subscript` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### smallcaps
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `smallcaps` | |
| eclass | `inline` | |
| content | \[[Inline](#inlines)\] | |
### link
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `link` | |
| eclass | `inline` | |
| attr | [Attr](#attr) | |
| content | \[[Inline](#inlines)\] | |
| url | String | |
| title | String | |
### image
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `image` | |
| eclass | `inline` | |
| attr | [Attr](#attr) | |
| alt | \[[Inline](#inlines)\] | |
| url | String | |
| title | String | |
### quoted
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `quoted` | |
| eclass | `inline` | |
| quotetype | `single` \| `double` | |
| content | \[[Inline](#inlines)\] | |
### math
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `math` | |
| eclass | `inline` | |
| mathtype | `display` \| `inline` | |
| math | String | |
### code
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `code` | |
| eclass | `inline` | |
| attr | [Attr](#attr) | |
| code | String | |
| code_lines | \[String\] | |
### inlinecontainer
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `inlinecontainer` | |
| eclass | `inline` | |
| attr | [Attr](#attr) | |
| content | \[[Inline](#inlines)\] | |
### rawinline
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `rawinline` | |
| eclass | `inline` | |
| format | String | |
| raw | String | |
### footnote
| Key | Parser | Comment |
|-----|--------|---------|
| etype | `footnote` | |
| eclass | `inline` | |
| content | \[[Block](#blocks)\] | |
---
title: "Administration"
color: "#bb2244"
slug: "tag-admin"
lang: de
---
Alles zum Administrieren der Webseite.
---
title: "Inhalte Erstellen"
color: "#22bb44"
slug: "tag-content"
lang: de
---
Hier ist die Dokumentation zum Erstellen von Inhalten.
Quasi alle Informationen rund ums [Inhaltsrepo](https://gitlab.gwdg.de/GAUMI-fginfo/fg-website-data).
---
title: "Internes"
color: "#2244bb"
slug: "tag-internal"
lang: de
---
Informationen zum Warten vom Code.