Skip to content

Commit bb2ca48

Browse files
committed
Initial file merge, build script is mostly working - problems don't work yet
1 parent f2b6b1e commit bb2ca48

File tree

168 files changed

+58309
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

168 files changed

+58309
-1
lines changed

book/.output/cover_ebook.png

521 KB
Loading

book/.output/cover_thumb.png

19.8 KB
Loading

book/README.md

Whitespace-only changes.

book/aliBook.ddoc

Lines changed: 206 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,206 @@
1+
ROOT_DIR=../
2+
DOCTYPE = <!DOCTYPE html>
3+
4+
DEL = <span style="text-decoration:line-through">$0</span>
5+
TITLE = $(RED $0)
6+
H1 = <h1>$0</h1>
7+
H2 = <h2>$0</h2>
8+
H3 = <h3>$0</h3>
9+
H4 = <h4>$0</h4>
10+
H5 = <h5 class="subsection">$0</h5>
11+
H5_FRONTMATTER = <h5 class="frontmatter">$0</h5>
12+
H6 = <h6>$0</h6>
13+
SMALL=<small>$0</small>
14+
HR = <hr/>
15+
BR = <br/>
16+
SUP= <sup>$0</sup>
17+
SUB= <sub>$0</sub>
18+
CENTER = <center>$0</center>
19+
MONO = <pre class="mono">$0</pre>
20+
MONO_NOBOLD = <pre class="mono_nobold">$0</pre>
21+
CODE = <code class="d_inline">$0</code>
22+
CODE_SMALL = <code class="d_inline_index">$0</code>
23+
C=$(CODE $0)
24+
CH4=$(C $0)
25+
c=$(CODE_SMALL $0)
26+
INDEX_KEYWORDS=&nbsp;&nbsp;&nbsp;&nbsp;$(c $0)
27+
28+
LINK_TARGET=<a target="$1" href="$2">$3</a>
29+
LINK_DOWNLOAD = <a href="$1" domnload>$+</a>
30+
31+
SHELL = <pre class="shell">$0</pre>
32+
SHELL_SMALL = $(SHELL $0)
33+
SHELL_NOTE = <span class="shell_note">← $0</span>
34+
SHELL_NOTE_WRONG = <span class="shell_note_wrong">← $0</span>
35+
36+
SHELL_OBSERVED= <span class="shell_observed">$0</span>
37+
38+
C_CODE = <pre class="c_code">$0</pre>
39+
UL_FARK=<ul class="fark">$0</ul>
40+
UL_CLASS=<ul class="$1">$+</ul>
41+
FARK_INDEX=<li>$(LINK2 #$1, $2)</li>
42+
FARK=$(BR)$(HR)<h5 class="fark"><a name="$1">$2</a></h5>
43+
FARK_C=$(H6 C)$(C_CODE $0)
44+
FARK_CPP=$(H6 C++)$(C_CODE $0)
45+
FARK_D=$(H6 D)$0
46+
47+
HEADER_INDEX=$(FARK_INDEX $1, $2)
48+
HEADER=<h5><a name="$1">$2</a></h5>
49+
50+
STEPS = <ol class="steps">$0</ol>
51+
52+
QUOTE = <div class="quote">$0</div>
53+
54+
RED = <span style="color:red">$0</span>
55+
BLUE = <span style="color:blue">$0</span>
56+
GREEN = <span style="color:green">$0</span>
57+
YELLOW = <span style="color:yellow">$0</span>
58+
BLACK = <span style="color:black">$0</span>
59+
WHITE = <span style="color:white">$0</span>
60+
DARKRED= <span style="color:darkred">$0</span>
61+
ORANGE= <span style="color:orange">$0</span>
62+
GRAY= <span style="color:gray">$0</span>
63+
LIGHT_GRAY= <span style="color:#c0c0c0">$0</span>
64+
DARK_GRAY= <span style="color:#404040">$0</span>
65+
HILITE= <span class="hilite">$0</span>
66+
COLOR= <span style="color:$1">$+</span>
67+
68+
STRING = $(CODE <span class="d_string">$0</span>)
69+
COMMENT = <span class="d_comment">$0</span>
70+
KEYWORD = <span class="d_keyword">$0</span>
71+
72+
D_COMMENT = <span class="d_comment">$0</span>
73+
D_STRING = <span class="d_string">$0</span>
74+
D_KEYWORD = <span class="d_keyword">$0</span>
75+
D_PSYMBOL = <span class="d_psymbol">$0</span>
76+
D_PARAM = <span class="d_param">$0</span>
77+
78+
UNORDERED_FALSE = <span class="unordered_false">$0</span>
79+
UNORDERED_TRUE = <span class="unordered_true">$0</span>
80+
UNORDERED_NO = <span class="unordered_no">$0</span>
81+
UNORDERED_YES = <span class="unordered_yes">$0</span>
82+
83+
GULEN = $(DARKRED $(B :)o&#41;)
84+
PERCENT = &#37;
85+
PARANTEZ_AC = &#40;
86+
PARANTEZ_KAPA = &#41;
87+
VIRGUL = &#44;
88+
DOLAR = &#36;
89+
BACK_TICK = &#96;
90+
HYPHEN = &#8209;
91+
ASIL = <span style="color:#666666">($0)</span>
92+
93+
DERLEME_HATASI_METIN=derleme HATASI
94+
DERLEME_HATASI = <span class="d_comment">// ← <span class="d_hata">$(DERLEME_HATASI_METIN)</span></span>
95+
CODE_NOTE = $(COMMENT // ← $0)
96+
CODE_NOTE_WRONG = $(COMMENT // ← <span class="code_note_wrong">$0</span>)
97+
CODE_COMMENT = $(COMMENT // $0)
98+
99+
IMG_D = <img class="d_harfi" src="$(ROOT_DIR)/image/d_harfi.jpg" width="180" height="180" alt="D harfi"/>
100+
101+
BREADCRUMBS=$(BREADCRUMBS_FULL)
102+
103+
BREADCRUMBS_DIV=<div id="$(BREADCRUMBS_ID)">&nbsp;$(BREADCRUMBS)</div>
104+
105+
FOOTER_DIV=<div id="footer">$(SMALL Original design by $(LINK2 http://www.zilladesigns.net, Jeremy D.))</div>
106+
107+
HEADER_SECONDARY_DIV=<div id="headersecondary">$(HORIZNAV_CONTENT)</div>
108+
109+
VERTINAV_DIV=<div id="vertinav">
110+
$(BR)
111+
$(VERTINAV_CONTENT)
112+
$(BR)
113+
</div>
114+
115+
CLASS=chapter
116+
DIV_CLASS=<div class="$1">$+</div>
117+
118+
HEADER1_ID=header1
119+
120+
DERSHANE_LINK2=$(LINK2 $1, $2)
121+
122+
IMG=<img src="$(ROOT_DIR)/image/$0" border="0" />
123+
124+
DERS_BOLUMU =
125+
DERS_BOLUMU_CLASS =
126+
COZUM_BOLUMU = $(H4 $0 Dersi Problem Çözümleri)
127+
128+
UYARI=<center>
129+
<font size="4"> <strong> UYARI:&nbsp;&nbsp;</strong>$0</font></center>
130+
131+
TABLE=<table class="$1" border="1" cellpadding="4" cellspacing="0">$+</table>
132+
HEAD=<th scope="col">$0</th>
133+
HEAD2=$(ROW $(HEAD $1) $(HEAD $2))
134+
HEAD3=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3))
135+
HEAD4=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4))
136+
HEAD5=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4) $(HEAD $5))
137+
HEAD6=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4) $(HEAD $5) $(HEAD $6))
138+
ROW2=$(ROW $(DATA $1) $(DATA $2))
139+
ROW3=$(ROW $(DATA $1) $(DATA $2) $(DATA $3))
140+
ROW4=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4))
141+
ROW5=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4) $(DATA $5))
142+
ROW6=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4) $(DATA $5) $(DATA $6))
143+
ROW=<tr align="center">$0</tr>
144+
DATA=<td>$0</td>
145+
146+
ESKI_KARSILASTIRMA=$(P $(CENTER $(HILITE $(I $(B Not:) Bu bir D1 karşılaştırmasıdır. Modern D'nin başka farklılıkları da var.))))
147+
148+
149+
MAIN_TITLE=D.ershane
150+
151+
SUB_MAIN_TITLE=$(SUB_MAIN_TITLE_DERSE_OZEL)
152+
153+
HEADER_ID=header_ders
154+
155+
BREADCRUMBS_ID=breadcrumbs_ders
156+
157+
CONTAINER_ID=container
158+
159+
PROBLEM= $(LI $0)
160+
161+
IX=<a id="ix_$(TITLE).$0" content="$0"></a>
162+
163+
GERI_METIN=Geri
164+
ILERI_METIN=İleri
165+
PROBLEM_METIN=Problem
166+
PROBLEM_COK_METIN=Problemler
167+
PROBLEM_TEK_COZUMSUZ_METIN=çözümü sonra gelecek
168+
PROBLEM_COK_COZUMSUZ_METIN=çözümler sonra gelecek
169+
COZUM_METIN=çözüm
170+
COZUMLER_METIN=çözümler
171+
172+
PROBLEM_TEK_IMPL=$(H5 $(PROBLEM_METIN))
173+
$+ $1
174+
175+
PROBLEM_TEK=$(PROBLEM_TEK_IMPL $(DIV_CLASS cozum_link_tek, $(P $(LINK_TARGET ddili_cozum, $(COZUM_HTML), $(I ... $(COZUM_METIN))))), $0)
176+
PROBLEM_TEK_COZUMSUZ=$(PROBLEM_TEK_IMPL $(P $(I ($(PROBLEM_TEK_COZUMSUZ_METIN ...)))), $0)
177+
178+
179+
PROBLEM_COK_IMPL=$(H5 $(PROBLEM_COK_METIN))
180+
$(OL $+) $1
181+
182+
PROBLEM_COK=$(PROBLEM_COK_IMPL $(DIV_CLASS cozum_link_cok, $(P $(LINK_TARGET ddili_cozum, $(COZUM_HTML), $(I ... $(COZUMLER_METIN))))), $0)
183+
184+
PROBLEM_COK_COZUMSUZ=$(PROBLEM_COK_IMPL $(P $(I ($(PROBLEM_COK_COZUMSUZ_METIN ...)))), $0)
185+
186+
187+
VERTINAV_CONTENT=$(MINI_SOZLUK $(SOZLER))
188+
$(DUSEY_NAVIGASYON)
189+
190+
HORIZNAV_CONTENT=$(HORIZNAV_CONTENT_DERSE_OZEL)
191+
192+
DERS_NAV_BAS=<div id="ders_nav_bas">
193+
$(DERS_NAV_GERI)&nbsp;&nbsp;&nbsp;$(DERS_NAV_ILERI)
194+
</div>
195+
196+
DERS_NAV_SON=<div id="ders_nav_son">
197+
$(DERS_NAV_GERI)&nbsp;&nbsp;&nbsp;$(DERS_NAV_ILERI)
198+
</div>
199+
200+
MINI_SOZLUK=<div class="mini_sozluk">$0</div>
201+
<span class="butun_sozluk">$(I $(LINK_TARGET ddili_sozluk, $(ROOT_DIR)/sozluk.html, ...&nbsp;bütün&nbsp;sözlük))</span>
202+
$(BR)$(BR)
203+
204+
DERSHANE_LINK2=<span style="margin:0 0 0 12px">$2</span>
205+
206+
D_CODE = <pre class="d_code">$0</pre>

book/build.d

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
module book.build;
2+
import std;
3+
void compileToPath(string compileThis, string outputPath)
4+
{
5+
import core.stdc.stdlib;
6+
if(outputPath.indexOf("cozum") == -1)
7+
{
8+
writeln("wow");
9+
writeln(outputPath.replace(".html", ".cozum.html"));
10+
//exit(0);
11+
}
12+
13+
const compileString = format!"dmd -revert=markdown -D macros.ddoc html.ddoc dlang.org.ddoc doc.ddoc aliBook.ddoc %s -Df%s "(compileThis, outputPath);
14+
writefln!"%s:%s |> %s"(compileThis, outputPath, compileString);
15+
const res = executeShell(compileString);
16+
writeln("\t\t", res.status);
17+
18+
if(res.status != 0) {
19+
write(res.output);
20+
21+
exit(0);
22+
}
23+
}
24+
int main()
25+
{
26+
const outDir = "../web/book";
27+
writeln("Building the book at ", outDir);
28+
//scope(failure) return 1;
29+
30+
enforce(executeShell("which dmd").output != "", "dmd doesn't seem to be present");
31+
if(outDir.exists) {
32+
executeShell("rm -rf " ~ outDir);
33+
}
34+
writeln("Building book files");
35+
auto rng = dirEntries("d.en", "*.d", SpanMode.shallow)
36+
.map!(dFile => tuple(dFile.name, buildPath(outDir, baseName(dFile).setExtension("html"))))
37+
//.parallel(1)
38+
.each!(elem => compileToPath(elem.tupleof));
39+
dirEntries("d.en", "*.png", SpanMode.shallow)
40+
.each!(p => copy(p, buildPath(outDir, baseName(p).setExtension("png"))));
41+
writeln("Finished");
42+
return 0;
43+
}

book/common.ddoc

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
DOCTYPE = <!DOCTYPE html>
2+
3+
DEL = <span style="text-decoration:line-through">$0</span>
4+
5+
H1 = <h1>$0</h1>
6+
H2 = <h2>$0</h2>
7+
H3 = <h3>$0</h3>
8+
H4 = <h4>$0</h4>
9+
H5 = <h5 class="subsection">$0</h5>
10+
H5_FRONTMATTER = <h5 class="frontmatter">$0</h5>
11+
H6 = <h6>$0</h6>
12+
SMALL=<small>$0</small>
13+
HR = <hr/>
14+
BR = <br/>
15+
SUP= <sup>$0</sup>
16+
SUB= <sub>$0</sub>
17+
CENTER = <center>$0</center>
18+
MONO = <pre class="mono">$0</pre>
19+
MONO_NOBOLD = <pre class="mono_nobold">$0</pre>
20+
CODE = <code class="d_inline">$0</code>
21+
CODE_SMALL = <code class="d_inline_index">$0</code>
22+
C=$(CODE $0)
23+
CH4=$(C $0)
24+
c=$(CODE_SMALL $0)
25+
INDEX_KEYWORDS=&nbsp;&nbsp;&nbsp;&nbsp;$(c $0)
26+
27+
LINK_TARGET=<a target="$1" href="$2">$3</a>
28+
LINK_DOWNLOAD = <a href="$1" domnload>$+</a>
29+
30+
SHELL = <pre class="shell">$0</pre>
31+
SHELL_SMALL = $(SHELL $0)
32+
SHELL_NOTE = <span class="shell_note">← $0</span>
33+
SHELL_NOTE_WRONG = <span class="shell_note_wrong">← $0</span>
34+
35+
SHELL_OBSERVED= <span class="shell_observed">$0</span>
36+
37+
C_CODE = <pre class="c_code">$0</pre>
38+
UL_FARK=<ul class="fark">$0</ul>
39+
UL_CLASS=<ul class="$1">$+</ul>
40+
FARK_INDEX=<li>$(LINK2 #$1, $2)</li>
41+
FARK=$(BR)$(HR)<h5 class="fark"><a name="$1">$2</a></h5>
42+
FARK_C=$(H6 C)$(C_CODE $0)
43+
FARK_CPP=$(H6 C++)$(C_CODE $0)
44+
FARK_D=$(H6 D)$0
45+
46+
HEADER_INDEX=$(FARK_INDEX $1, $2)
47+
HEADER=<h5><a name="$1">$2</a></h5>
48+
49+
STEPS = <ol class="steps">$0</ol>
50+
51+
QUOTE = <div class="quote">$0</div>
52+
53+
RED = <span style="color:red">$0</span>
54+
BLUE = <span style="color:blue">$0</span>
55+
GREEN = <span style="color:green">$0</span>
56+
YELLOW = <span style="color:yellow">$0</span>
57+
BLACK = <span style="color:black">$0</span>
58+
WHITE = <span style="color:white">$0</span>
59+
DARKRED= <span style="color:darkred">$0</span>
60+
ORANGE= <span style="color:orange">$0</span>
61+
GRAY= <span style="color:gray">$0</span>
62+
LIGHT_GRAY= <span style="color:#c0c0c0">$0</span>
63+
DARK_GRAY= <span style="color:#404040">$0</span>
64+
HILITE= <span class="hilite">$0</span>
65+
COLOR= <span style="color:$1">$+</span>
66+
67+
STRING = $(CODE <span class="d_string">$0</span>)
68+
COMMENT = <span class="d_comment">$0</span>
69+
KEYWORD = <span class="d_keyword">$0</span>
70+
71+
D_COMMENT = <span class="d_comment">$0</span>
72+
D_STRING = <span class="d_string">$0</span>
73+
D_KEYWORD = <span class="d_keyword">$0</span>
74+
D_PSYMBOL = <span class="d_psymbol">$0</span>
75+
D_PARAM = <span class="d_param">$0</span>
76+
77+
UNORDERED_FALSE = <span class="unordered_false">$0</span>
78+
UNORDERED_TRUE = <span class="unordered_true">$0</span>
79+
UNORDERED_NO = <span class="unordered_no">$0</span>
80+
UNORDERED_YES = <span class="unordered_yes">$0</span>
81+
82+
GULEN = $(DARKRED $(B :)o&#41;)
83+
PERCENT = &#37;
84+
PARANTEZ_AC = &#40;
85+
PARANTEZ_KAPA = &#41;
86+
VIRGUL = &#44;
87+
DOLAR = &#36;
88+
BACK_TICK = &#96;
89+
HYPHEN = &#8209;
90+
ASIL = <span style="color:#666666">($0)</span>
91+
92+
DERLEME_HATASI_METIN=derleme HATASI
93+
DERLEME_HATASI = <span class="d_comment">// ← <span class="d_hata">$(DERLEME_HATASI_METIN)</span></span>
94+
CODE_NOTE = $(COMMENT // ← $0)
95+
CODE_NOTE_WRONG = $(COMMENT // ← <span class="code_note_wrong">$0</span>)
96+
CODE_COMMENT = $(COMMENT // $0)
97+
98+
IMG_D = <img class="d_harfi" src="$(ROOT_DIR)/image/d_harfi.jpg" width="180" height="180" alt="D harfi"/>
99+
100+
BREADCRUMBS=$(BREADCRUMBS_FULL)
101+
102+
BREADCRUMBS_DIV=<div id="$(BREADCRUMBS_ID)">&nbsp;$(BREADCRUMBS)</div>
103+
104+
FOOTER_DIV=<div id="footer">$(SMALL Original design by $(LINK2 http://www.zilladesigns.net, Jeremy D.))</div>
105+
106+
HEADER_SECONDARY_DIV=<div id="headersecondary">$(HORIZNAV_CONTENT)</div>
107+
108+
VERTINAV_DIV=<div id="vertinav">
109+
$(BR)
110+
$(VERTINAV_CONTENT)
111+
$(BR)
112+
</div>
113+
114+
CLASS=chapter
115+
DIV_CLASS=<div class="$1">$+</div>
116+
117+
HEADER1_ID=header1
118+
119+
DERSHANE_LINK2=$(LINK2 $1, $2)
120+
121+
IMG=<img src="$(ROOT_DIR)/image/$0" border="0" />
122+
123+
DERS_BOLUMU = <h4 class="chapter">$0</h4>
124+
DERS_BOLUMU_CLASS = <h4 class="$1">$+</h4>
125+
COZUM_BOLUMU = $(H4 $0 Dersi Problem Çözümleri)
126+
127+
UYARI=<center>
128+
<font size="4"> <strong> UYARI:&nbsp;&nbsp;</strong>$0</font></center>
129+
130+
TABLE=<table class="$1" border="1" cellpadding="4" cellspacing="0">$+</table>
131+
HEAD=<th scope="col">$0</th>
132+
HEAD2=$(ROW $(HEAD $1) $(HEAD $2))
133+
HEAD3=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3))
134+
HEAD4=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4))
135+
HEAD5=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4) $(HEAD $5))
136+
HEAD6=$(ROW $(HEAD $1) $(HEAD $2) $(HEAD $3) $(HEAD $4) $(HEAD $5) $(HEAD $6))
137+
ROW2=$(ROW $(DATA $1) $(DATA $2))
138+
ROW3=$(ROW $(DATA $1) $(DATA $2) $(DATA $3))
139+
ROW4=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4))
140+
ROW5=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4) $(DATA $5))
141+
ROW6=$(ROW $(DATA $1) $(DATA $2) $(DATA $3) $(DATA $4) $(DATA $5) $(DATA $6))
142+
ROW=<tr align="center">$0</tr>
143+
DATA=<td>$0</td>
144+
145+
ESKI_KARSILASTIRMA=$(P $(CENTER $(HILITE $(I $(B Not:) Bu bir D1 karşılaştırmasıdır. Modern D'nin başka farklılıkları da var.))))

0 commit comments

Comments
 (0)