Skip to content

Commit 769a00e

Browse files
committed
Neue Tutorials
1 parent 8e3e0c4 commit 769a00e

File tree

4 files changed

+139
-13
lines changed

4 files changed

+139
-13
lines changed

css/material_viewer.css

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
#viewer {
22
text-align: left;
33
}
4+
#viewer #btn_back {
5+
margin-bottom: 15px;
6+
}
47
#viewer * {
8+
text-align: left;
59
font-size: 12pt;
610
}
711
#viewer img {
@@ -30,8 +34,7 @@
3034
padding-left: 25px;
3135
}
3236
#viewer h1 {
33-
text-align: center;
34-
margin-bottom: 50px;
37+
margin: 25px 0;
3538
font-size: 1.8em;
3639
}
3740
#viewer h2 {

js/prism.js

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -279,11 +279,27 @@ Prism.languages.python = {
279279
var o = (s.match(/\.(\w+)$/) || [, ""])[1];
280280
a = e[o] || o
281281
}
282+
var options = JSON.parse(t.getAttribute("data-src")) || "{}";
283+
var lastline = options.hasOwnProperty('lastline') ? options['lastline'] : -1;
284+
var firstline = options.hasOwnProperty('firstline') ? options['firstline'] : -1;
285+
282286
var l = document.createElement("code");
283287
l.className = "language-" + a, t.textContent = "", l.textContent = "Loading…", t.appendChild(l);
284288
var i = new XMLHttpRequest;
285289
i.open("GET", s, !0), i.onreadystatechange = function () {
286-
4 == i.readyState && (i.status < 400 && i.responseText ? (l.textContent = i.responseText, Prism.highlightElement(l)) : l.textContent = i.status >= 400 ? "✖ Error " + i.status + " while fetching file: " + i.statusText : "✖ Error: File does not exist or is empty")
290+
if (4 == i.readyState && (i.status < 400 && i.responseText)){
291+
var lines = i.responseText.split(/\r|\n/);
292+
firstline = (firstline > -1 && firstline < lines.length -1) ? firstline : 0;
293+
lastline = (lastline > -1 && lastline < lines.length -1) ? lastline : lines.length-1;
294+
l.textContent = lines.slice(firstline, lastline).join("\n");
295+
Prism.highlightElement(l);
296+
}else if (i.status >= 400){
297+
l.textContent = "✖ Error " + i.status + " while fetching file: " + i.statusText;
298+
}else {
299+
l.textContent ="✖ Error: File does not exist or is empty";
300+
}
301+
302+
287303
}, i.send(null)
288304
})
289305
}, document.addEventListener("DOMContentLoaded", self.Prism.fileHighlight))

less/viewer_styles.less

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,12 @@
1111
#viewer {
1212
text-align: left;
1313

14+
#btn_back{
15+
margin-bottom: 15px;
16+
}
17+
1418
* {
19+
text-align: left;
1520
font-size: @fs_content;
1621
}
1722

@@ -49,8 +54,7 @@
4954
}
5055

5156
h1 {
52-
text-align: center;
53-
margin-bottom: 50px;
57+
margin: 25px 0;
5458
font-size: 1.8em;
5559
}
5660

python_material_index.json

Lines changed: 111 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"io": "Dateien",
44
"input": "Eingabe",
55
"random": "Zufallszahlen",
6-
"list": "Listen"
6+
"list": "Listen",
7+
"text": "Texte",
8+
"def": "Funktionen"
79
},
810
"level": {
911
"l1": "Einsteiger",
1012
"l2": ""
1113
},
12-
13-
1414
"categories": [
1515
{
1616
"name": "Python-Referenz",
@@ -33,13 +33,15 @@
3333
"tags": [
3434
"if"
3535
]
36-
},{
36+
},
37+
{
3738
"type": "html",
3839
"uri": "Befehlsreferenz/3_schleifen.html",
3940
"name": "Einführung in Schleifen",
4041
"desc": "Hier wird erklärt, wie man Code wiederholt ausführen kann und welche Arten von Schleifen es gibt.",
4142
"tags": [
42-
"for", "while"
43+
"for",
44+
"while"
4345
]
4446
},
4547
{
@@ -59,21 +61,122 @@
5961
"tags": [
6062
"list"
6163
]
62-
},{
64+
},
65+
{
6366
"type": "html",
6467
"uri": "Befehlsreferenz/6_funktionen.html",
6568
"name": "Funktionen verwenden",
6669
"desc": "Hier erfährst du, was Funktionen sind und wozu diese gut sind.",
6770
"tags": [
6871
"def"
6972
]
70-
},{
73+
},
74+
{
7175
"type": "html",
7276
"uri": "Befehlsreferenz/10_module.html",
7377
"name": "Nützliche Dinge",
7478
"desc": "Hier lernst du einige ausgewählte Python-Module kennen, und wie du diese verwenden kannst.",
7579
"tags": [
76-
"random", "time", "date"
80+
"random",
81+
"time",
82+
"date"
83+
]
84+
}
85+
]
86+
},
87+
{
88+
"name": "Aufgaben - CodeBytes",
89+
"entries": [
90+
{
91+
"type": "html",
92+
"uri": "CodeBytes/wie_alt/wie_alt.html",
93+
"name": "Wie alt bist du?",
94+
"desc": "Eine kleine Aufgabe in der du (d)ein Alter über das Geburtsdatum berechnest.",
95+
"tags": [
96+
"input",
97+
"print",
98+
"date"
99+
]
100+
},
101+
{
102+
"type": "html",
103+
"uri": "CodeBytes/menschliche_stopuhr/menschliche_stopuhr.html",
104+
"name": "Menschliche Stopuhr",
105+
"desc": "Wie genau schaffst du es eine Zeit zu stoppen?",
106+
"tags": [
107+
"time",
108+
"input"
109+
]
110+
},
111+
{
112+
"type": "html",
113+
"uri": "CodeBytes/fussball/fb.html",
114+
"name": "Fußball - Tore zählen",
115+
"desc": "Eine kleine Aufgabe in der das Spielergebnis eines Fußballspiels ermitteln sollst.",
116+
"tags": [
117+
"input",
118+
"print",
119+
"while"
120+
]
121+
},
122+
{
123+
"type": "html",
124+
"uri": "CodeBytes/sss/SchereSteinPapier.html",
125+
"name": "Schere Stein Papier",
126+
"desc": "Eine kleine Aufgabe, um if-Abfragen zu üben.",
127+
"tags": [
128+
"print",
129+
"if"
130+
]
131+
}
132+
]
133+
},
134+
{
135+
"name": "Tutorials",
136+
"entries": [
137+
{
138+
"type": "html",
139+
"uri": "Grundlagen/Tutorials/Eingabe/eingabe.html",
140+
"name": "Eingaben einlesen",
141+
"desc": "Eine kleine Aufgabe in der du (d)ein Alter über das Geburtsdatum berechnest.",
142+
"tags": [
143+
"input"
144+
]
145+
},
146+
{
147+
"type": "html",
148+
"uri": "Grundlagen/Tutorials/Variablen/Variablen.html",
149+
"name": "Variablen",
150+
"desc": "Variablen",
151+
"tags": [
152+
"vars"
153+
]
154+
},
155+
{
156+
"type": "html",
157+
"uri": "Grundlagen/Tutorials/if_Abfragen/if_text.html",
158+
"name": "If-Abfragen",
159+
"desc": "If-Abfragen.",
160+
"tags": [
161+
"if"
162+
]
163+
},
164+
{
165+
"type": "html",
166+
"uri": "Grundlagen/Tutorials/Text/Text.html",
167+
"name": "Texte",
168+
"desc": "Texte.",
169+
"tags": [
170+
"text"
171+
]
172+
},
173+
{
174+
"type": "html",
175+
"uri": "Fortschritte/Tutorials/Listen/Listen.html",
176+
"name": "Listen",
177+
"desc": "Listen",
178+
"tags": [
179+
"list"
77180
]
78181
}
79182
]

0 commit comments

Comments
 (0)