wortsammler 0.0.2
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.
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +131 -0
- data/README.pdf +0 -0
- data/Rakefile +34 -0
- data/bin/wortsammler +4 -0
- data/lib/wortsammler/class.Traceable.md.rb +104 -0
- data/lib/wortsammler/class.Traceable.rb +387 -0
- data/lib/wortsammler/class.proolib.rb +747 -0
- data/lib/wortsammler/class.treetopHelper.rb +117 -0
- data/lib/wortsammler/exe.wortsammler.rb +428 -0
- data/lib/wortsammler/log_helper.rb +8 -0
- data/lib/wortsammler/mdTraceParser.treetop +55 -0
- data/lib/wortsammler/rake_helper.rb +28 -0
- data/lib/wortsammler/version.rb +3 -0
- data/lib/wortsammler.rb +5 -0
- data/pkg/wortsammler-0.0.1.gem +0 -0
- data/resources/default.latex +225 -0
- data/resources/logo.jpg +0 -0
- data/resources/main.md +268 -0
- data/resources/rakefile.rb +5 -0
- data/resources/requirementsSynopsis.graphml +17 -0
- data/resources/sample_the-sample-document.yaml +51 -0
- data/spec/test.graphml +74 -0
- data/spec/traceable_spec.rb +299 -0
- data/spec/wortsammler_spec.rb +168 -0
- data/testresults/wortsammler_testresults.html +408 -0
- data/testresults/wortsammler_testresults.log +59 -0
- data/wortsammler.gemspec +53 -0
- metadata +282 -0
@@ -0,0 +1,225 @@
|
|
1
|
+
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$]{$documentclass$}
|
2
|
+
%list environment by rj
|
3
|
+
% {\catcode`\@=11\relax%
|
4
|
+
% \gdef\itemize{%
|
5
|
+
% \ifnum \@itemdepth >\thr@@\@toodeep\else
|
6
|
+
% \advance\@itemdepth\@ne
|
7
|
+
% \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
|
8
|
+
% \expandafter
|
9
|
+
% \list
|
10
|
+
% \csname\@itemitem\endcsname
|
11
|
+
% {\def\makelabel##1{\hss\llap{##1}}%
|
12
|
+
% \addtolength{\leftmargin}{-10pt}% 29.37pt
|
13
|
+
% \addtolength{\rightmargin}{0.0pt}% 0.0pt
|
14
|
+
% \addtolength{\labelsep}{0pt}% 23.50pt
|
15
|
+
% \addtolength{\itemsep}{-3.0pt}% 5.0pt
|
16
|
+
% \addtolength{\parsep}{0pt}% 5.0pt
|
17
|
+
% \addtolength{\topsep}{-5pt}% 10.0pt
|
18
|
+
% \addtolength{\partopsep}{0pt}% 3.0pt
|
19
|
+
% }%
|
20
|
+
% \fi}
|
21
|
+
% }%
|
22
|
+
%end list environment by Reinhard Jahraus
|
23
|
+
\usepackage[T1]{fontenc}
|
24
|
+
\usepackage{lmodern}
|
25
|
+
\usepackage{amssymb,amsmath}
|
26
|
+
\usepackage{ifxetex,ifluatex}
|
27
|
+
\usepackage{fixltx2e} % provides \textsubscript
|
28
|
+
% use microtype if available
|
29
|
+
\IfFileExists{microtype.sty}{\usepackage{microtype}}{}
|
30
|
+
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
31
|
+
\usepackage[utf8]{inputenc}
|
32
|
+
$if(euro)$
|
33
|
+
\usepackage{eurosym}
|
34
|
+
$endif$
|
35
|
+
\else % if luatex or xelatex
|
36
|
+
\usepackage{fontspec}
|
37
|
+
\ifxetex
|
38
|
+
\usepackage{xltxtra,xunicode}
|
39
|
+
\fi
|
40
|
+
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
|
41
|
+
\newcommand{\euro}{€}
|
42
|
+
$if(mainfont)$
|
43
|
+
\setmainfont{$mainfont$}
|
44
|
+
$endif$
|
45
|
+
$if(sansfont)$
|
46
|
+
\setsansfont{$sansfont$}
|
47
|
+
$endif$
|
48
|
+
$if(monofont)$
|
49
|
+
\setmonofont{$monofont$}
|
50
|
+
$endif$
|
51
|
+
$if(mathfont)$
|
52
|
+
\setmathfont{$mathfont$}
|
53
|
+
$endif$
|
54
|
+
\fi
|
55
|
+
$if(geometry)$
|
56
|
+
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
|
57
|
+
$endif$
|
58
|
+
$if(natbib)$
|
59
|
+
\usepackage{natbib}
|
60
|
+
\bibliographystyle{plainnat}
|
61
|
+
$endif$
|
62
|
+
$if(biblatex)$
|
63
|
+
\usepackage{biblatex}
|
64
|
+
$if(biblio-files)$
|
65
|
+
\bibliography{$biblio-files$}
|
66
|
+
$endif$
|
67
|
+
$endif$
|
68
|
+
$if(listings)$
|
69
|
+
\usepackage{listings}
|
70
|
+
$endif$
|
71
|
+
$if(lhs)$
|
72
|
+
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
|
73
|
+
$endif$
|
74
|
+
$if(highlighting-macros)$
|
75
|
+
$highlighting-macros$
|
76
|
+
$endif$
|
77
|
+
$if(verbatim-in-note)$
|
78
|
+
\usepackage{fancyvrb}
|
79
|
+
$endif$
|
80
|
+
$if(fancy-enums)$
|
81
|
+
% Redefine labelwidth for lists; otherwise, the enumerate package will cause
|
82
|
+
% markers to extend beyond the left margin.
|
83
|
+
\makeatletter\AtBeginDocument{%
|
84
|
+
\renewcommand{\@listi}
|
85
|
+
{\setlength{\labelwidth}{4em}}
|
86
|
+
}\makeatother
|
87
|
+
\usepackage{enumerate}
|
88
|
+
$endif$
|
89
|
+
$if(tables)$
|
90
|
+
\usepackage{ctable}
|
91
|
+
\usepackage{float} % provides the H option for float placement
|
92
|
+
$endif$
|
93
|
+
|
94
|
+
\usepackage{graphicx}
|
95
|
+
% We will generate all images so they have a width \maxwidth. This means
|
96
|
+
% that they will get their normal width if they fit onto the page, but
|
97
|
+
% are scaled down if they would overflow the margins.
|
98
|
+
\makeatletter
|
99
|
+
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
|
100
|
+
\else\Gin@nat@width\fi}
|
101
|
+
\makeatother
|
102
|
+
\let\Oldincludegraphics\includegraphics
|
103
|
+
\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=\maxwidth]{#1}}
|
104
|
+
|
105
|
+
\ifxetex
|
106
|
+
\usepackage[setpagesize=false, % page size defined by xetex
|
107
|
+
unicode=false, % unicode breaks when used with xetex
|
108
|
+
xetex]{hyperref}
|
109
|
+
\else
|
110
|
+
\usepackage[unicode=true]{hyperref}
|
111
|
+
\fi
|
112
|
+
\hypersetup{breaklinks=true,
|
113
|
+
bookmarks=true,
|
114
|
+
pdfauthor={$author-meta$},
|
115
|
+
pdftitle={$title-meta$},
|
116
|
+
colorlinks=true,
|
117
|
+
urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
|
118
|
+
linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
|
119
|
+
pdfborder={0 0 0}}
|
120
|
+
$if(links-as-notes)$
|
121
|
+
% Make links footnotes instead of hotlinks:
|
122
|
+
\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
|
123
|
+
$endif$
|
124
|
+
$if(strikeout)$
|
125
|
+
\usepackage[normalem]{ulem}
|
126
|
+
% avoid problems with \sout in headers with hyperref:
|
127
|
+
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
|
128
|
+
$endif$
|
129
|
+
\setlength{\parindent}{0pt}
|
130
|
+
\setlength{\parskip}{6pt plus 2pt minus 1pt}
|
131
|
+
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
132
|
+
$if(numbersections)$
|
133
|
+
$else$
|
134
|
+
\setcounter{secnumdepth}{0}
|
135
|
+
$endif$
|
136
|
+
$if(verbatim-in-note)$
|
137
|
+
\VerbatimFootnotes % allows verbatim text in footnotes
|
138
|
+
$endif$
|
139
|
+
$if(lang)$
|
140
|
+
\ifxetex
|
141
|
+
\usepackage{polyglossia}
|
142
|
+
\setmainlanguage{$mainlang$}
|
143
|
+
\else
|
144
|
+
\usepackage[$lang$]{babel}
|
145
|
+
\fi
|
146
|
+
$endif$
|
147
|
+
$for(header-includes)$
|
148
|
+
$header-includes$
|
149
|
+
$endfor$
|
150
|
+
|
151
|
+
$if(title)$
|
152
|
+
\title{$title$}
|
153
|
+
$endif$
|
154
|
+
\author{$for(author)$$author$$sep$ \and $endfor$}
|
155
|
+
\date{$date$}
|
156
|
+
|
157
|
+
\setlength{\oddsidemargin}{0cm}
|
158
|
+
\setlength{\evensidemargin}{0cm}
|
159
|
+
\setlength{\textwidth}{16cm}
|
160
|
+
\setlength{\topmargin}{-2cm}
|
161
|
+
\setlength{\headheight}{1cm}
|
162
|
+
\setlength{\headsep}{1cm}
|
163
|
+
\setlength{\textheight}{23cm}
|
164
|
+
\setlength{\footskip}{1cm}
|
165
|
+
|
166
|
+
% adjust the toc layout
|
167
|
+
\makeatletter
|
168
|
+
% \renewcommand*\l@section{\@dottedtocline{2}{1.8em}{4em}}
|
169
|
+
\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{4em}}
|
170
|
+
\renewcommand*\l@subsubsection{\@dottedtocline{2}{5.5em}{4em}}
|
171
|
+
\makeatother
|
172
|
+
|
173
|
+
\usepackage{fancyhdr}
|
174
|
+
\pagestyle{fancy}
|
175
|
+
\chead{\begin{center}\textbf{$title$}\end{center}}
|
176
|
+
%\lhead{\includegraphics{logo.jpg}}
|
177
|
+
\rhead{\leftmark}
|
178
|
+
\lfoot{www.weichel21.de}
|
179
|
+
\rfoot{\today}
|
180
|
+
\renewcommand{\footrulewidth}{0.4pt}
|
181
|
+
%
|
182
|
+
\renewcommand{\familydefault}{\sfdefault}
|
183
|
+
%
|
184
|
+
%
|
185
|
+
\begin{document}
|
186
|
+
$if(title)$
|
187
|
+
\maketitle
|
188
|
+
\clearpage
|
189
|
+
$endif$
|
190
|
+
|
191
|
+
$for(include-before)$
|
192
|
+
$include-before$
|
193
|
+
|
194
|
+
$endfor$
|
195
|
+
$if(toc)$
|
196
|
+
{
|
197
|
+
\hypersetup{linkcolor=black}
|
198
|
+
\tableofcontents
|
199
|
+
\newpage
|
200
|
+
}
|
201
|
+
$endif$
|
202
|
+
$body$
|
203
|
+
|
204
|
+
$if(natbib)$
|
205
|
+
$if(biblio-files)$
|
206
|
+
$if(biblio-title)$
|
207
|
+
$if(book-class)$
|
208
|
+
\renewcommand\bibname{$biblio-title$}
|
209
|
+
$else$
|
210
|
+
\renewcommand\refname{$biblio-title$}
|
211
|
+
$endif$
|
212
|
+
$endif$
|
213
|
+
\bibliography{$biblio-files$}
|
214
|
+
|
215
|
+
$endif$
|
216
|
+
$endif$
|
217
|
+
$if(biblatex)$
|
218
|
+
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
|
219
|
+
|
220
|
+
$endif$
|
221
|
+
$for(include-after)$
|
222
|
+
$include-after$
|
223
|
+
|
224
|
+
$endfor$
|
225
|
+
\end{document}
|
data/resources/logo.jpg
ADDED
Binary file
|
data/resources/main.md
ADDED
@@ -0,0 +1,268 @@
|
|
1
|
+
% Wortsammler sample document
|
2
|
+
% Bernhard Weichel; and others
|
3
|
+
% date
|
4
|
+
|
5
|
+
# Introduction
|
6
|
+
|
7
|
+
This is a sample document for Wortsammler
|
8
|
+
|
9
|
+
# Anforderung an Dokumentenaufbereiter
|
10
|
+
|
11
|
+
- [RS_Comp_003] **Steuerung Dokumentenzusammenstellung**
|
12
|
+
{Dokumentenzusammenstellungen soll über ein manifest
|
13
|
+
->[RS_Comp_007] gesteuert werden.
|
14
|
+
|
15
|
+
- Die Manifeste sollen als Laufzeitparameter übergeben werden
|
16
|
+
- Das Manifest enthält auch die Ausgabedatei
|
17
|
+
|
18
|
+
}(RS_DM_014, RS_DM_010, RS_DM_005)
|
19
|
+
|
20
|
+
- [RS_Comp_004] **Prozessierung Einzeldokument** {Soll Dokumente
|
21
|
+
verschiedenen Umfangs erzeugen können:
|
22
|
+
|
23
|
+
- einzelnes Files
|
24
|
+
- zu Prüfzwecken
|
25
|
+
|
26
|
+
Steuerung soll über Konfiguration (Manifest) erfolgen
|
27
|
+
->[RS_Comp_007].
|
28
|
+
|
29
|
+
}()
|
30
|
+
|
31
|
+
- [RS_Comp_005] **Erstellung Loseblattsammlung** {Soll Dokumente
|
32
|
+
verschiedenen Umfangs erzeugen können:
|
33
|
+
|
34
|
+
- kann aus dem Manifest errechnet werden ->[RS_Comp_007]
|
35
|
+
|
36
|
+
}()
|
37
|
+
|
38
|
+
- [RS_Comp_006] **Inkrementelle Verarbeitung** {Soll nur auf
|
39
|
+
geänderte Dokumente reagieren können:
|
40
|
+
|
41
|
+
- ähnlich wie make/rake
|
42
|
+
|
43
|
+
}()
|
44
|
+
|
45
|
+
- [RS_Comp_007] **Anforderungen an Manifest** {Folgende
|
46
|
+
Anforderungen gelten für das Manifest
|
47
|
+
- einfach bearbeiten - nur liste der Files
|
48
|
+
- Markdown-lite
|
49
|
+
- Yaml
|
50
|
+
|
51
|
+
Inhalte im Manifest sind
|
52
|
+
|
53
|
+
- Name der Konfiguration
|
54
|
+
- Ausgabeverzeichnis
|
55
|
+
- Ausgabeformat
|
56
|
+
- Name des generierten Dokumentes
|
57
|
+
- Formate in denen das Dokument generiert wird. Werte hierfür
|
58
|
+
ergeben sich aus den Anforderungen an die Aufbereitet
|
59
|
+
- zu verarbeitende Eingabedateien. Diese werden in der Reihenfolge
|
60
|
+
verarbeitet wie sie aufgeführt sind.
|
61
|
+
- Optionen für die jeweiligen Formate.
|
62
|
+
- zu bearbeitende Zielgruppen ->[RS_Comp_008]
|
63
|
+
|
64
|
+
<!-- -->
|
65
|
+
|
66
|
+
Beispiel für ein manifest
|
67
|
+
|
68
|
+
-
|
69
|
+
:name: komplett
|
70
|
+
:outdir: ../ZGEN_Documents
|
71
|
+
:outname: RS_Requirements-Ngopm
|
72
|
+
:format:
|
73
|
+
- pdf
|
74
|
+
- html
|
75
|
+
- rtf
|
76
|
+
- docx
|
77
|
+
- latex
|
78
|
+
|
79
|
+
:lang: german
|
80
|
+
|
81
|
+
:vars:
|
82
|
+
:lang: german
|
83
|
+
|
84
|
+
:editions:
|
85
|
+
:intern:
|
86
|
+
:title: Interne Ausgabe
|
87
|
+
:filepart: _intern
|
88
|
+
:extern:
|
89
|
+
:title: Externe Ausgabe
|
90
|
+
:filepart: _extern
|
91
|
+
:mieter:
|
92
|
+
:title: Ausgabe für Mieter
|
93
|
+
:filepart: _mieter
|
94
|
+
:ea:
|
95
|
+
:title: Ausgabe für ehrenamtliche Mitarbeiter
|
96
|
+
:filepart: _ma-ehrenamtlich
|
97
|
+
:ha:
|
98
|
+
:title: Ausgabe für hauptamtliche Mitarbeiter
|
99
|
+
:filepart: _ma-hauptamtlich
|
100
|
+
:1:
|
101
|
+
:title: Ausgabe für erste hauptamtliche Mitarbeiter
|
102
|
+
:filepart: _ma-hauptamtlich-1
|
103
|
+
|
104
|
+
:input:
|
105
|
+
- ../RS_Process/RS_Process.md
|
106
|
+
- ../RS_Tooling/RS_Tooling.md
|
107
|
+
- ../RS_Tooling/RS_MarkdownCleaner.md
|
108
|
+
- ../RS_Tooling/RS_MarkdownEditor.md
|
109
|
+
- ../RS_Tooling/RS_DocumentComposer.md
|
110
|
+
- ../TPL_DirectoryStructure/TPL_DirectoryStructure.md
|
111
|
+
- ../TR_Installation/TR_Installation.md
|
112
|
+
- ../TR_Installation/TR_Proo-Handbuch.md
|
113
|
+
- ../ZGEN_RequirementsTracing/ZGEN_Reqtrace.md
|
114
|
+
|
115
|
+
:snippets:
|
116
|
+
- ../TS_Markdown/TS_Snippets.yaml
|
117
|
+
- ../TS_Markdown/TS_MoreSnippets.yaml
|
118
|
+
|
119
|
+
}(RS_Comp_003)
|
120
|
+
|
121
|
+
## Zielgruppenspezifische Ausgaben
|
122
|
+
|
123
|
+
Dieser Abschnitt behandelt speziell die Anforderungen an flexible
|
124
|
+
Dokumentenausgabe
|
125
|
+
|
126
|
+
- [RS_Comp_001] **Flexibler Dokumentumfang** {Soll Dokumente
|
127
|
+
verschiedenen Umfangs erzeugen können:
|
128
|
+
|
129
|
+
- einzelnes Files
|
130
|
+
- Zusammengestelltes Dokument
|
131
|
+
|
132
|
+
}(RS_Comp_003)
|
133
|
+
|
134
|
+
- [RS_Comp_002] **Flexible Dokumentendarstellung** {Sollte Dokumente
|
135
|
+
in verschiedener Darstellung erzeugen können:
|
136
|
+
- Seitenlayout
|
137
|
+
- Detaillierungsgrad (z.B. RequirementsMarken ausblenden) }
|
138
|
+
(RS_Comp_003)
|
139
|
+
|
140
|
+
- [RS_Comp_008] **Zielgruppenspezifische Ausgaben (Editionen)** { Es
|
141
|
+
soll möglich sein Zielgruppenspezifische Ausgaben zu erstellen.
|
142
|
+
|
143
|
+
- Dabei wird die Zielgruppe durch eine spezifische Zeichenkette
|
144
|
+
umgeschaltet (Durchstreichung), die auch in standard Markdown
|
145
|
+
Programmen eine sinnvolle Ausgabe liefert:
|
146
|
+
|
147
|
+
`~~ED intern extern~~` ab hier gilt: Text erscheint in Ausgabe
|
148
|
+
`intern` als auch in `extern`
|
149
|
+
|
150
|
+
Es handelt sich also um ein durchgestrichenes Muster als
|
151
|
+
regulärer Ausdruck
|
152
|
+
|
153
|
+
~~ED((\s* \S+)*)~~
|
154
|
+
|
155
|
+
- Die Umschaltung wirkt ab einschliesslich der Zeile, die die
|
156
|
+
Umschaltung enthält, bis zum Aufruf einer neuen Umschaltung.
|
157
|
+
|
158
|
+
- Die möglichen Zielgruppen werden im Manifest festgelegt
|
159
|
+
->[RS_Comp_007] daselbst Eintrag `:editions:`
|
160
|
+
|
161
|
+
- Eine vorgegebene Zielgruppe `all` erzeugt keine spezifische
|
162
|
+
Ausgabe. Sie kennzeichnet vielmehr Inhalte, die in **allen**
|
163
|
+
Ausgaben gleichermassen enthalten sind.
|
164
|
+
|
165
|
+
- Bei einer Aufteilung auf mehrere Dateien wird empfohlen am Ende
|
166
|
+
einer jeden Datei auf `all` zu schalten. Dadurch wird das System
|
167
|
+
einfache wartbar.
|
168
|
+
|
169
|
+
}(RS_Comp_003)
|
170
|
+
|
171
|
+
Alternativen für die Umschaltung sind:
|
172
|
+
|
173
|
+
\marginpar{intern}
|
174
|
+
|
175
|
+
- ~~ED intern extern~~ und so geht es weiter
|
176
|
+
|
177
|
+
- ^ZG intern extern^ und nun kommt der text der nur extern ist
|
178
|
+
|
179
|
+
\marginpar{extern}
|
180
|
+
|
181
|
+
- ~ZG intern extern~ und hier ist der text der nur intern ist
|
182
|
+
|
183
|
+
- <!-- ZG intern extern --> und nun geht es weiter
|
184
|
+
|
185
|
+
\marginpar{intern}
|
186
|
+
|
187
|
+
- und nun geht es intern weiter Gelaber und weiter
|
188
|
+
|
189
|
+
- [RS_Comp_009] **Gesamtausgabe mit allen Texten zur Prüfung**
|
190
|
+
{Sollte Dokumente Eine Gesamtausgabe mit allen Texten zur
|
191
|
+
Überprüfung soll erstellt werden. In diesem Fall werden die Ausgaben
|
192
|
+
am Rand notiert. }(RS_Comp_003)
|
193
|
+
|
194
|
+
- [RS_Comp_010] **Erstellung aller Ausgaben mit einem Befehl** {Es
|
195
|
+
sollen immer alle Ausgaben gleichermassen generiert werden. Dabei
|
196
|
+
gilt:
|
197
|
+
|
198
|
+
- Der Dateiname für die generierten Dokumente bildet sich nach
|
199
|
+
|
200
|
+
`{:outname:}_{:edition:.:filepart:}.{format}`
|
201
|
+
|
202
|
+
- In der Kopfzeile des Dokumentes wird `:edition:.:title:`
|
203
|
+
eingefügt, so dass die Ausgabe auf jeder Seite identifiziert
|
204
|
+
werden kann.
|
205
|
+
|
206
|
+
Ohne Angabe einer Zielgruppe bzw. mit der Angabe `all` soll
|
207
|
+
wortsammler alle Ausgaben erstellen.
|
208
|
+
|
209
|
+
Die Angabe einer einzelnen Zielgruppe erstellt dann auch nur die
|
210
|
+
gewählte Ausgabe.
|
211
|
+
|
212
|
+
}(RS_Comp_003)
|
213
|
+
|
214
|
+
## Processing TODO - open issues
|
215
|
+
|
216
|
+
Paragraphs like starting with
|
217
|
+
|
218
|
+
TODO: #13 do something are used to manage the open issues
|
219
|
+
|
220
|
+
## Processing the traceables
|
221
|
+
|
222
|
+
## Including Files
|
223
|
+
|
224
|
+
- [RS_Comp_011] **including Plain pdf-Pages**{ PDF pages can be
|
225
|
+
included by
|
226
|
+
|
227
|
+
`~~PDF "lib/01234_particularPdf.pdf" "Das ist der Eintrag im Inhaltsverzeichnis" 1 2-4~~`
|
228
|
+
|
229
|
+
It is done in a markdown verbatim section. By this, Pandoc does not
|
230
|
+
add linebreaks in the command such that it can be processed with
|
231
|
+
regular expressions.
|
232
|
+
|
233
|
+
}(RS_Comp_003)
|
234
|
+
|
235
|
+
- [RS_Comp_014] **Including markdown files** {
|
236
|
+
|
237
|
+
`~~MD "lib/01234/xxxx/yyyy.md"~~`
|
238
|
+
|
239
|
+
will be replaced by the content of the argument. It shold even work
|
240
|
+
inline.
|
241
|
+
|
242
|
+
}(RS_Comp_003)
|
243
|
+
|
244
|
+
## Handling Text Snippets
|
245
|
+
|
246
|
+
- [RS_Comp_012] **Including text Snippets**{ Text Snippts can be
|
247
|
+
included by
|
248
|
+
|
249
|
+
`~~SN {symbol}~~`
|
250
|
+
|
251
|
+
The snippets are taken from one of the snippet databases declared in
|
252
|
+
the manifest ->[RS_Comp_007] according to the format in
|
253
|
+
->[RS_Comp_013]. }()
|
254
|
+
|
255
|
+
- [RS_Conp_013] **Defining text Snippets** {
|
256
|
+
|
257
|
+
Text snippets are defined as a yaml file in the following format:
|
258
|
+
|
259
|
+
:Snippet1: Das ist Snippet 1
|
260
|
+
|
261
|
+
:Snippet2: |- Das ist snippet 2. Es enthält sogar eine Liste
|
262
|
+
|
263
|
+
* Das ist item 1 in Snippet 2
|
264
|
+
|
265
|
+
* Das ist item 2 in Snippet 2
|
266
|
+
|
267
|
+
}(RS_Comp_003)
|
268
|
+
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
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
|
+
</graph>
|
17
|
+
</graphml>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
-
|
2
|
+
:name: komplett
|
3
|
+
:outdir: ../ZGEN_Documents
|
4
|
+
:outname: RS_Main
|
5
|
+
:format:
|
6
|
+
- latex
|
7
|
+
- docx
|
8
|
+
- html
|
9
|
+
|
10
|
+
:vars:
|
11
|
+
:lang: german
|
12
|
+
:fontsize: 12pt
|
13
|
+
:mainfont: Calibri
|
14
|
+
:sansfont: Calibri
|
15
|
+
:geometry: a4paper
|
16
|
+
|
17
|
+
:stylefiles:
|
18
|
+
:latex: ../ZSUPP_Styles/default.latex
|
19
|
+
:docx: ../ZSUPP_Styles/default.docx
|
20
|
+
:html: ../ZSUPP_Styles/default.css
|
21
|
+
|
22
|
+
:input:
|
23
|
+
- ../001_main/main.md
|
24
|
+
|
25
|
+
:downstream_tracefile: ../ZGEN_RequirementsTracing/RS_Main.traces.md
|
26
|
+
|
27
|
+
:reqtracefile_base: ../ZGEN_RequirementsTracing/ZGEN_Reqtrace
|
28
|
+
|
29
|
+
:traceSortOrder:
|
30
|
+
- RS_MG
|
31
|
+
- RS_TEC
|
32
|
+
|
33
|
+
|
34
|
+
:editions:
|
35
|
+
|
36
|
+
:review:
|
37
|
+
:title: Main requirements (review)
|
38
|
+
:filepart: review
|
39
|
+
:debug: true
|
40
|
+
|
41
|
+
:compact:
|
42
|
+
:title: Main requirements (compact)
|
43
|
+
:filepart: compact
|
44
|
+
|
45
|
+
:extended:
|
46
|
+
:title: Main requirements (extended)
|
47
|
+
:filepart: mieter
|
48
|
+
|
49
|
+
:snippets:
|
50
|
+
- ../900_snippets/snippets.xlsx
|
51
|
+
|
data/spec/test.graphml
ADDED
@@ -0,0 +1,74 @@
|
|
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="t0">
|
17
|
+
<data key="d6">
|
18
|
+
<y:ShapeNode>
|
19
|
+
<y:NodeLabel>[t0] </y:NodeLabel>
|
20
|
+
</y:ShapeNode>
|
21
|
+
</data>
|
22
|
+
</node>
|
23
|
+
<node id="t1">
|
24
|
+
<data key="d6">
|
25
|
+
<y:ShapeNode>
|
26
|
+
<y:NodeLabel>[t1] </y:NodeLabel>
|
27
|
+
</y:ShapeNode>
|
28
|
+
</data>
|
29
|
+
</node>
|
30
|
+
<edge source="t1" target="t0" id="t0_t1"/>
|
31
|
+
<node id="t10">
|
32
|
+
<data key="d6">
|
33
|
+
<y:ShapeNode>
|
34
|
+
<y:NodeLabel>[t10] </y:NodeLabel>
|
35
|
+
</y:ShapeNode>
|
36
|
+
</data>
|
37
|
+
</node>
|
38
|
+
<edge source="t10" target="t1" id="t1_t10"/>
|
39
|
+
<edge source="t10" target="t2" id="t2_t10"/>
|
40
|
+
<node id="t100">
|
41
|
+
<data key="d6">
|
42
|
+
<y:ShapeNode>
|
43
|
+
<y:NodeLabel>[t100] </y:NodeLabel>
|
44
|
+
</y:ShapeNode>
|
45
|
+
</data>
|
46
|
+
</node>
|
47
|
+
<edge source="t100" target="t10" id="t10_t100"/>
|
48
|
+
<node id="t2">
|
49
|
+
<data key="d6">
|
50
|
+
<y:ShapeNode>
|
51
|
+
<y:NodeLabel>[t2] </y:NodeLabel>
|
52
|
+
</y:ShapeNode>
|
53
|
+
</data>
|
54
|
+
</node>
|
55
|
+
<edge source="t2" target="t0" id="t0_t2"/>
|
56
|
+
<node id="t20">
|
57
|
+
<data key="d6">
|
58
|
+
<y:ShapeNode>
|
59
|
+
<y:NodeLabel>[t20] </y:NodeLabel>
|
60
|
+
</y:ShapeNode>
|
61
|
+
</data>
|
62
|
+
</node>
|
63
|
+
<edge source="t20" target="t2" id="t2_t20"/>
|
64
|
+
<edge source="t20" target="t1" id="t1_t20"/>
|
65
|
+
<node id="t200">
|
66
|
+
<data key="d6">
|
67
|
+
<y:ShapeNode>
|
68
|
+
<y:NodeLabel>[t200] </y:NodeLabel>
|
69
|
+
</y:ShapeNode>
|
70
|
+
</data>
|
71
|
+
</node>
|
72
|
+
<edge source="t200" target="t20" id="t20_t200"/>
|
73
|
+
</graph>
|
74
|
+
</graphml>
|