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.
Files changed (69) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +46 -4
  3. data/.gitpod.Dockerfile +32 -0
  4. data/.gitpod.yml +1 -0
  5. data/.idea/.name +1 -0
  6. data/.idea/.rakeTasks +7 -0
  7. data/.idea/202_wortsammler-gem.iml +119 -0
  8. data/.idea/compiler.xml +22 -0
  9. data/.idea/encodings.xml +6 -0
  10. data/.idea/inspectionProfiles/profiles_settings.xml +7 -0
  11. data/.idea/misc.xml +4 -0
  12. data/.idea/modules.xml +9 -0
  13. data/.idea/vcs.xml +7 -0
  14. data/Gemfile +1 -0
  15. data/README.md +25 -28
  16. data/Rakefile +3 -3
  17. data/changelog.md +17 -1
  18. data/lib/wortsammler.rb +61 -54
  19. data/lib/wortsammler/class.Traceable.md.rb +9 -7
  20. data/lib/wortsammler/class.Traceable.rb +74 -60
  21. data/lib/wortsammler/class.proolib.rb +1102 -982
  22. data/lib/wortsammler/mdTraceParser.treetop +2 -2
  23. data/lib/wortsammler/version.rb +1 -1
  24. data/resources/default.wortsammler.latex +4 -3
  25. data/resources/main.md +1 -1
  26. data/resources/pandocdefault.docx +0 -0
  27. data/resources/pandocdefault.epub +70 -0
  28. data/resources/pandocdefault.html +73 -0
  29. data/resources/pandocdefault.latex +403 -0
  30. data/resources/sample_the-sample-document.yaml +27 -1
  31. data/spec/TC_EXP_001.md +2 -1
  32. data/spec/Zupfnoter.jpg +0 -0
  33. data/spec/tc_exp_003_reference.txt +14 -29
  34. data/spec/test_beautify.md +13 -1
  35. data/spec/test_beautify_reference.md +17 -3
  36. data/spec/test_mkindex_reference.txt +9 -38
  37. data/spec/test_slides.md +38 -0
  38. data/spec/wortsammler_spec.rb +186 -150
  39. data/testproject.xx/30_Sources/001_Main/main.md +273 -0
  40. data/testproject.xx/30_Sources/900_snippets/snippets.xlsx +0 -0
  41. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.docx +0 -0
  42. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.html +145 -0
  43. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.latex +416 -0
  44. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_compact.pdf +0 -0
  45. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.beamer.pdf +0 -0
  46. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.docx +0 -0
  47. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.html +145 -0
  48. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.latex +416 -0
  49. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_folien.pdf +0 -0
  50. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.docx +0 -0
  51. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.html +145 -0
  52. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.latex +416 -0
  53. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_mieter.pdf +0 -0
  54. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_review.latex +582 -0
  55. data/testproject.xx/30_Sources/ZGEN_Documents/RS_Main_review.pdf +0 -0
  56. data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/RS_Main.traces.md +56 -0
  57. data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_Reqtrace.graphml +119 -0
  58. data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_Reqtrace.md +50 -0
  59. data/testproject.xx/30_Sources/ZGEN_RequirementsTracing/ZGEN_ReqtraceCompare.txt +52 -0
  60. data/testproject.xx/30_Sources/ZSUPP_Manifests/sample_the-sample-document.yaml +79 -0
  61. data/testproject.xx/30_Sources/ZSUPP_Styles/default.wortsammler.latex +321 -0
  62. data/testproject.xx/30_Sources/ZSUPP_Styles/logo.jpg +0 -0
  63. data/testproject.xx/30_Sources/ZSUPP_Tools/rakefile.rb +5 -0
  64. data/testresults/wortsammler_testresults.html +49 -466
  65. data/uninstall-pandoc.pl +79 -0
  66. data/wortsammler.gemspec +7 -4
  67. metadata +84 -14
  68. data/testresults/wortsammler_testresults.log +0 -325
  69. data/wortsammler-gem.sublime-project +0 -8
@@ -0,0 +1,145 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" lang="german" xml:lang="german">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5
+ <meta http-equiv="Content-Style-Type" content="text/css" />
6
+ <meta name="generator" content="pandoc" />
7
+ <meta name="author" content="Bernhard Weichel" />
8
+ <meta name="author" content="and others" />
9
+ <title>Wortsammler sample document</title>
10
+ <style type="text/css">code{white-space: pre;}</style>
11
+ </head>
12
+ <body>
13
+ <div id="header">
14
+ <h1 class="title">Beamer</h1>
15
+ <h2 class="author">Bernhard Weichel</h2>
16
+ <h2 class="author">and others</h2>
17
+ <h3 class="date">2013/05</h3>
18
+ </div>
19
+ <div id="TOC">
20
+ <ul>
21
+ <li><a href="#introduction"><span class="toc-section-number">1</span> Introduction</a></li>
22
+ <li><a href="#anforderung-an-dokumentenaufbereiter"><span class="toc-section-number">2</span> Anforderung an Dokumentenaufbereiter</a><ul>
23
+ <li><a href="#zielgruppenspezifische-ausgaben"><span class="toc-section-number">2.1</span> Zielgruppenspezifische Ausgaben</a></li>
24
+ </ul></li>
25
+ </ul>
26
+ </div>
27
+ <h1 id="introduction"><span class="header-section-number">1</span> Introduction</h1>
28
+ <p>This is a sample document for Wortsammler</p>
29
+ <h1 id="anforderung-an-dokumentenaufbereiter"><span class="header-section-number">2</span> Anforderung an Dokumentenaufbereiter</h1>
30
+ <ul>
31
+ <li><p><a id="RS-Comp-003">[RS_Comp_003]</a> <strong>Steuerung Dokumentenzusammenstellung</strong> {Dokumentenzusammenstellungen soll &#252;ber ein manifest [<a href="#RS-Comp-007">RS_Comp_007</a>] gesteuert werden.</p>
32
+ <ul>
33
+ <li>Die Manifeste sollen als Laufzeitparameter &#252;bergeben werden</li>
34
+ <li>Das Manifest enth&#228;lt auch die Ausgabedatei</li>
35
+ </ul>
36
+ <p>}(<a href="#RS-DM-014">RS_DM_014</a>, <a href="#RS-DM-010">RS_DM_010</a>, <a href="#RS-DM-005">RS_DM_005</a>)</p></li>
37
+ <li><p><a id="RS-Comp-004">[RS_Comp_004]</a> <strong>Prozessierung Einzeldokument</strong> {Soll Dokumente verschiedenen Umfangs erzeugen k&#246;nnen:</p>
38
+ <ul>
39
+ <li>einzelnes Files</li>
40
+ <li>zu Pr&#252;fzwecken</li>
41
+ </ul>
42
+ <p>Steuerung soll &#252;ber Konfiguration (Manifest) erfolgen [<a href="#RS-Comp-007">RS_Comp_007</a>].</p>
43
+ <p>}()</p></li>
44
+ <li><p><a id="RS-Comp-005">[RS_Comp_005]</a> <strong>Erstellung Loseblattsammlung</strong> {Soll Dokumente verschiedenen Umfangs erzeugen k&#246;nnen:</p>
45
+ <ul>
46
+ <li>kann aus dem Manifest errechnet werden [<a href="#RS-Comp-007">RS_Comp_007</a>]</li>
47
+ </ul>
48
+ <p>}()</p></li>
49
+ <li><p><a id="RS-Comp-006">[RS_Comp_006]</a> <strong>Inkrementelle Verarbeitung</strong> {Soll nur auf ge&#228;nderte Dokumente reagieren k&#246;nnen:</p>
50
+ <ul>
51
+ <li>&#228;hnlich wie make/rake</li>
52
+ </ul>
53
+ <p>}()</p></li>
54
+ <li><a id="RS-Comp-007">[RS_Comp_007]</a> <strong>Anforderungen an Manifest</strong> {Folgende Anforderungen gelten f&#252;r das Manifest
55
+ <ul>
56
+ <li>einfach bearbeiten - nur liste der Files</li>
57
+ <li>Markdown-lite</li>
58
+ <li>Yaml</li>
59
+ </ul>
60
+ <p>Inhalte im Manifest sind</p>
61
+ <ul>
62
+ <li>Name der Konfiguration</li>
63
+ <li>Ausgabeverzeichnis</li>
64
+ <li>Ausgabeformat</li>
65
+ <li>Name des generierten Dokumentes</li>
66
+ <li>Formate in denen das Dokument generiert wird. Werte hierf&#252;r ergeben sich aus den Anforderungen an die Aufbereitet</li>
67
+ <li>zu verarbeitende Eingabedateien. Diese werden in der Reihenfolge verarbeitet wie sie aufgef&#252;hrt sind.</li>
68
+ <li>Optionen f&#252;r die jeweiligen Formate.</li>
69
+ <li>zu bearbeitende Zielgruppen [<a href="#RS-Comp-008">RS_Comp_008</a>]</li>
70
+ </ul>
71
+ <!-- -->
72
+ <p>Beispiel f&#252;r ein manifest</p>
73
+ <pre><code> -
74
+ :name: komplett
75
+ :outdir: ../ZGEN_Documents
76
+ :outname: RS_Requirements-Ngopm
77
+ :format:
78
+ - pdf
79
+ - html
80
+ - rtf
81
+ - docx
82
+ - latex
83
+
84
+ :lang: german
85
+
86
+ :vars:
87
+ :lang: german
88
+
89
+ :editions:
90
+ :intern:
91
+ :title: Interne Ausgabe
92
+ :filepart: _intern
93
+ :extern:
94
+ :title: Externe Ausgabe
95
+ :filepart: _extern
96
+ :mieter:
97
+ :title: Ausgabe f&#252;r Mieter
98
+ :filepart: _mieter
99
+ :ea:
100
+ :title: Ausgabe f&#252;r ehrenamtliche Mitarbeiter
101
+ :filepart: _ma-ehrenamtlich
102
+ :ha:
103
+ :title: Ausgabe f&#252;r hauptamtliche Mitarbeiter
104
+ :filepart: _ma-hauptamtlich
105
+ :1:
106
+ :title: Ausgabe f&#252;r erste hauptamtliche Mitarbeiter
107
+ :filepart: _ma-hauptamtlich-1
108
+
109
+ :input:
110
+ - ../RS_Process/RS_Process.md
111
+ - ../RS_Tooling/RS_Tooling.md
112
+ - ../RS_Tooling/RS_MarkdownCleaner.md
113
+ - ../RS_Tooling/RS_MarkdownEditor.md
114
+ - ../RS_Tooling/RS_DocumentComposer.md
115
+ - ../TPL_DirectoryStructure/TPL_DirectoryStructure.md
116
+ - ../TR_Installation/TR_Installation.md
117
+ - ../TR_Installation/TR_Proo-Handbuch.md
118
+ - ../ZGEN_RequirementsTracing/ZGEN_Reqtrace.md
119
+
120
+ :snippets:
121
+ - ../TS_Markdown/TS_Snippets.yaml
122
+ - ../TS_Markdown/TS_MoreSnippets.yaml</code></pre>
123
+ <p>}(<a href="#RS-Comp-003">RS_Comp_003</a>)</p></li>
124
+ </ul>
125
+ <h2 id="zielgruppenspezifische-ausgaben"><span class="header-section-number">2.1</span> Zielgruppenspezifische Ausgaben</h2>
126
+ <p>Dieser Abschnitt behandelt speziell die Anforderungen an flexible Dokumentenausgabe</p>
127
+ <ul>
128
+ <li><p><a id="RS-Comp-001">[RS_Comp_001]</a> <strong>Flexibler Dokumentumfang</strong> {Soll Dokumente verschiedenen Umfangs erzeugen k&#246;nnen:</p>
129
+ <ul>
130
+ <li>einzelnes Files</li>
131
+ <li>Zusammengestelltes Dokument</li>
132
+ </ul>
133
+ <p>}(<a href="#RS-Comp-003">RS_Comp_003</a>)</p></li>
134
+ <li><a id="RS-Comp-002">[RS_Comp_002]</a> <strong>Flexible Dokumentendarstellung</strong> {Sollte Dokumente in verschiedener Darstellung erzeugen k&#246;nnen:
135
+ <ul>
136
+ <li>Seitenlayout</li>
137
+ <li>Detaillierungsgrad (z.B. RequirementsMarken ausblenden) } (RS_Comp_003)</li>
138
+ </ul></li>
139
+ <li><p><a id="RS-Comp-008">[RS_Comp_008]</a> <strong>Zielgruppenspezifische Ausgaben (Editionen)</strong> { Es soll m&#246;glich sein Zielgruppenspezifische Ausgaben zu erstellen.</p>
140
+ <ul>
141
+ <li>Dabei wird die Zielgruppe durch eine spezifische Zeichenkette umgeschaltet (Durchstreichung), die auch in standard Markdown Programmen eine sinnvolle Ausgabe liefert:</li>
142
+ </ul></li>
143
+ </ul>
144
+ </body>
145
+ </html>
@@ -0,0 +1,416 @@
1
+ \documentclass[twoside,a4paper,12pt,german,]{article}
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
+ \else % if luatex or xelatex
12
+ \usepackage{fontspec}
13
+ \ifxetex
14
+ \usepackage{xltxtra,xunicode}
15
+ \fi
16
+ \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
17
+ \newcommand{\euro}{€}
18
+ \setmainfont{Calibri}
19
+ \setsansfont{Calibri}
20
+ \fi
21
+ \usepackage[a4paper]{geometry}
22
+ \usepackage{longtable}
23
+ \usepackage{float} % provides the H option for float placement
24
+ \usepackage{graphicx}
25
+ % We will generate all images so they have a width \maxwidth. This means
26
+ % that they will get their normal width if they fit onto the page, but
27
+ % are scaled down if they would overflow the margins.
28
+ \makeatletter
29
+ \def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
30
+ \else\Gin@nat@width\fi}
31
+ \makeatother
32
+ \let\Oldincludegraphics\includegraphics
33
+ \makeatletter
34
+ \def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
35
+ \else\Gin@nat@width\fi}
36
+ \makeatother
37
+ \let\Oldincludegraphics\includegraphics
38
+ %\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=\maxwidth]{#1}}
39
+ % Determine if the image is too wide for the page.
40
+ %
41
+ {%
42
+ \catcode`\@=11\relax%
43
+ \gdef\includegraphics{\@ifnextchar[{\Oldincludegraphics}{\Oldincludegraphics[width=\maxwidth]}}%
44
+ }%
45
+ %
46
+
47
+ \ifxetex
48
+ \usepackage[setpagesize=false, % page size defined by xetex
49
+ unicode=false, % unicode breaks when used with xetex
50
+ bookmarksdepth=3, %
51
+ xetex]{hyperref}
52
+ \else
53
+ \usepackage[unicode=true]{hyperref}
54
+ \fi
55
+ \hypersetup{breaklinks=true,
56
+ bookmarks=true,
57
+ pdfauthor={Bernhard Weichel; and others},
58
+ pdftitle={Wortsammler sample document},
59
+ colorlinks=true,
60
+ urlcolor=blue,
61
+ linkcolor=magenta,
62
+ pdfborder={0 0 0}}
63
+ \urlstyle{same} % don't use monospace font for urls
64
+ \setlength{\parindent}{0pt}
65
+ \setlength{\parskip}{6pt plus 2pt minus 1pt}
66
+ \setlength{\emergencystretch}{3em} % prevent overfull lines
67
+ \setcounter{secnumdepth}{5}
68
+ \ifxetex
69
+ \usepackage{polyglossia}
70
+ \setmainlanguage{german}
71
+ \else
72
+ \usepackage[german]{babel}
73
+ \fi
74
+
75
+ \title{Beamer}
76
+ \author{Bernhard Weichel \and and others}
77
+ \date{2013/05}
78
+
79
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
80
+ %
81
+ % Wortsammler specific settings
82
+ %
83
+ %list environment by reinhard Jahraus
84
+ {\catcode`\@=11\relax%
85
+ \gdef\itemize{%
86
+ \ifnum \@itemdepth >\thr@@\@toodeep\else
87
+ \advance\@itemdepth\@ne
88
+ \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
89
+ \expandafter
90
+ \list
91
+ \csname\@itemitem\endcsname
92
+ {\def\makelabel##1{\hss\llap{##1}}%
93
+ \addtolength{\leftmargin}{-10pt}% 29.37pt
94
+ \addtolength{\rightmargin}{0.0pt}% 0.0pt
95
+ \addtolength{\labelsep}{0pt}% 23.50pt
96
+ \addtolength{\itemsep}{-3.0pt}% 5.0pt
97
+ \addtolength{\parsep}{-1pt}% 5.0pt
98
+ \addtolength{\topsep}{-5pt}% 10.0pt
99
+ \addtolength{\partopsep}{0pt}% 3.0pt
100
+ }%
101
+ \fi}
102
+ }%
103
+
104
+ %
105
+ % improve nesting of lists
106
+ % %http://stackoverflow.com/questions/1935952/maximum-nesting-level-of-lists-in-latex
107
+ %
108
+ \usepackage{enumitem}
109
+ \setlistdepth{9}
110
+ \setlist[itemize,1]{label=$\bullet$}
111
+ \setlist[itemize,2]{label=$\bullet$}
112
+ \setlist[itemize,3]{label=$\bullet$}
113
+ \setlist[itemize,4]{label=$\bullet$}
114
+ \setlist[itemize,5]{label=$\bullet$}
115
+ \setlist[itemize,6]{label=$\bullet$}
116
+ \setlist[itemize,7]{label=$\bullet$}
117
+ \setlist[itemize,8]{label=$\bullet$}
118
+ \setlist[itemize,9]{label=$\bullet$}
119
+ \renewlist{itemize}{itemize}{9}
120
+ %
121
+ % multicol
122
+ %
123
+ \usepackage{multicol}
124
+ \newcommand{\wsbegintwocol}{\begin{multicols}{2}}
125
+ \newcommand{\wsendtwocol}{\end{multicols}}
126
+
127
+ %
128
+ % embed an image in the text
129
+ %
130
+ % usage: \wsembedimage{file}{r|l}{width}{height}
131
+ \usepackage{wrapfig}
132
+ \usepackage{needspace}
133
+ \newcommand{\wsembedimage}[4]{\needspace{#4}\begin{wrapfigure}{#2}{#3}\centering%
134
+ \vspace{-5mm}\includegraphics{#1}\vspace{-1cm}\end{wrapfigure}}
135
+ %
136
+ % adjust page layout
137
+ %
138
+ \setlength{\oddsidemargin}{-0.5cm}
139
+ \setlength{\evensidemargin}{-0.5cm}
140
+ \setlength{\textwidth}{17cm}
141
+ \setlength{\topmargin}{-2.0cm}
142
+ \setlength{\headheight}{1cm}
143
+ \setlength{\headsep}{1.5cm}
144
+ \setlength{\textheight}{25cm}
145
+ \setlength{\footskip}{1cm}
146
+
147
+ % adjust the toc layout
148
+ \makeatletter
149
+ % \renewcommand*\l@section{\@dottedtocline{2}{1.8em}{4em}}
150
+ \renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{4em}}
151
+ \renewcommand*\l@subsubsection{\@dottedtocline{2}{5.5em}{4em}}
152
+ \makeatother
153
+
154
+ \usepackage{pdfpages}
155
+ \usepackage{bookmark}
156
+ \usepackage{fancyhdr}
157
+ \pagestyle{fancy}
158
+ \chead{\begin{center}\textbf{Beamer} \end{center}}
159
+ \lhead{\includegraphics{../ZSUPP_Styles/logo.jpg}}
160
+ \rhead{\leftmark}
161
+ \lfoot{Bernhard Weichel}
162
+ \rfoot{\today~2013/05}
163
+ \renewcommand{\footrulewidth}{0.4pt}
164
+ %
165
+ \renewcommand{\familydefault}{\sfdefault}
166
+ %
167
+ % Marginpars shall always be right
168
+ \makeatletter
169
+ \def\marginparright{\@mparswitchfalse}
170
+ \def\marginparoutside{\@mparswitchtrue}
171
+ \makeatother
172
+ \marginparright
173
+ %
174
+ %
175
+ \raggedbottom
176
+ %
177
+
178
+
179
+ \usepackage{makeidx}
180
+ \makeindex
181
+
182
+ %
183
+ %\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}}
184
+ %
185
+ % \makeatletter%
186
+ % \renewcommand{\chapter}{\@startsection{chapter}{0}{0pt}{3.5ex plus 1ex minus 0pt\relax}{2.5ex plus 0.5ex minus 0pt\relax}{\normalfont\Large\bfseries}}%
187
+ % \makeatother%
188
+ %
189
+ %
190
+ % Wortsammler extensions end here
191
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
192
+ \begin{document}
193
+ \maketitle
194
+
195
+ \clearpage
196
+
197
+ {
198
+ \hypersetup{linkcolor=black}
199
+ \setcounter{tocdepth}{1}
200
+ \tableofcontents
201
+ \newpage
202
+ }
203
+
204
+ \section{Introduction}\label{introduction}
205
+
206
+ This is a sample document for Wortsammler
207
+
208
+ \section{Anforderung an
209
+ Dokumentenaufbereiter}\label{anforderung-an-dokumentenaufbereiter}
210
+
211
+ \begin{itemize}
212
+ \item
213
+ {[}RS\_Comp\_003{]} \textbf{\hypertarget{RS-Comp-003}{}Steuerung
214
+ Dokumentenzusammenstellung} \{Dokumentenzusammenstellungen soll über
215
+ ein manifest {[}\hyperlink{RS-Comp-007}{RS\_Comp\_007}{]} gesteuert
216
+ werden.
217
+
218
+ \begin{itemize}
219
+ \itemsep1pt\parskip0pt\parsep0pt
220
+ \item
221
+ Die Manifeste sollen als Laufzeitparameter übergeben werden
222
+ \item
223
+ Das Manifest enthält auch die Ausgabedatei
224
+ \end{itemize}
225
+
226
+ \}(\hyperlink{RS-DM-014}{RS\_DM\_014},
227
+ \hyperlink{RS-DM-010}{RS\_DM\_010},
228
+ \hyperlink{RS-DM-005}{RS\_DM\_005})
229
+ \item
230
+ {[}RS\_Comp\_004{]} \textbf{\hypertarget{RS-Comp-004}{}Prozessierung
231
+ Einzeldokument} \{Soll Dokumente verschiedenen Umfangs erzeugen
232
+ können:
233
+
234
+ \begin{itemize}
235
+ \itemsep1pt\parskip0pt\parsep0pt
236
+ \item
237
+ einzelnes Files
238
+ \item
239
+ zu Prüfzwecken
240
+ \end{itemize}
241
+
242
+ Steuerung soll über Konfiguration (Manifest) erfolgen
243
+ {[}\hyperlink{RS-Comp-007}{RS\_Comp\_007}{]}.
244
+
245
+ \}()
246
+ \item
247
+ {[}RS\_Comp\_005{]} \textbf{\hypertarget{RS-Comp-005}{}Erstellung
248
+ Loseblattsammlung} \{Soll Dokumente verschiedenen Umfangs erzeugen
249
+ können:
250
+
251
+ \begin{itemize}
252
+ \itemsep1pt\parskip0pt\parsep0pt
253
+ \item
254
+ kann aus dem Manifest errechnet werden
255
+ {[}\hyperlink{RS-Comp-007}{RS\_Comp\_007}{]}
256
+ \end{itemize}
257
+
258
+ \}()
259
+ \item
260
+ {[}RS\_Comp\_006{]} \textbf{\hypertarget{RS-Comp-006}{}Inkrementelle
261
+ Verarbeitung} \{Soll nur auf geänderte Dokumente reagieren können:
262
+
263
+ \begin{itemize}
264
+ \itemsep1pt\parskip0pt\parsep0pt
265
+ \item
266
+ ähnlich wie make/rake
267
+ \end{itemize}
268
+
269
+ \}()
270
+ \item
271
+ {[}RS\_Comp\_007{]} \textbf{\hypertarget{RS-Comp-007}{}Anforderungen
272
+ an Manifest} \{Folgende Anforderungen gelten für das Manifest
273
+
274
+ \begin{itemize}
275
+ \itemsep1pt\parskip0pt\parsep0pt
276
+ \item
277
+ einfach bearbeiten - nur liste der Files
278
+ \item
279
+ Markdown-lite
280
+ \item
281
+ Yaml
282
+ \end{itemize}
283
+
284
+ Inhalte im Manifest sind
285
+
286
+ \begin{itemize}
287
+ \itemsep1pt\parskip0pt\parsep0pt
288
+ \item
289
+ Name der Konfiguration
290
+ \item
291
+ Ausgabeverzeichnis
292
+ \item
293
+ Ausgabeformat
294
+ \item
295
+ Name des generierten Dokumentes
296
+ \item
297
+ Formate in denen das Dokument generiert wird. Werte hierfür ergeben
298
+ sich aus den Anforderungen an die Aufbereitet
299
+ \item
300
+ zu verarbeitende Eingabedateien. Diese werden in der Reihenfolge
301
+ verarbeitet wie sie aufgeführt sind.
302
+ \item
303
+ Optionen für die jeweiligen Formate.
304
+ \item
305
+ zu bearbeitende Zielgruppen
306
+ {[}\hyperlink{RS-Comp-008}{RS\_Comp\_008}{]}
307
+ \end{itemize}
308
+
309
+ Beispiel für ein manifest
310
+
311
+ \begin{verbatim}
312
+ -
313
+ :name: komplett
314
+ :outdir: ../ZGEN_Documents
315
+ :outname: RS_Requirements-Ngopm
316
+ :format:
317
+ - pdf
318
+ - html
319
+ - rtf
320
+ - docx
321
+ - latex
322
+
323
+ :lang: german
324
+
325
+ :vars:
326
+ :lang: german
327
+
328
+ :editions:
329
+ :intern:
330
+ :title: Interne Ausgabe
331
+ :filepart: _intern
332
+ :extern:
333
+ :title: Externe Ausgabe
334
+ :filepart: _extern
335
+ :mieter:
336
+ :title: Ausgabe für Mieter
337
+ :filepart: _mieter
338
+ :ea:
339
+ :title: Ausgabe für ehrenamtliche Mitarbeiter
340
+ :filepart: _ma-ehrenamtlich
341
+ :ha:
342
+ :title: Ausgabe für hauptamtliche Mitarbeiter
343
+ :filepart: _ma-hauptamtlich
344
+ :1:
345
+ :title: Ausgabe für erste hauptamtliche Mitarbeiter
346
+ :filepart: _ma-hauptamtlich-1
347
+
348
+ :input:
349
+ - ../RS_Process/RS_Process.md
350
+ - ../RS_Tooling/RS_Tooling.md
351
+ - ../RS_Tooling/RS_MarkdownCleaner.md
352
+ - ../RS_Tooling/RS_MarkdownEditor.md
353
+ - ../RS_Tooling/RS_DocumentComposer.md
354
+ - ../TPL_DirectoryStructure/TPL_DirectoryStructure.md
355
+ - ../TR_Installation/TR_Installation.md
356
+ - ../TR_Installation/TR_Proo-Handbuch.md
357
+ - ../ZGEN_RequirementsTracing/ZGEN_Reqtrace.md
358
+
359
+ :snippets:
360
+ - ../TS_Markdown/TS_Snippets.yaml
361
+ - ../TS_Markdown/TS_MoreSnippets.yaml
362
+ \end{verbatim}
363
+
364
+ \}(\hyperlink{RS-Comp-003}{RS\_Comp\_003})
365
+ \end{itemize}
366
+
367
+ \subsection{Zielgruppenspezifische
368
+ Ausgaben}\label{zielgruppenspezifische-ausgaben}
369
+
370
+ Dieser Abschnitt behandelt speziell die Anforderungen an flexible
371
+ Dokumentenausgabe
372
+
373
+ \begin{itemize}
374
+ \item
375
+ {[}RS\_Comp\_001{]} \textbf{\hypertarget{RS-Comp-001}{}Flexibler
376
+ Dokumentumfang} \{Soll Dokumente verschiedenen Umfangs erzeugen
377
+ können:
378
+
379
+ \begin{itemize}
380
+ \itemsep1pt\parskip0pt\parsep0pt
381
+ \item
382
+ einzelnes Files
383
+ \item
384
+ Zusammengestelltes Dokument
385
+ \end{itemize}
386
+
387
+ \}(\hyperlink{RS-Comp-003}{RS\_Comp\_003})
388
+ \item
389
+ {[}RS\_Comp\_002{]} \textbf{\hypertarget{RS-Comp-002}{}Flexible
390
+ Dokumentendarstellung} \{Sollte Dokumente in verschiedener Darstellung
391
+ erzeugen können:
392
+
393
+ \begin{itemize}
394
+ \itemsep1pt\parskip0pt\parsep0pt
395
+ \item
396
+ Seitenlayout
397
+ \item
398
+ Detaillierungsgrad (z.B. RequirementsMarken ausblenden) \}
399
+ (RS\_Comp\_003)
400
+ \end{itemize}
401
+ \item
402
+ {[}RS\_Comp\_008{]}
403
+ \textbf{\hypertarget{RS-Comp-008}{}Zielgruppenspezifische Ausgaben
404
+ (Editionen)} \{ Es soll möglich sein Zielgruppenspezifische Ausgaben
405
+ zu erstellen.
406
+
407
+ \begin{itemize}
408
+ \itemsep1pt\parskip0pt\parsep0pt
409
+ \item
410
+ Dabei wird die Zielgruppe durch eine spezifische Zeichenkette
411
+ umgeschaltet (Durchstreichung), die auch in standard Markdown
412
+ Programmen eine sinnvolle Ausgabe liefert:
413
+ \end{itemize}
414
+ \end{itemize}
415
+
416
+ \end{document}