wortsammler 1.0.3 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +46 -4
- data/.gitpod.Dockerfile +32 -0
- data/.gitpod.yml +1 -0
- data/.idea/.name +1 -0
- data/.idea/.rakeTasks +7 -0
- data/.idea/202_wortsammler-gem.iml +119 -0
- data/.idea/compiler.xml +22 -0
- data/.idea/encodings.xml +6 -0
- data/.idea/inspectionProfiles/profiles_settings.xml +7 -0
- data/.idea/misc.xml +4 -0
- data/.idea/modules.xml +9 -0
- data/.idea/vcs.xml +7 -0
- data/Gemfile +1 -0
- data/README.md +25 -28
- data/Rakefile +3 -3
- data/changelog.md +17 -1
- data/lib/wortsammler.rb +61 -54
- data/lib/wortsammler/class.Traceable.md.rb +9 -7
- data/lib/wortsammler/class.Traceable.rb +74 -60
- data/lib/wortsammler/class.proolib.rb +1102 -982
- data/lib/wortsammler/mdTraceParser.treetop +2 -2
- data/lib/wortsammler/version.rb +1 -1
- data/resources/default.wortsammler.latex +4 -3
- data/resources/main.md +1 -1
- data/resources/pandocdefault.docx +0 -0
- data/resources/pandocdefault.epub +70 -0
- data/resources/pandocdefault.html +73 -0
- data/resources/pandocdefault.latex +403 -0
- data/resources/sample_the-sample-document.yaml +27 -1
- data/spec/TC_EXP_001.md +2 -1
- data/spec/Zupfnoter.jpg +0 -0
- data/spec/tc_exp_003_reference.txt +14 -29
- data/spec/test_beautify.md +13 -1
- data/spec/test_beautify_reference.md +17 -3
- data/spec/test_mkindex_reference.txt +9 -38
- data/spec/test_slides.md +38 -0
- data/spec/wortsammler_spec.rb +186 -150
- data/testproject.xx/30_Sources/001_Main/main.md +273 -0
- data/testproject.xx/30_Sources/900_snippets/snippets.xlsx +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.docx +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.html +145 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.latex +416 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.pdf +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.beamer.pdf +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.docx +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.html +145 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.latex +416 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.pdf +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.docx +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.html +145 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.latex +416 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.pdf +0 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_review.latex +582 -0
- data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_review.pdf +0 -0
- data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/RS_Main.traces.md +56 -0
- data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_Reqtrace.graphml +119 -0
- data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_Reqtrace.md +50 -0
- data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_ReqtraceCompare.txt +52 -0
- data/testproject.xx/30_Sources/ZSUPP_Manifests/sample_the-sample-document.yaml +79 -0
- data/testproject.xx/30_Sources/ZSUPP_Styles/default.wortsammler.latex +321 -0
- data/testproject.xx/30_Sources/ZSUPP_Styles/logo.jpg +0 -0
- data/testproject.xx/30_Sources/ZSUPP_Tools/rakefile.rb +5 -0
- data/testresults/wortsammler_testresults.html +49 -466
- data/uninstall-pandoc.pl +79 -0
- data/wortsammler.gemspec +7 -4
- metadata +84 -14
- data/testresults/wortsammler_testresults.log +0 -325
- data/wortsammler-gem.sublime-project +0 -8
File without changes
|
@@ -0,0 +1,56 @@
|
|
1
|
+
|
2
|
+
\clearpage
|
3
|
+
|
4
|
+
# Upstream Requirements
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
[RS_Comp_001] **Flexibler Dokumentumfang** { }()
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
[RS_Comp_003] **Steuerung Dokumentenzusammenstellung** { }()
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
[RS_Comp_004] **Prozessierung Einzeldokument** { }()
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
[RS_Comp_005] **Erstellung Loseblattsammlung** { }()
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
[RS_Comp_006] **Inkrementelle Verarbeitung** { }()
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
[RS_Comp_007] **Anforderungen an Manifest** { }()
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
[RS_Comp_008] **Zielgruppenspezifische Ausgaben (Editionen)** { }()
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
[RS_Comp_009] **Gesamtausgabe mit allen Texten zur Prüfung** { }()
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
[RS_Comp_010] **Erstellung aller Ausgaben mit einem Befehl** { }()
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
[RS_Comp_011] **including Plain pdf-Pages** { }()
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
[RS_Comp_012] **Including text Snippets** { }()
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
[RS_Comp_014] **Including markdown files** { }()
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
[RS_Conp_013] **Defining text Snippets** { }()
|
@@ -0,0 +1,119 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
|
3
|
+
<!--Created by yFiles for Java 2.9-->
|
4
|
+
<key for="graphml" id="d0" yfiles.type="resources"/>
|
5
|
+
<key for="port" id="d1" yfiles.type="portgraphics"/>
|
6
|
+
<key for="port" id="d2" yfiles.type="portgeometry"/>
|
7
|
+
<key for="port" id="d3" yfiles.type="portuserdata"/>
|
8
|
+
<key attr.name="url" attr.type="string" for="node" id="d4"/>
|
9
|
+
<key attr.name="description" attr.type="string" for="node" id="d5"/>
|
10
|
+
<key for="node" id="d6" yfiles.type="nodegraphics"/>
|
11
|
+
<key attr.name="Beschreibung" attr.type="string" for="graph" id="d7"/>
|
12
|
+
<key attr.name="url" attr.type="string" for="edge" id="d8"/>
|
13
|
+
<key attr.name="description" attr.type="string" for="edge" id="d9"/>
|
14
|
+
<key for="edge" id="d10" yfiles.type="edgegraphics"/>
|
15
|
+
<graph edgedefault="directed" id="G">
|
16
|
+
<node id="RS_Comp_001">
|
17
|
+
<data key="d6">
|
18
|
+
<y:ShapeNode>
|
19
|
+
<y:NodeLabel>[RS_Comp_001] Flexibler Dokumentumfang</y:NodeLabel>
|
20
|
+
</y:ShapeNode>
|
21
|
+
</data>
|
22
|
+
</node>
|
23
|
+
<edge source="RS_Comp_001" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_001"/>
|
24
|
+
<node id="RS_Comp_003">
|
25
|
+
<data key="d6">
|
26
|
+
<y:ShapeNode>
|
27
|
+
<y:NodeLabel>[RS_Comp_003] Steuerung Dokumentenzusammenstellung</y:NodeLabel>
|
28
|
+
</y:ShapeNode>
|
29
|
+
</data>
|
30
|
+
</node>
|
31
|
+
<edge source="RS_Comp_003" target="RS_DM_014" id="RS_DM_014_RS_Comp_003"/>
|
32
|
+
<edge source="RS_Comp_003" target="RS_DM_010" id="RS_DM_010_RS_Comp_003"/>
|
33
|
+
<edge source="RS_Comp_003" target="RS_DM_005" id="RS_DM_005_RS_Comp_003"/>
|
34
|
+
<node id="RS_Comp_004">
|
35
|
+
<data key="d6">
|
36
|
+
<y:ShapeNode>
|
37
|
+
<y:NodeLabel>[RS_Comp_004] Prozessierung Einzeldokument</y:NodeLabel>
|
38
|
+
</y:ShapeNode>
|
39
|
+
</data>
|
40
|
+
</node>
|
41
|
+
<node id="RS_Comp_005">
|
42
|
+
<data key="d6">
|
43
|
+
<y:ShapeNode>
|
44
|
+
<y:NodeLabel>[RS_Comp_005] Erstellung Loseblattsammlung</y:NodeLabel>
|
45
|
+
</y:ShapeNode>
|
46
|
+
</data>
|
47
|
+
</node>
|
48
|
+
<node id="RS_Comp_006">
|
49
|
+
<data key="d6">
|
50
|
+
<y:ShapeNode>
|
51
|
+
<y:NodeLabel>[RS_Comp_006] Inkrementelle Verarbeitung</y:NodeLabel>
|
52
|
+
</y:ShapeNode>
|
53
|
+
</data>
|
54
|
+
</node>
|
55
|
+
<node id="RS_Comp_007">
|
56
|
+
<data key="d6">
|
57
|
+
<y:ShapeNode>
|
58
|
+
<y:NodeLabel>[RS_Comp_007] Anforderungen an Manifest</y:NodeLabel>
|
59
|
+
</y:ShapeNode>
|
60
|
+
</data>
|
61
|
+
</node>
|
62
|
+
<edge source="RS_Comp_007" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_007"/>
|
63
|
+
<node id="RS_Comp_008">
|
64
|
+
<data key="d6">
|
65
|
+
<y:ShapeNode>
|
66
|
+
<y:NodeLabel>[RS_Comp_008] Zielgruppenspezifische Ausgaben (Editionen)</y:NodeLabel>
|
67
|
+
</y:ShapeNode>
|
68
|
+
</data>
|
69
|
+
</node>
|
70
|
+
<edge source="RS_Comp_008" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_008"/>
|
71
|
+
<node id="RS_Comp_009">
|
72
|
+
<data key="d6">
|
73
|
+
<y:ShapeNode>
|
74
|
+
<y:NodeLabel>[RS_Comp_009] Gesamtausgabe mit allen Texten zur Prüfung</y:NodeLabel>
|
75
|
+
</y:ShapeNode>
|
76
|
+
</data>
|
77
|
+
</node>
|
78
|
+
<edge source="RS_Comp_009" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_009"/>
|
79
|
+
<node id="RS_Comp_010">
|
80
|
+
<data key="d6">
|
81
|
+
<y:ShapeNode>
|
82
|
+
<y:NodeLabel>[RS_Comp_010] Erstellung aller Ausgaben mit einem Befehl</y:NodeLabel>
|
83
|
+
</y:ShapeNode>
|
84
|
+
</data>
|
85
|
+
</node>
|
86
|
+
<edge source="RS_Comp_010" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_010"/>
|
87
|
+
<node id="RS_Comp_011">
|
88
|
+
<data key="d6">
|
89
|
+
<y:ShapeNode>
|
90
|
+
<y:NodeLabel>[RS_Comp_011] including Plain pdf-Pages</y:NodeLabel>
|
91
|
+
</y:ShapeNode>
|
92
|
+
</data>
|
93
|
+
</node>
|
94
|
+
<edge source="RS_Comp_011" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_011"/>
|
95
|
+
<node id="RS_Comp_012">
|
96
|
+
<data key="d6">
|
97
|
+
<y:ShapeNode>
|
98
|
+
<y:NodeLabel>[RS_Comp_012] Including text Snippets</y:NodeLabel>
|
99
|
+
</y:ShapeNode>
|
100
|
+
</data>
|
101
|
+
</node>
|
102
|
+
<node id="RS_Comp_014">
|
103
|
+
<data key="d6">
|
104
|
+
<y:ShapeNode>
|
105
|
+
<y:NodeLabel>[RS_Comp_014] Including markdown files</y:NodeLabel>
|
106
|
+
</y:ShapeNode>
|
107
|
+
</data>
|
108
|
+
</node>
|
109
|
+
<edge source="RS_Comp_014" target="RS_Comp_003" id="RS_Comp_003_RS_Comp_014"/>
|
110
|
+
<node id="RS_Conp_013">
|
111
|
+
<data key="d6">
|
112
|
+
<y:ShapeNode>
|
113
|
+
<y:NodeLabel>[RS_Conp_013] Defining text Snippets</y:NodeLabel>
|
114
|
+
</y:ShapeNode>
|
115
|
+
</data>
|
116
|
+
</node>
|
117
|
+
<edge source="RS_Conp_013" target="RS_Comp_003" id="RS_Comp_003_RS_Conp_013"/>
|
118
|
+
</graph>
|
119
|
+
</graphml>
|
@@ -0,0 +1,50 @@
|
|
1
|
+
|
2
|
+
\clearpage
|
3
|
+
|
4
|
+
# Requirements Tracing
|
5
|
+
|
6
|
+
- ->[RS_Comp_001] <!-- --> <a id="RT-RS-Comp-001"/>**Flexibler Dokumentumfang** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
7
|
+
|
8
|
+
|
9
|
+
- ->[RS_Comp_003] <!-- --> <a id="RT-RS-Comp-003"/>**Steuerung Dokumentenzusammenstellung** (<a href="#RT-RS-DM-014">[RS_DM_014]</a>, <a href="#RT-RS-DM-010">[RS_DM_010]</a>, <a href="#RT-RS-DM-005">[RS_DM_005]</a>)
|
10
|
+
|
11
|
+
- <a href="#RT-RS-Comp-001">[RS_Comp_001]</a> Flexibler Dokumentumfang
|
12
|
+
- <a href="#RT-RS-Comp-007">[RS_Comp_007]</a> Anforderungen an Manifest
|
13
|
+
- <a href="#RT-RS-Comp-008">[RS_Comp_008]</a> Zielgruppenspezifische Ausgaben (Editionen)
|
14
|
+
- <a href="#RT-RS-Comp-009">[RS_Comp_009]</a> Gesamtausgabe mit allen Texten zur Prüfung
|
15
|
+
- <a href="#RT-RS-Comp-010">[RS_Comp_010]</a> Erstellung aller Ausgaben mit einem Befehl
|
16
|
+
- <a href="#RT-RS-Comp-011">[RS_Comp_011]</a> including Plain pdf-Pages
|
17
|
+
- <a href="#RT-RS-Comp-014">[RS_Comp_014]</a> Including markdown files
|
18
|
+
- <a href="#RT-RS-Conp-013">[RS_Conp_013]</a> Defining text Snippets
|
19
|
+
|
20
|
+
- ->[RS_Comp_004] <!-- --> <a id="RT-RS-Comp-004"/>**Prozessierung Einzeldokument** ()
|
21
|
+
|
22
|
+
|
23
|
+
- ->[RS_Comp_005] <!-- --> <a id="RT-RS-Comp-005"/>**Erstellung Loseblattsammlung** ()
|
24
|
+
|
25
|
+
|
26
|
+
- ->[RS_Comp_006] <!-- --> <a id="RT-RS-Comp-006"/>**Inkrementelle Verarbeitung** ()
|
27
|
+
|
28
|
+
|
29
|
+
- ->[RS_Comp_007] <!-- --> <a id="RT-RS-Comp-007"/>**Anforderungen an Manifest** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
30
|
+
|
31
|
+
|
32
|
+
- ->[RS_Comp_008] <!-- --> <a id="RT-RS-Comp-008"/>**Zielgruppenspezifische Ausgaben (Editionen)** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
33
|
+
|
34
|
+
|
35
|
+
- ->[RS_Comp_009] <!-- --> <a id="RT-RS-Comp-009"/>**Gesamtausgabe mit allen Texten zur Prüfung** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
36
|
+
|
37
|
+
|
38
|
+
- ->[RS_Comp_010] <!-- --> <a id="RT-RS-Comp-010"/>**Erstellung aller Ausgaben mit einem Befehl** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
39
|
+
|
40
|
+
|
41
|
+
- ->[RS_Comp_011] <!-- --> <a id="RT-RS-Comp-011"/>**including Plain pdf-Pages** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
42
|
+
|
43
|
+
|
44
|
+
- ->[RS_Comp_012] <!-- --> <a id="RT-RS-Comp-012"/>**Including text Snippets** ()
|
45
|
+
|
46
|
+
|
47
|
+
- ->[RS_Comp_014] <!-- --> <a id="RT-RS-Comp-014"/>**Including markdown files** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
48
|
+
|
49
|
+
|
50
|
+
- ->[RS_Conp_013] <!-- --> <a id="RT-RS-Conp-013"/>**Defining text Snippets** (<a href="#RT-RS-Comp-003">[RS_Comp_003]</a>)
|
@@ -0,0 +1,52 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
[RS_Comp_001]
|
4
|
+
[RS_Comp_001] **Flexibler Dokumentumfang** {Soll Dokumente verschiedenen Umfangs erzeugen können: - einzelnes Files - Zusammengestelltes Dokument }(RS_Comp_003)
|
5
|
+
|
6
|
+
|
7
|
+
[RS_Comp_003]
|
8
|
+
[RS_Comp_003] **Steuerung Dokumentenzusammenstellung** {Dokumentenzusammenstellungen soll über ein manifest ->[RS_Comp_007] gesteuert werden. - Die Manifeste sollen als Laufzeitparameter übergeben werden - Das Manifest enthält auch die Ausgabedatei }(RS_DM_014, RS_DM_010, RS_DM_005)
|
9
|
+
|
10
|
+
|
11
|
+
[RS_Comp_004]
|
12
|
+
[RS_Comp_004] **Prozessierung Einzeldokument** {Soll Dokumente verschiedenen Umfangs erzeugen können: - einzelnes Files - zu Prüfzwecken Steuerung soll über Konfiguration (Manifest) erfolgen ->[RS_Comp_007]. }()
|
13
|
+
|
14
|
+
|
15
|
+
[RS_Comp_005]
|
16
|
+
[RS_Comp_005] **Erstellung Loseblattsammlung** {Soll Dokumente verschiedenen Umfangs erzeugen können: - kann aus dem Manifest errechnet werden ->[RS_Comp_007] }()
|
17
|
+
|
18
|
+
|
19
|
+
[RS_Comp_006]
|
20
|
+
[RS_Comp_006] **Inkrementelle Verarbeitung** {Soll nur auf geänderte Dokumente reagieren können: - ähnlich wie make/rake }()
|
21
|
+
|
22
|
+
|
23
|
+
[RS_Comp_007]
|
24
|
+
[RS_Comp_007] **Anforderungen an Manifest** {Folgende Anforderungen gelten für das Manifest - einfach bearbeiten - nur liste der Files - Markdown-lite - Yaml Inhalte im Manifest sind - Name der Konfiguration - Ausgabeverzeichnis - Ausgabeformat - Name des generierten Dokumentes - Formate in denen das Dokument generiert wird. Werte hierfür ergeben sich aus den Anforderungen an die Aufbereitet - zu verarbeitende Eingabedateien. Diese werden in der Reihenfolge verarbeitet wie sie aufgeführt sind. - Optionen für die jeweiligen Formate. - zu bearbeitende Zielgruppen ->[RS_Comp_008] <!-- --> Beispiel für ein manifest - :name: komplett :outdir: ../ZGEN_Documents :outname: RS_Requirements-Ngopm :format: - pdf - html - rtf - docx - latex :lang: german :vars: :lang: german :editions: :intern: :title: Interne Ausgabe :filepart: _intern :extern: :title: Externe Ausgabe :filepart: _extern :mieter: :title: Ausgabe für Mieter :filepart: _mieter :ea: :title: Ausgabe für ehrenamtliche Mitarbeiter :filepart: _ma-ehrenamtlich :ha: :title: Ausgabe für hauptamtliche Mitarbeiter :filepart: _ma-hauptamtlich :1: :title: Ausgabe für erste hauptamtliche Mitarbeiter :filepart: _ma-hauptamtlich-1 :input: - ../RS_Process/RS_Process.md - ../RS_Tooling/RS_Tooling.md - ../RS_Tooling/RS_MarkdownCleaner.md - ../RS_Tooling/RS_MarkdownEditor.md - ../RS_Tooling/RS_DocumentComposer.md - ../TPL_DirectoryStructure/TPL_DirectoryStructure.md - ../TR_Installation/TR_Installation.md - ../TR_Installation/TR_Proo-Handbuch.md - ../ZGEN_RequirementsTracing/ZGEN_Reqtrace.md :snippets: - ../TS_Markdown/TS_Snippets.yaml - ../TS_Markdown/TS_MoreSnippets.yaml }(RS_Comp_003)
|
25
|
+
|
26
|
+
|
27
|
+
[RS_Comp_008]
|
28
|
+
[RS_Comp_008] **Zielgruppenspezifische Ausgaben (Editionen)** { Es soll möglich sein Zielgruppenspezifische Ausgaben zu erstellen. - Dabei wird die Zielgruppe durch eine spezifische Zeichenkette umgeschaltet (Durchstreichung), die auch in standard Markdown Programmen eine sinnvolle Ausgabe liefert: `~~ED intern extern~~` ab hier gilt: Text erscheint in Ausgabe `intern` als auch in `extern` Es handelt sich also um ein durchgestrichenes Muster als regulärer Ausdruck ~~ED((\s* \S+)*)~~ - Die Umschaltung wirkt ab einschliesslich der Zeile, die die Umschaltung enthält, bis zum Aufruf einer neuen Umschaltung. - Die möglichen Zielgruppen werden im Manifest festgelegt ->[RS_Comp_007] daselbst Eintrag `:editions:` - Eine vorgegebene Zielgruppe `all` erzeugt keine spezifische Ausgabe. Sie kennzeichnet vielmehr Inhalte, die in **allen** Ausgaben gleichermassen enthalten sind. - Bei einer Aufteilung auf mehrere Dateien wird empfohlen am Ende einer jeden Datei auf `all` zu schalten. Dadurch wird das System einfache wartbar. }(RS_Comp_003)
|
29
|
+
|
30
|
+
|
31
|
+
[RS_Comp_009]
|
32
|
+
[RS_Comp_009] **Gesamtausgabe mit allen Texten zur Prüfung** {Sollte Dokumente Eine Gesamtausgabe mit allen Texten zur Überprüfung soll erstellt werden. In diesem Fall werden die Ausgaben am Rand notiert. }(RS_Comp_003)
|
33
|
+
|
34
|
+
|
35
|
+
[RS_Comp_010]
|
36
|
+
[RS_Comp_010] **Erstellung aller Ausgaben mit einem Befehl** {Es sollen immer alle Ausgaben gleichermassen generiert werden. Dabei gilt: - Der Dateiname für die generierten Dokumente bildet sich nach `{:outname:}_{:edition:.:filepart:}.{format}` - In der Kopfzeile des Dokumentes wird `:edition:.:title:` eingefügt, so dass die Ausgabe auf jeder Seite identifiziert werden kann. Ohne Angabe einer Zielgruppe bzw. mit der Angabe `all` soll wortsammler alle Ausgaben erstellen. Die Angabe einer einzelnen Zielgruppe erstellt dann auch nur die gewählte Ausgabe. }(RS_Comp_003)
|
37
|
+
|
38
|
+
|
39
|
+
[RS_Comp_011]
|
40
|
+
[RS_Comp_011] **including Plain pdf-Pages**{ PDF pages can be included by `~~PDF "lib/01234_particularPdf.pdf" "Das ist der Eintrag im Inhaltsverzeichnis" 1 2-4~~` It is done in a markdown verbatim section. By this, Pandoc does not add linebreaks in the command such that it can be processed with regular expressions. }(RS_Comp_003)
|
41
|
+
|
42
|
+
|
43
|
+
[RS_Comp_012]
|
44
|
+
[RS_Comp_012] **Including text Snippets**{ Text Snippts can be included by `~~SN {symbol}~~` The snippets are taken from one of the snippet databases declared in the manifest ->[RS_Comp_007] according to the format in ->[RS_Comp_013]. }()
|
45
|
+
|
46
|
+
|
47
|
+
[RS_Comp_014]
|
48
|
+
[RS_Comp_014] **Including markdown files** { `~~MD "lib/01234/xxxx/yyyy.md"~~` will be replaced by the content of the argument. It should even work inline. }(RS_Comp_003)
|
49
|
+
|
50
|
+
|
51
|
+
[RS_Conp_013]
|
52
|
+
[RS_Conp_013] **Defining text Snippets** { Text snippets are defined as a yaml file in the following format: :Snippet1: Das ist Snippet 1 :Snippet2: |- Das ist snippet 2. Es enthält sogar eine Liste * Das ist item 1 in Snippet 2 * Das ist item 2 in Snippet 2 }(RS_Comp_003)
|
@@ -0,0 +1,79 @@
|
|
1
|
+
-
|
2
|
+
:name: komplett
|
3
|
+
:outdir: ../ZGEN_Documents
|
4
|
+
:outname: RS_Main
|
5
|
+
:format:
|
6
|
+
- latex
|
7
|
+
- docx
|
8
|
+
- html
|
9
|
+
- pdf
|
10
|
+
- beamer
|
11
|
+
- slidy
|
12
|
+
|
13
|
+
:vars:
|
14
|
+
:lang: german
|
15
|
+
:fontsize: 12pt
|
16
|
+
:mainfont: Calibri
|
17
|
+
:sansfont: Calibri
|
18
|
+
:geometry: a4paper
|
19
|
+
:logofile: ../ZSUPP_Styles/logo.jpg
|
20
|
+
|
21
|
+
:stylefiles:
|
22
|
+
:latex: ../ZSUPP_Styles/default.wortsammler.latex
|
23
|
+
:docx: ../ZSUPP_Styles/default.wortsammler.docx
|
24
|
+
:html: ../ZSUPP_Styles/default.wortsammler.css
|
25
|
+
|
26
|
+
:input:
|
27
|
+
- ../001_main/main.md
|
28
|
+
|
29
|
+
:downstream_tracefile: ../ZGEN_RequirementsTracing/RS_Main.traces.md
|
30
|
+
|
31
|
+
:reqtracefile_base: ../ZGEN_RequirementsTracing/ZGEN_Reqtrace
|
32
|
+
|
33
|
+
:traceSortOrder:
|
34
|
+
- RS_MG
|
35
|
+
- RS_TEC
|
36
|
+
|
37
|
+
|
38
|
+
:editions:
|
39
|
+
|
40
|
+
:review:
|
41
|
+
:title: Main requirements (review)
|
42
|
+
:filepart: review
|
43
|
+
:debug: true
|
44
|
+
:format:
|
45
|
+
- latex
|
46
|
+
- docx
|
47
|
+
- html
|
48
|
+
- pdf
|
49
|
+
|
50
|
+
:compact:
|
51
|
+
:title: Main requirements (compact)
|
52
|
+
:filepart: compact
|
53
|
+
:format:
|
54
|
+
- latex
|
55
|
+
- docx
|
56
|
+
- html
|
57
|
+
- pdf
|
58
|
+
|
59
|
+
|
60
|
+
:extended:
|
61
|
+
:title: Main requirements (extended)
|
62
|
+
:filepart: mieter
|
63
|
+
:format:
|
64
|
+
- latex
|
65
|
+
- docx
|
66
|
+
- html
|
67
|
+
- pdf
|
68
|
+
|
69
|
+
|
70
|
+
:folien:
|
71
|
+
:title: Beamer
|
72
|
+
:filepart: folien
|
73
|
+
:format:
|
74
|
+
- beamer
|
75
|
+
- slidy
|
76
|
+
|
77
|
+
:snippets:
|
78
|
+
- ../900_snippets/snippets.xlsx
|
79
|
+
|
@@ -0,0 +1,321 @@
|
|
1
|
+
\documentclass[twoside,a4paper,$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$]{$documentclass$}
|
2
|
+
\usepackage[T1]{fontenc}
|
3
|
+
\usepackage{lmodern}
|
4
|
+
\usepackage{amssymb,amsmath}
|
5
|
+
\usepackage{ifxetex,ifluatex}
|
6
|
+
\usepackage{fixltx2e} % provides \textsubscript
|
7
|
+
% use microtype if available
|
8
|
+
\IfFileExists{microtype.sty}{\usepackage{microtype}}{}
|
9
|
+
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
10
|
+
\usepackage[utf8]{inputenc}
|
11
|
+
$if(euro)$
|
12
|
+
\usepackage{eurosym}
|
13
|
+
$endif$
|
14
|
+
\else % if luatex or xelatex
|
15
|
+
\usepackage{fontspec}
|
16
|
+
\ifxetex
|
17
|
+
\usepackage{xltxtra,xunicode}
|
18
|
+
\fi
|
19
|
+
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
|
20
|
+
\newcommand{\euro}{€}
|
21
|
+
$if(mainfont)$
|
22
|
+
\setmainfont{$mainfont$}
|
23
|
+
$endif$
|
24
|
+
$if(sansfont)$
|
25
|
+
\setsansfont{$sansfont$}
|
26
|
+
$endif$
|
27
|
+
$if(monofont)$
|
28
|
+
\setmonofont{$monofont$}
|
29
|
+
$endif$
|
30
|
+
$if(mathfont)$
|
31
|
+
\setmathfont{$mathfont$}
|
32
|
+
$endif$
|
33
|
+
\fi
|
34
|
+
$if(geometry)$
|
35
|
+
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
|
36
|
+
$endif$
|
37
|
+
$if(natbib)$
|
38
|
+
\usepackage{natbib}
|
39
|
+
\bibliographystyle{plainnat}
|
40
|
+
$endif$
|
41
|
+
$if(biblatex)$
|
42
|
+
\usepackage{biblatex}
|
43
|
+
$if(biblio-files)$
|
44
|
+
\bibliography{$biblio-files$}
|
45
|
+
$endif$
|
46
|
+
$endif$
|
47
|
+
$if(listings)$
|
48
|
+
\usepackage{listings}
|
49
|
+
$endif$
|
50
|
+
$if(lhs)$
|
51
|
+
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
|
52
|
+
$endif$
|
53
|
+
$if(highlighting-macros)$
|
54
|
+
$highlighting-macros$
|
55
|
+
$endif$
|
56
|
+
$if(verbatim-in-note)$
|
57
|
+
\usepackage{fancyvrb}
|
58
|
+
$endif$
|
59
|
+
$if(fancy-enums)$
|
60
|
+
% Redefine labelwidth for lists; otherwise, the enumerate package will cause
|
61
|
+
% markers to extend beyond the left margin.
|
62
|
+
\makeatletter\AtBeginDocument{%
|
63
|
+
\renewcommand{\@listi}
|
64
|
+
{\setlength{\labelwidth}{4em}}
|
65
|
+
}\makeatother
|
66
|
+
\usepackage{enumerate}
|
67
|
+
$endif$
|
68
|
+
\usepackage{longtable}
|
69
|
+
\usepackage{float} % provides the H option for float placement
|
70
|
+
\usepackage{graphicx}
|
71
|
+
% We will generate all images so they have a width \maxwidth. This means
|
72
|
+
% that they will get their normal width if they fit onto the page, but
|
73
|
+
% are scaled down if they would overflow the margins.
|
74
|
+
\makeatletter
|
75
|
+
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
|
76
|
+
\else\Gin@nat@width\fi}
|
77
|
+
\makeatother
|
78
|
+
\let\Oldincludegraphics\includegraphics
|
79
|
+
\makeatletter
|
80
|
+
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
|
81
|
+
\else\Gin@nat@width\fi}
|
82
|
+
\makeatother
|
83
|
+
\let\Oldincludegraphics\includegraphics
|
84
|
+
%\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=\maxwidth]{#1}}
|
85
|
+
% Determine if the image is too wide for the page.
|
86
|
+
%
|
87
|
+
{%
|
88
|
+
\catcode`\@=11\relax%
|
89
|
+
\gdef\includegraphics{\@ifnextchar[{\Oldincludegraphics}{\Oldincludegraphics[width=\maxwidth]}}%
|
90
|
+
}%
|
91
|
+
%
|
92
|
+
|
93
|
+
\ifxetex
|
94
|
+
\usepackage[setpagesize=false, % page size defined by xetex
|
95
|
+
unicode=false, % unicode breaks when used with xetex
|
96
|
+
bookmarksdepth=3, %
|
97
|
+
xetex]{hyperref}
|
98
|
+
\else
|
99
|
+
\usepackage[unicode=true]{hyperref}
|
100
|
+
\fi
|
101
|
+
\hypersetup{breaklinks=true,
|
102
|
+
bookmarks=true,
|
103
|
+
pdfauthor={$author-meta$},
|
104
|
+
pdftitle={$title-meta$},
|
105
|
+
colorlinks=true,
|
106
|
+
urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
|
107
|
+
linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
|
108
|
+
pdfborder={0 0 0}}
|
109
|
+
\urlstyle{same} % don't use monospace font for urls
|
110
|
+
$if(links-as-notes)$
|
111
|
+
% Make links footnotes instead of hotlinks:
|
112
|
+
\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
|
113
|
+
$endif$
|
114
|
+
$if(strikeout)$
|
115
|
+
\usepackage[normalem]{ulem}
|
116
|
+
% avoid problems with \sout in headers with hyperref:
|
117
|
+
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
|
118
|
+
$endif$
|
119
|
+
\setlength{\parindent}{0pt}
|
120
|
+
\setlength{\parskip}{6pt plus 2pt minus 1pt}
|
121
|
+
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
122
|
+
$if(numbersections)$
|
123
|
+
\setcounter{secnumdepth}{5}
|
124
|
+
$else$
|
125
|
+
\setcounter{secnumdepth}{0}
|
126
|
+
$endif$
|
127
|
+
$if(verbatim-in-note)$
|
128
|
+
\VerbatimFootnotes % allows verbatim text in footnotes
|
129
|
+
$endif$
|
130
|
+
$if(lang)$
|
131
|
+
\ifxetex
|
132
|
+
\usepackage{polyglossia}
|
133
|
+
\setmainlanguage{$mainlang$}
|
134
|
+
\else
|
135
|
+
\usepackage[$lang$]{babel}
|
136
|
+
\fi
|
137
|
+
$endif$
|
138
|
+
$for(header-includes)$
|
139
|
+
$header-includes$
|
140
|
+
$endfor$
|
141
|
+
|
142
|
+
$if(title)$
|
143
|
+
\title{$title$}
|
144
|
+
$endif$
|
145
|
+
\author{$for(author)$$author$$sep$ \and $endfor$}
|
146
|
+
\date{$date$}
|
147
|
+
|
148
|
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
149
|
+
%
|
150
|
+
% Wortsammler specific settings
|
151
|
+
%
|
152
|
+
%list environment by reinhard Jahraus
|
153
|
+
{\catcode`\@=11\relax%
|
154
|
+
\gdef\itemize{%
|
155
|
+
\ifnum \@itemdepth >\thr@@\@toodeep\else
|
156
|
+
\advance\@itemdepth\@ne
|
157
|
+
\edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
|
158
|
+
\expandafter
|
159
|
+
\list
|
160
|
+
\csname\@itemitem\endcsname
|
161
|
+
{\def\makelabel##1{\hss\llap{##1}}%
|
162
|
+
\addtolength{\leftmargin}{-10pt}% 29.37pt
|
163
|
+
\addtolength{\rightmargin}{0.0pt}% 0.0pt
|
164
|
+
\addtolength{\labelsep}{0pt}% 23.50pt
|
165
|
+
\addtolength{\itemsep}{-3.0pt}% 5.0pt
|
166
|
+
\addtolength{\parsep}{-1pt}% 5.0pt
|
167
|
+
\addtolength{\topsep}{-5pt}% 10.0pt
|
168
|
+
\addtolength{\partopsep}{0pt}% 3.0pt
|
169
|
+
}%
|
170
|
+
\fi}
|
171
|
+
}%
|
172
|
+
|
173
|
+
%
|
174
|
+
% improve nesting of lists
|
175
|
+
% %http://stackoverflow.com/questions/1935952/maximum-nesting-level-of-lists-in-latex
|
176
|
+
%
|
177
|
+
\usepackage{enumitem}
|
178
|
+
\setlistdepth{9}
|
179
|
+
\setlist[itemize,1]{label=$$\bullet$$}
|
180
|
+
\setlist[itemize,2]{label=$$\bullet$$}
|
181
|
+
\setlist[itemize,3]{label=$$\bullet$$}
|
182
|
+
\setlist[itemize,4]{label=$$\bullet$$}
|
183
|
+
\setlist[itemize,5]{label=$$\bullet$$}
|
184
|
+
\setlist[itemize,6]{label=$$\bullet$$}
|
185
|
+
\setlist[itemize,7]{label=$$\bullet$$}
|
186
|
+
\setlist[itemize,8]{label=$$\bullet$$}
|
187
|
+
\setlist[itemize,9]{label=$$\bullet$$}
|
188
|
+
\renewlist{itemize}{itemize}{9}
|
189
|
+
%
|
190
|
+
% multicol
|
191
|
+
%
|
192
|
+
\usepackage{multicol}
|
193
|
+
$if(linenumbers)$
|
194
|
+
\newcommand{\wsbegintwocol}{}
|
195
|
+
\newcommand{\wsendtwocol}{}
|
196
|
+
$else$
|
197
|
+
\newcommand{\wsbegintwocol}{\begin{multicols}{2}}
|
198
|
+
\newcommand{\wsendtwocol}{\end{multicols}}
|
199
|
+
$endif$
|
200
|
+
|
201
|
+
%
|
202
|
+
% embed an image in the text
|
203
|
+
%
|
204
|
+
% usage: \wsembedimage{file}{r|l}{width}{height}
|
205
|
+
\usepackage{wrapfig}
|
206
|
+
\usepackage{needspace}
|
207
|
+
\newcommand{\wsembedimage}[4]{\needspace{#4}\begin{wrapfigure}{#2}{#3}\centering%
|
208
|
+
\vspace{-5mm}\includegraphics{#1}\vspace{-1cm}\end{wrapfigure}}
|
209
|
+
%
|
210
|
+
% adjust page layout
|
211
|
+
%
|
212
|
+
\setlength{\oddsidemargin}{-0.5cm}
|
213
|
+
\setlength{\evensidemargin}{-0.5cm}
|
214
|
+
\setlength{\textwidth}{17cm}
|
215
|
+
\setlength{\topmargin}{-2.0cm}
|
216
|
+
\setlength{\headheight}{1cm}
|
217
|
+
\setlength{\headsep}{1.5cm}
|
218
|
+
\setlength{\textheight}{25cm}
|
219
|
+
\setlength{\footskip}{1cm}
|
220
|
+
|
221
|
+
% adjust the toc layout
|
222
|
+
\makeatletter
|
223
|
+
% \renewcommand*\l@section{\@dottedtocline{2}{1.8em}{4em}}
|
224
|
+
\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{4em}}
|
225
|
+
\renewcommand*\l@subsubsection{\@dottedtocline{2}{5.5em}{4em}}
|
226
|
+
\makeatother
|
227
|
+
|
228
|
+
\usepackage{pdfpages}
|
229
|
+
\usepackage{bookmark}
|
230
|
+
\usepackage{fancyhdr}
|
231
|
+
\pagestyle{fancy}
|
232
|
+
\chead{\begin{center}\textbf{$title$} $edition$\end{center}}
|
233
|
+
$if(logofile)$
|
234
|
+
\lhead{\includegraphics{$logofile$}}
|
235
|
+
$endif$
|
236
|
+
\rhead{\leftmark}
|
237
|
+
\lfoot{$author$}
|
238
|
+
\rfoot{\today~$date$}
|
239
|
+
\renewcommand{\footrulewidth}{0.4pt}
|
240
|
+
%
|
241
|
+
\renewcommand{\familydefault}{\sfdefault}
|
242
|
+
%
|
243
|
+
% Marginpars shall always be right
|
244
|
+
\makeatletter
|
245
|
+
\def\marginparright{\@mparswitchfalse}
|
246
|
+
\def\marginparoutside{\@mparswitchtrue}
|
247
|
+
\makeatother
|
248
|
+
\marginparright
|
249
|
+
%
|
250
|
+
%
|
251
|
+
\raggedbottom
|
252
|
+
%
|
253
|
+
|
254
|
+
$if(linenumbers)$
|
255
|
+
\usepackage[pagewise]{lineno}
|
256
|
+
\setlength\linenumbersep{1mm}
|
257
|
+
\modulolinenumbers[5]
|
258
|
+
$endif$
|
259
|
+
|
260
|
+
\usepackage{makeidx}
|
261
|
+
\makeindex
|
262
|
+
|
263
|
+
%
|
264
|
+
%\renewcommand{Befehl der Gliederungsebene z.B. \chapter}{\@startsection{Name z.B. chapter}{Ebene z.B. 0}{Einrückung z.B. 0pt}{Abstand zum vorigen Text z.B. 3.5ex plus 1ex minus 0pt\relax}{Abstand zum nachfolgenden Text z.B. 2.5ex plus 0.5ex minus 0pt\relax}{Schrift z.B. \normalfont\Large\bfseries}}
|
265
|
+
%
|
266
|
+
% \makeatletter%
|
267
|
+
% \renewcommand{\chapter}{\@startsection{chapter}{0}{0pt}{3.5ex plus 1ex minus 0pt\relax}{2.5ex plus 0.5ex minus 0pt\relax}{\normalfont\Large\bfseries}}%
|
268
|
+
% \makeatother%
|
269
|
+
%
|
270
|
+
%
|
271
|
+
% Wortsammler extensions end here
|
272
|
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
273
|
+
\begin{document}
|
274
|
+
$if(title)$
|
275
|
+
\maketitle
|
276
|
+
$endif$
|
277
|
+
|
278
|
+
$for(include-before)$
|
279
|
+
$include-before$
|
280
|
+
|
281
|
+
$endfor$
|
282
|
+
$if(title)$
|
283
|
+
\clearpage
|
284
|
+
$endif$
|
285
|
+
|
286
|
+
$if(toc)$
|
287
|
+
{
|
288
|
+
\hypersetup{linkcolor=black}
|
289
|
+
\setcounter{tocdepth}{1}
|
290
|
+
\tableofcontents
|
291
|
+
\newpage
|
292
|
+
}
|
293
|
+
$endif$
|
294
|
+
$if(linenumbers)$
|
295
|
+
\linenumbers
|
296
|
+
$endif$
|
297
|
+
|
298
|
+
$body$
|
299
|
+
|
300
|
+
$if(natbib)$
|
301
|
+
$if(biblio-files)$
|
302
|
+
$if(biblio-title)$
|
303
|
+
$if(book-class)$
|
304
|
+
\renewcommand\bibname{$biblio-title$}
|
305
|
+
$else$
|
306
|
+
\renewcommand\refname{$biblio-title$}
|
307
|
+
$endif$
|
308
|
+
$endif$
|
309
|
+
\bibliography{$biblio-files$}
|
310
|
+
|
311
|
+
$endif$
|
312
|
+
$endif$
|
313
|
+
$if(biblatex)$
|
314
|
+
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
|
315
|
+
|
316
|
+
$endif$
|
317
|
+
$for(include-after)$
|
318
|
+
$include-after$
|
319
|
+
|
320
|
+
$endfor$
|
321
|
+
\end{document}
|