1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
/++
output hub<br>
check & generate output types requested
+/
template outputHub() {
private import
std.regex,
std.algorithm,
std.array,
std.container,
std.exception,
std.getopt,
std.process,
std.stdio,
std.file,
std.path,
std.range,
std.regex,
std.string,
std.traits,
std.typecons,
std.uni,
std.utf;
import
defaults,
output_epub3,
output_html,
output_xhtmls,
source_sisupod,
create_zip_file,
output_rgx,
output_xhtmls;
void outputHub(D,I)(D doc_abstraction, I doc_matters) {
mixin SiSUoutputRgxInit;
auto rgx = Rgx();
if ((doc_matters.opt_action_bool["verbose"])) {
writeln(doc_matters.keys_seq.seg);
}
if (doc_matters.opt_action_bool["source"]) {
/+ mixin outputSource; +/
writeln("source");
}
if (doc_matters.opt_action_bool["sisupod"]) {
if ((doc_matters.opt_action_bool["verbose"])) {write("sisupod source processing... ");}
SiSUpod!()(doc_matters);
if ((doc_matters.opt_action_bool["verbose"])) {writeln("sisupod done");}
}
if (doc_matters.opt_action_bool["text"]) {
/+ mixin outputText; +/
writeln("text processing");
}
if (doc_matters.opt_action_bool["html"]) {
if ((doc_matters.opt_action_bool["verbose"])) {write("html scroll processing... ");}
outputHTML!().scroll(doc_abstraction, doc_matters);
if ((doc_matters.opt_action_bool["verbose"])) {writeln("html scroll done");}
if ((doc_matters.opt_action_bool["verbose"])) {write("html seg processing... ");}
outputHTML!().seg(doc_abstraction, doc_matters);
if ((doc_matters.opt_action_bool["verbose"])) {writeln("html seg done");}
} else if (doc_matters.opt_action_bool["html_seg"]) {
if ((doc_matters.opt_action_bool["verbose"])) {write("html seg processing... ");}
outputHTML!().seg(doc_abstraction, doc_matters);
if ((doc_matters.opt_action_bool["verbose"])) {writeln("html seg done");}
} else if (doc_matters.opt_action_bool["html_scroll"]) {
if ((doc_matters.opt_action_bool["verbose"])) {write("html scroll processing... ");}
outputHTML!().scroll(doc_abstraction, doc_matters);
if ((doc_matters.opt_action_bool["verbose"])) {writeln("html scroll done");}
}
if (doc_matters.opt_action_bool["epub"]) {
if ((doc_matters.opt_action_bool["verbose"])) {write("epub3 processing... ");}
outputEPub3!()(doc_abstraction, doc_matters);
// epub.css_write;
if ((doc_matters.opt_action_bool["verbose"])) {writeln("epub3 done");}
}
if (doc_matters.opt_action_bool["pdf"]) {
/+ mixin outputPDF; +/
writeln("pdf processing");
}
if (doc_matters.opt_action_bool["odt"]) {
/+ mixin outputODT; +/
writeln("odt processing");
}
if (doc_matters.opt_action_bool["sqlite"]) {
/+ mixin outputSQLite; +/
writeln("sqlite processing");
}
if (doc_matters.opt_action_bool["postgresql"]) {
/+ mixin outputPostgreSQL; +/
writeln("pgsql processing");
}
}
}
|