added a special tablebreak tag for a very special curricula description
This commit is contained in:
parent
b3bc916746
commit
573018e9e2
5 changed files with 93 additions and 60 deletions
|
@ -66,6 +66,10 @@ class MarkdownGenerator:
|
|||
|
||||
# expand rows
|
||||
for r in rows:
|
||||
# insider recognize this as the computational dump(b)ness feature
|
||||
if '<!-- tablebreak -->' in r[0] or '<!-- tablebreak -->' in r[1]:
|
||||
print(''.join(['+',"".ljust(h_len,'-'),'+',"".ljust(d_len,'-'),'+']))
|
||||
else:
|
||||
print(''.join(['|',r[0].ljust(h_len,' '),'|',r[1].ljust(d_len,' '),'|']))
|
||||
|
||||
if headline:
|
||||
|
@ -100,6 +104,11 @@ class CourseBuilder:
|
|||
else:
|
||||
return True
|
||||
|
||||
def needs_spec(self,field):
|
||||
if 'spec' in self.__schema[field]:
|
||||
return self.__schema[field]
|
||||
else:
|
||||
return False
|
||||
|
||||
def process_label(self,field,lang='de'):
|
||||
# processes the label of a field item
|
||||
|
@ -107,13 +116,31 @@ class CourseBuilder:
|
|||
|
||||
def process_str(self,meta,field,lang='de'):
|
||||
if self.is_translatable(field):
|
||||
|
||||
return [self.process_label(field,lang),meta[field][lang]]
|
||||
else:
|
||||
if not 'value' in meta[field]:
|
||||
raise AssertionError(field,'incomplete')
|
||||
|
||||
return [self.process_label(field,lang),meta[field]['value']]
|
||||
|
||||
def process_enum(self,meta,field,lang='de'):
|
||||
v = meta[field]['value']
|
||||
return [self.process_label(field,lang),self.__schema[field]['values'][v][lang]]
|
||||
"""
|
||||
enum have a specification 'specs' option
|
||||
that can be forced by the scheme
|
||||
"""
|
||||
vv = meta[field]['value']
|
||||
enum_val = self.__schema[field]['values'][vv][lang]
|
||||
|
||||
if self.needs_spec(field):
|
||||
|
||||
t = string.Template(self.get_template(field=field,lang=lang))
|
||||
|
||||
spec = meta[field]['spec'][lang]
|
||||
|
||||
return [self.process_label(field,lang),t.substitute({'value': enum_val,'spec': spec})]
|
||||
else:
|
||||
return [self.process_label(field,lang),enum_val]
|
||||
|
||||
def process_int(self,meta,field,lang='de'):
|
||||
v = meta[field]['value']
|
||||
|
@ -121,11 +148,13 @@ class CourseBuilder:
|
|||
return [self.process_label(field,lang),t.substitute({'value' : v})]
|
||||
|
||||
def process_multikey(self,meta,field,lang='de'):
|
||||
"""
|
||||
multikey need to assign a numeric value to a key
|
||||
"""
|
||||
vs = meta[field]['value']
|
||||
t = string.Template(self.get_template(field,lang))
|
||||
|
||||
k = self.process_label(field,lang)
|
||||
v = ""
|
||||
|
||||
parts = []
|
||||
|
||||
|
|
10
test.md
10
test.md
|
@ -1,10 +0,0 @@
|
|||
----------------------------------------------------------------------------------------------------------------------------------
|
||||
Inhalt Test
|
||||
------------------------------------ ---------------------------------------------------------------------------------------------
|
||||
Modulinhalte 1. Section One
|
||||
2. Section Two
|
||||
1. Section Two Sub One
|
||||
2. Section Two Sub Two
|
||||
3. Section Two Sub Three
|
||||
4. Section Two Sub Four
|
||||
----------------------------------------------------------------------------------------------------------------------------------
|
|
@ -113,6 +113,10 @@ workload:
|
|||
|
||||
form-of-exam:
|
||||
value: written
|
||||
spec:
|
||||
de: "120min Klausur"
|
||||
en: "120min exam"
|
||||
|
||||
|
||||
frequency:
|
||||
value: once_per_year
|
||||
|
|
|
@ -12,41 +12,6 @@ name:
|
|||
#
|
||||
|
||||
content:
|
||||
en: |
|
||||
1. Dog
|
||||
1. German Shepherd
|
||||
2. Belgian Shepherd
|
||||
1. Malinois
|
||||
2. Groenendael
|
||||
4. Tervuren
|
||||
2. Cat
|
||||
1. Siberian
|
||||
2. Siamese
|
||||
|
||||
|
||||
content-alt:
|
||||
en: |
|
||||
1. Dog
|
||||
|
||||
1. German Shepherd
|
||||
|
||||
2. Belgian Shepherd
|
||||
|
||||
1. Malinois
|
||||
|
||||
2. Groenendael
|
||||
|
||||
4. Tervuren
|
||||
|
||||
2. Cat
|
||||
|
||||
1. Siberian
|
||||
|
||||
2. Siamese
|
||||
|
||||
|
||||
|
||||
content-blah:
|
||||
en: |
|
||||
1. Blah
|
||||
|
||||
|
@ -72,6 +37,8 @@ content-blah:
|
|||
|
||||
4. Blub
|
||||
|
||||
<!-- break -->
|
||||
|
||||
5. Blah
|
||||
|
||||
6. Blah and Blub
|
||||
|
|
|
@ -11,6 +11,17 @@ name:
|
|||
en: "name of course"
|
||||
}
|
||||
|
||||
#
|
||||
# Modulverantwortliche:r
|
||||
#
|
||||
instructor:
|
||||
type: str
|
||||
translatable: false
|
||||
label:
|
||||
de: "Modulverantwortlicher/Modulverantwortliche"
|
||||
en: "module instructor"
|
||||
|
||||
|
||||
#
|
||||
# Kürzel / ID
|
||||
#
|
||||
|
@ -22,20 +33,22 @@ id:
|
|||
en: "code"
|
||||
}
|
||||
|
||||
#
|
||||
# Modulverantwortliche:r
|
||||
#
|
||||
instructor:
|
||||
type: str
|
||||
translatable: false
|
||||
label: {
|
||||
de: "Modulverantwortliche:r",
|
||||
en: "module instructor"
|
||||
}
|
||||
|
||||
#
|
||||
# Qualifikationsziele
|
||||
#
|
||||
|
||||
# Welche fachbezogenen, methodischen, fachübergreifende Kompetenzen,
|
||||
# Schlüsselqualifikationen - werden erzielt (erworben)? Diese sind
|
||||
# an der zu definierenden Gesamtqualifikation (angestrebter Abschluss) auszurichten.
|
||||
#
|
||||
# Lernergebnisse sind Aussagen darüber, was ein Studierender nach Abschluss des Moduls weiß,
|
||||
# versteht und in der Lage ist zu tun. Die Formulierung sollte sich am Qualifikationsrahmen
|
||||
# für Deutsche Hochschulabschlüsse orientieren und Inhaltswiederholungen vermeiden.
|
||||
#
|
||||
# Des Weiteren finden Sie im QM-Portal die „Handreichung zur Beschreibung von Lernzielen“
|
||||
# als Formulierungshilfe.
|
||||
|
||||
goal:
|
||||
type: str
|
||||
label: {
|
||||
|
@ -46,6 +59,12 @@ goal:
|
|||
#
|
||||
# Modulinhalte
|
||||
#
|
||||
|
||||
# Welche fachlichen, methodischen, fachpraktischen und fächerübergreifenden
|
||||
# Inhalte sollen vermittelt werden?
|
||||
#
|
||||
# Es ist ein stichpunktartiges Inhaltsverzeichnis zu erstellen.
|
||||
|
||||
content:
|
||||
type: str
|
||||
label: {
|
||||
|
@ -56,6 +75,14 @@ content:
|
|||
#
|
||||
# Lehrform
|
||||
#
|
||||
|
||||
#
|
||||
# Welche Lehr- und Lernformen werden angewendet?
|
||||
# (Vorlesungen, Übungen, Seminare, Praktika,
|
||||
# Projektarbeit, Selbststudium)
|
||||
#
|
||||
# Es sind nur Werte aus der Prüfungsordung zugelassen
|
||||
#
|
||||
form-of-instruction:
|
||||
label: {
|
||||
de: "Lehrform(en)",
|
||||
|
@ -95,6 +122,14 @@ form-of-instruction:
|
|||
#
|
||||
# Voraussetzungen für die Teilnahme
|
||||
#
|
||||
|
||||
# Für jedes Modul sind die Voraussetzungen für die Teilnahme zu beschreiben.
|
||||
# Welche Kenntnisse, Fähigkeiten und Fertigkeiten sind für eine
|
||||
# erfolgreiche Teilnahme vorauszusetzen?
|
||||
#
|
||||
# Alternativ können die Module benannt werden welche für die erfolgreiche
|
||||
# Teilnahme im Vorfeld zu belegen sind.
|
||||
|
||||
prerequisites:
|
||||
type: str
|
||||
label: {
|
||||
|
@ -105,6 +140,9 @@ prerequisites:
|
|||
#
|
||||
# Literatur und multimediale Lehr- und Lernprogramme
|
||||
#
|
||||
#
|
||||
# Wie können die Studierenden sich auf die Teilnahme an diesem Modul vorbereiten?
|
||||
#
|
||||
media-of-instruction:
|
||||
type: str
|
||||
label: {
|
||||
|
@ -178,6 +216,11 @@ form-of-exam:
|
|||
en: "alternative examination"
|
||||
}
|
||||
}
|
||||
spec: true
|
||||
template:
|
||||
de: "${value} (${spec})"
|
||||
en: "${value} (${spec})"
|
||||
|
||||
|
||||
#
|
||||
# Semester
|
||||
|
@ -241,6 +284,6 @@ kind:
|
|||
remarks:
|
||||
type: str
|
||||
label: {
|
||||
de: "Bemerkungen",
|
||||
de: "Besonderes",
|
||||
en: "remarks"
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue