Verzeichnisstruktur phpBB-3.3.15
- Veröffentlicht
- 28.08.2024
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
InlineCode.js
01 function parse()
02 {
03 var markers = getInlineCodeMarkers(),
04 i = -1,
05 cnt = markers.length;
06 while (++i < (cnt - 1))
07 {
08 var pos = markers[i].next,
09 j = i;
10 if (text[markers[i].pos] !== '`')
11 {
12 // Adjust the left marker if its first backtick was escaped
13 ++markers[i].pos;
14 --markers[i].len;
15 }
16 while (++j < cnt && markers[j].pos === pos)
17 {
18 if (markers[j].len === markers[i].len)
19 {
20 addInlineCodeTags(markers[i], markers[j]);
21 i = j;
22 break;
23 }
24 pos = markers[j].next;
25 }
26 }
27 }
28
29 /**
30 * Add the tag pair for an inline code span
31 *
32 * @param {!Object} left Left marker
33 * @param {!Object} right Right marker
34 */
35 function addInlineCodeTags(left, right)
36 {
37 var startPos = left.pos,
38 startLen = left.len + left.trimAfter,
39 endPos = right.pos - right.trimBefore,
40 endLen = right.len + right.trimBefore;
41 addTagPair('C', startPos, startLen, endPos, endLen);
42 overwrite(startPos, endPos + endLen - startPos);
43 }
44
45
46 /**
47 * Capture and return inline code markers
48 *
49 * @return {!Array<!Object>}
50 */
51 function getInlineCodeMarkers()
52 {
53 var pos = text.indexOf('`');
54 if (pos < 0)
55 {
56 return [];
57 }
58
59 var regexp = /(`+)(\s*)[^\x17`]*/g,
60 trimNext = 0,
61 markers = [],
62 _text = text.replace(/\x1BD/g, '\\`'),
63 m;
64 regexp.lastIndex = pos;
65 while (m = regexp.exec(_text))
66 {
67 markers.push({
68 pos : m.index,
69 len : m[1].length,
70 trimBefore : trimNext,
71 trimAfter : m[2].length,
72 next : m.index + m[0].length
73 });
74 trimNext = m[0].length - m[0].replace(/\s+$/, '').length;
75 }
76
77 return markers;
78 }