Overview
Comment:Handle more styles of HTML inline tags, also make strike-through not use
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: e5d27ff23a40b18dfa2d5ef88d7276e0410649f4f15777b8d8796fbc2df46bdb
User & Date: bohwaz on 2023-02-25 04:07:38
Other Links: manifest | tags
Context
2023-02-25
14:47
Store and rely on modified date and page type in index.txt file check-in: b937501f39 user: bohwaz tags: trunk
04:07
Handle more styles of HTML inline tags, also make strike-through not use check-in: e5d27ff23a user: bohwaz tags: trunk
03:34
Fix internal links in doc, and fix margins in default content.css check-in: 010b97faae user: bohwaz tags: trunk
Changes

Modified doc/admin/extensions.md from [43395e0910] to [d7695a069b].

1
2
3
4
5
6
7
8
[Raccourcis claviers](keyboard.html) | [Extensions Paheko](extensions.html)

<<toc aside>>

# Extensions Paheko

Paheko propose des extensions qui s'appliquent aux textes rédigés en MarkDown et en SkrivML.

|







1
2
3
4
5
6
7
8
[Raccourcis claviers](keyboard.html) | [Syntaxe MarkDown](markdown.html) | [Syntaxe Skriv](skriv.html)

<<toc aside>>

# Extensions Paheko

Paheko propose des extensions qui s'appliquent aux textes rédigés en MarkDown et en SkrivML.

Modified doc/admin/keyboard.md from [de3a2b989c] to [813b57f5ed].



1
2


3
4
5
6
7
8
9
10
11
12
13
14










# Raccourcis clavier



| Raccourci | Action |
| - | - |
| Ctrl + G | Mettre en gras |
| Ctrl + I | Mettre en italique |
| Ctrl + T | Mettre en titre |
| Ctrl + L | Transformer en lien |
| Ctrl + Shift + I | Insérer un fichier ou une image |
| Ctrl + P | Prévisualiser |
| Ctrl + S | Enregistrer |
| Echap | Fermer l'aide, la prévisualisation ou l'insertion de fichier |
| F11 | Activer ou désactiver l'édition plein écran |
| F1 | Afficher l'aide |








>
>


>
>

|
|
|
|
|
|
|
|
<
|
|
>
>
>
>
>
>
>
>
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
[Syntaxe MarkDown](markdown.html) | [Syntaxe Skriv](skriv.html)

# Raccourcis clavier

Depuis l'édition du texte :

| Raccourci | Action |
| :- | :- |
| <kbd>Ctrl</kbd> + <kbd>G</kbd> | Mettre en gras |
| <kbd>Ctrl</kbd> + <kbd>I</kbd> | Mettre en italique |
| <kbd>Ctrl</kbd> + <kbd>T</kbd> | Mettre en titre |
| <kbd>Ctrl</kbd> + <kbd>L</kbd> | Transformer en lien |
| <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>I</kbd> | Insérer un fichier ou une image |
| <kbd>Ctrl</kbd> + <kbd>P</kbd> | Prévisualiser |
| <kbd>Ctrl</kbd> + <kbd>S</kbd> | Enregistrer |

| <kbd>F11</kbd> | Activer ou désactiver l'édition plein écran |
| <kbd>F1</kbd> | Afficher l'aide |
| <kbd>Echap</kbd> | Prévisualiser (rappuyer pour revenir à l'édition) |


Depuis l'aide, la prévisualisation ou l'insertion de fichier :

| Raccourci | Action |
| :- | :- |
| <kbd>Echap</kbd> | Fermer et revenir à l'édition |

Modified doc/admin/markdown.md from [6dae00cb23] to [bfb62b0fbf].

358
359
360
361
362
363
364


365
366

367
368
369
370
371
372
373
374
375
376
</div>
```

## Tags HTML

Certains tags HTML sont autorisés :



* `<kbd>`
* `<samp>`

* `<del>`
* `<ins>`
* `<sup>`
* `<sub>`
* `<mark>`
* `<var>`
* `<audio>`
* `<video>`

Mais leurs possibilités sont limitées, notamment sur les attributs autorisés.







>
>
|
|
>
|
|
|
|
|
<
|
|


358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374

375
376
377
378
</div>
```

## Tags HTML

Certains tags HTML sont autorisés :

| Tag | Utilisation | Exemple |
| :- | :- | :- |
| `<kbd>` | Touches de clavier | <kbd>Ctrl</kbd> + <kbd>B</kbd> |
| `<samp>` | Exemple de programme en console | <samp>bohwaz@platypus ~ % sudo apt install paheko</samp> |
| `<var>` | Variable dans un programme informatique | <var>ab</var> + <var>cd</var> = 42 |
| `<del>` | Texte supprimé | Texte <del>supprimé</del> |
| `<ins>` | Texte ajouté | Texte <ins>ajouté</ins> |
| `<sup>` | Texte en exposant | Texte<sup>exposant</sup> |
| `<sub>` | Texte en indice | Texte<sub>indice</sub> |
| `<mark>` | Texte surligné | Texte <mark>surligné</mark> |

| `<audio>` | Insérer un lecteur audio dans la page | `<audio src="mon_fichier.mp3">` |
| `<video>` | Insérer une vidéo dans la page | `<video src="mon_fichier.webm">` |

Mais leurs possibilités sont limitées, notamment sur les attributs autorisés.

Modified src/include/lib/Garradin/Web/Render/Parsedown.php from [411378b7d5] to [4e618202f4].

267
268
269
270
271
272
273
























274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
					],
				],
			];
		}

		return null;
	}

























	/**
	 * Allow simple inline markup tags
	 */
	protected function inlineMarkup($str)
	{
		$text = $str['text'];

		// Comments
		if (preg_match('/<!--.*?-->/', $text, $match)) {
			return ['element' => ['rawHtml' => ''], 'extent', strlen($match[0])];
		}

		// Skip if not a tag
		if (!preg_match('!</?(\w+)([^>]*)>!', $text, $match)) {
			return null;
		}

		$name = $match[1];

		if (!array_key_exists($name, self::ALLOWED_INLINE_TAGS)) {
			return null;
		}

		$attributes = $this->_filterHTMLAttributes($name, self::ALLOWED_INLINE_TAGS[$name], $match[2]);

		return [
			'element' => [
				'rawHtml' => '<' . $name . '>',
				'allowRawHtmlInSafeMode' => true,
				'attributes' => $attributes,
			],
			'extent' => strlen($match[0]),
		];
	}








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>














|


<
|









|







267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314

315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
					],
				],
			];
		}

		return null;
	}

	/**
	 * Override default strikethrough, as it is incorrectly using <del>
	 */
	protected function inlineStrikethrough($Excerpt)
	{
		if (substr($Excerpt['text'], 1, 1) === '~' && preg_match('/^~~(?=\S)(.+?)(?<=\S)~~/', $Excerpt['text'], $matches))
		{
			return array(
				'extent' => strlen($matches[0]),
				'element' => array(
					'name' => 'span',
					'attributes' => ['style' => 'text-decoration: line-through'],
					'handler' => array(
						'function' => 'lineElements',
						'argument' => $matches[1],
						'destination' => 'elements',
					)
				),
			);
		}

		return null;
	}

	/**
	 * Allow simple inline markup tags
	 */
	protected function inlineMarkup($str)
	{
		$text = $str['text'];

		// Comments
		if (preg_match('/<!--.*?-->/', $text, $match)) {
			return ['element' => ['rawHtml' => ''], 'extent', strlen($match[0])];
		}

		// Skip if not a tag
		if (!preg_match('!(</?)(\w+)([^>]*?)>!', $text, $match)) {
			return null;
		}

		$name = $match[2];

		if (!array_key_exists($name, self::ALLOWED_INLINE_TAGS)) {
			return null;
		}

		$attributes = $this->_filterHTMLAttributes($name, self::ALLOWED_INLINE_TAGS[$name], $match[2]);

		return [
			'element' => [
				'rawHtml' => $match[1] . $name . '>',
				'allowRawHtmlInSafeMode' => true,
				'attributes' => $attributes,
			],
			'extent' => strlen($match[0]),
		];
	}

348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
			],
		];
	}

	/**
	 * Open external links in new page
	 */
    protected function inlineLink($Excerpt)
    {
    	$e = parent::inlineLink($Excerpt);

    	if (strstr($e['element']['attributes']['href'], ':')) {
    		$e['element']['attributes']['target'] = '_blank';
    		$e['element']['attributes']['rel'] = 'nofollow,noreferrer';
    	}

    	return $e;
    }

    /**
     * Add typo modifier to text
     */
	protected function inlineText($text)
	{
		$text = CommonModifiers::typo($text);
		return parent::inlineText($text);
	}

	/**







|
|
|

|
|
|
|

|
|

|
|
|







371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
			],
		];
	}

	/**
	 * Open external links in new page
	 */
	protected function inlineLink($Excerpt)
	{
		$e = parent::inlineLink($Excerpt);

		if (strstr($e['element']['attributes']['href'], ':')) {
			$e['element']['attributes']['target'] = '_blank';
			$e['element']['attributes']['rel'] = 'nofollow,noreferrer';
		}

		return $e;
	}

	/**
	 * Add typo modifier to text
	 */
	protected function inlineText($text)
	{
		$text = CommonModifiers::typo($text);
		return parent::inlineText($text);
	}

	/**

Modified src/www/admin/static/doc/extensions.html from [25181b9981] to [6132528e0e].

12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
			font-family: "Trebuchet MS", Arial, Helvetica, Sans-serif;
			padding: .8em;
			background: #eee;
		}
		</style>
		<link rel="stylesheet" type="text/css" href="../../../content.css" />
	</head>
	<body><div class="web-content"><p><a href="keyboard.html">Raccourcis claviers</a> | <a href="extensions.html">Extensions Paheko</a></p><aside class="toc">
	<ol>
		<li><a href="#extensions-paheko">Extensions Paheko</a>
		<ol>
			<li><a href="#images-jointes">Images jointes</a></li>
			<li><a href="#fichiers-joints">Fichiers joints</a></li>
			<li><a href="#sommaire-table-des-matieres-automatique">Sommaire / table des matières automatique</a></li>
			<li><a href="#grilles-et-colonnes">Grilles et colonnes</a></li>







|







12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
			font-family: "Trebuchet MS", Arial, Helvetica, Sans-serif;
			padding: .8em;
			background: #eee;
		}
		</style>
		<link rel="stylesheet" type="text/css" href="../../../content.css" />
	</head>
	<body><div class="web-content"><p><a href="keyboard.html">Raccourcis claviers</a> | <a href="markdown.html">Syntaxe MarkDown</a> | <a href="skriv.html">Syntaxe Skriv</a></p><aside class="toc">
	<ol>
		<li><a href="#extensions-paheko">Extensions Paheko</a>
		<ol>
			<li><a href="#images-jointes">Images jointes</a></li>
			<li><a href="#fichiers-joints">Fichiers joints</a></li>
			<li><a href="#sommaire-table-des-matieres-automatique">Sommaire / table des matières automatique</a></li>
			<li><a href="#grilles-et-colonnes">Grilles et colonnes</a></li>
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<pre><code>&lt;&lt;center&gt;&gt;
Texte centré
&lt;&lt;/center&gt;&gt;</code></pre>
<p>On peut procéder de même avec <code>&lt;&lt;left&gt;&gt;</code> et <code>&lt;&lt;right&gt;&gt;</code> pour aligner à gauche ou à droite.</p>
<h2 id="couleurs">Couleurs</h2>
<p>Comme sur les <a href="https://decoblog.skyrock.com/" target="_blank" rel="nofollow,noreferrer">Skyblogs</a>, il est possible de mettre en couleur le texte et le fond, et même de créer des dégradés !</p>
<p>Utiliser la syntaxe <code>&lt;&lt;color COULEUR&gt;&gt;...texte...&lt;&lt;/color&gt;&gt;</code> pour changer la couleur du texte, ou <code>&lt;&lt;bgcolor COULEUR&gt;&gt;...texte...&lt;&lt;/bgcolor&gt;&gt;</code> pour la couleur du fond.</p>
<p>Il est possible d'indiquer plusieurs couleurs, séparées par des virgules, pour créer des dégradés.</p>
<pre><code>&lt;&lt;color red&gt;&gt;Rouge !&lt;&lt;/color&gt;&gt;
&lt;&lt;bgcolor yellow&gt;&gt;Fond jaune pétant !&lt;&lt;/bgcolor&gt;&gt;
&lt;&lt;color cyan green salmon&gt;&gt;Dégradé de texte !&lt;&lt;/color&gt;&gt;
&lt;&lt;bgcolor chocolate khaki orange&gt;&gt;Dégradé du fond&lt;&lt;/bgcolor&gt;&gt;

&lt;&lt;bgcolor darkolivegreen darkseagreen &gt;&gt;
&lt;&lt;color darkred&gt;&gt;







|







135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<pre><code>&lt;&lt;center&gt;&gt;
Texte centré
&lt;&lt;/center&gt;&gt;</code></pre>
<p>On peut procéder de même avec <code>&lt;&lt;left&gt;&gt;</code> et <code>&lt;&lt;right&gt;&gt;</code> pour aligner à gauche ou à droite.</p>
<h2 id="couleurs">Couleurs</h2>
<p>Comme sur les <a href="https://decoblog.skyrock.com/" target="_blank" rel="nofollow,noreferrer">Skyblogs</a>, il est possible de mettre en couleur le texte et le fond, et même de créer des dégradés !</p>
<p>Utiliser la syntaxe <code>&lt;&lt;color COULEUR&gt;&gt;...texte...&lt;&lt;/color&gt;&gt;</code> pour changer la couleur du texte, ou <code>&lt;&lt;bgcolor COULEUR&gt;&gt;...texte...&lt;&lt;/bgcolor&gt;&gt;</code> pour la couleur du fond.</p>
<p>Il est possible d'indiquer plusieurs couleurs, séparées par des espaces, pour créer des dégradés.</p>
<pre><code>&lt;&lt;color red&gt;&gt;Rouge !&lt;&lt;/color&gt;&gt;
&lt;&lt;bgcolor yellow&gt;&gt;Fond jaune pétant !&lt;&lt;/bgcolor&gt;&gt;
&lt;&lt;color cyan green salmon&gt;&gt;Dégradé de texte !&lt;&lt;/color&gt;&gt;
&lt;&lt;bgcolor chocolate khaki orange&gt;&gt;Dégradé du fond&lt;&lt;/bgcolor&gt;&gt;

&lt;&lt;bgcolor darkolivegreen darkseagreen &gt;&gt;
&lt;&lt;color darkred&gt;&gt;

Modified src/www/admin/static/doc/keyboard.html from [14dc560ed8] to [96dc292307].

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
			font-family: "Trebuchet MS", Arial, Helvetica, Sans-serif;
			padding: .8em;
			background: #eee;
		}
		</style>
		<link rel="stylesheet" type="text/css" href="../../../content.css" />
	</head>

	<body><div class="web-content"><h1 id="raccourcis-clavier">Raccourcis clavier</h1>

<table>
<thead>
<tr>
<th>Raccourci</th>
<th>Action</th>



















































</tr>
</thead>
<tbody>
<tr>
<td>Ctrl + G</td>
<td>Mettre en gras</td>
</tr>
<tr>
<td>Ctrl + I</td>
<td>Mettre en italique</td>
</tr>
<tr>
<td>Ctrl + T</td>
<td>Mettre en titre</td>
</tr>
<tr>
<td>Ctrl + L</td>
<td>Transformer en lien</td>
</tr>
<tr>
<td>Ctrl + Shift + I</td>
<td>Insérer un fichier ou une image</td>
</tr>
<tr>
<td>Ctrl + P</td>
<td>Prévisualiser</td>
</tr>
<tr>
<td>Ctrl + S</td>
<td>Enregistrer</td>
</tr>
<tr>
<td>Echap</td>
<td>Fermer l'aide, la prévisualisation ou l'insertion de fichier</td>
</tr>
<tr>
<td>F11</td>
<td>Activer ou désactiver l'édition plein écran</td>
</tr>
<tr>
<td>F1</td>
<td>Afficher l'aide</td>
</tr>
</tbody>
</table></div></body></html>







>
|
>



|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>




<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
|
<
<
<
<
|

<
<
<
<


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
			font-family: "Trebuchet MS", Arial, Helvetica, Sans-serif;
			padding: .8em;
			background: #eee;
		}
		</style>
		<link rel="stylesheet" type="text/css" href="../../../content.css" />
	</head>
	<body><div class="web-content"><p><a href="markdown.html">Syntaxe MarkDown</a> | <a href="skriv.html">Syntaxe Skriv</a></p>
<h1 id="raccourcis-clavier">Raccourcis clavier</h1>
<p>Depuis l'édition du texte :</p>
<table>
<thead>
<tr>
<th style="text-align: left;">Raccourci</th>
<th style="text-align: left;">Action</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>G</kbd></td>
<td style="text-align: left;">Mettre en gras</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>I</kbd></td>
<td style="text-align: left;">Mettre en italique</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>T</kbd></td>
<td style="text-align: left;">Mettre en titre</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>L</kbd></td>
<td style="text-align: left;">Transformer en lien</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>I</kbd></td>
<td style="text-align: left;">Insérer un fichier ou une image</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>P</kbd></td>
<td style="text-align: left;">Prévisualiser</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>S</kbd></td>
<td style="text-align: left;">Enregistrer</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>F11</kbd></td>
<td style="text-align: left;">Activer ou désactiver l'édition plein écran</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>F1</kbd></td>
<td style="text-align: left;">Afficher l'aide</td>
</tr>
<tr>
<td style="text-align: left;"><kbd>Echap</kbd></td>
<td style="text-align: left;">Prévisualiser (rappuyer pour revenir à l'édition)</td>
</tr>
</tbody>
</table>
<p>Depuis l'aide, la prévisualisation ou l'insertion de fichier :</p>
<table>
<thead>
<tr>
<th style="text-align: left;">Raccourci</th>
<th style="text-align: left;">Action</th>
</tr>
</thead>
<tbody>
<tr>




























<td style="text-align: left;"><kbd>Echap</kbd></td>




<td style="text-align: left;">Fermer et revenir à l'édition</td>
</tr>




</tbody>
</table></div></body></html>

Modified src/www/admin/static/doc/markdown.html from [14295079d3] to [feb78f3d43].

75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<blockquote>
<p>Ce texte est <strong><em>gras et italique</em></strong>.</p>
</blockquote>
<h3 id="barre">Barré</h3>
<p>Utiliser un symbole tilde pour barrer un texte :</p>
<pre><code>Texte ~~complètement barré~~.</code></pre>
<blockquote>
<p>Texte <del>complètement barré</del>.</p>
</blockquote>
<h3 id="code">Code</h3>
<p>Il est possible d'indiquer du code dans une ligne de texte avec un caractère <em>backtick</em> (accent grave en français, obtenu avec les touches <a href="https://superuser.com/questions/254076/how-do-i-type-the-tick-and-backtick-characters-on-windows" target="_blank" rel="nofollow,noreferrer">Alt Gr + 7</a>) :</p>
<pre><code>Le code `&lt;html&gt;` c'est rigolo !</code></pre>
<blockquote>
<p>Le code <code>&lt;html&gt;</code> c'est rigolo !</p>
</blockquote>







|







75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<blockquote>
<p>Ce texte est <strong><em>gras et italique</em></strong>.</p>
</blockquote>
<h3 id="barre">Barré</h3>
<p>Utiliser un symbole tilde pour barrer un texte :</p>
<pre><code>Texte ~~complètement barré~~.</code></pre>
<blockquote>
<p>Texte <span style="text-decoration: line-through">complètement barré</span>.</p>
</blockquote>
<h3 id="code">Code</h3>
<p>Il est possible d'indiquer du code dans une ligne de texte avec un caractère <em>backtick</em> (accent grave en français, obtenu avec les touches <a href="https://superuser.com/questions/254076/how-do-i-type-the-tick-and-backtick-characters-on-windows" target="_blank" rel="nofollow,noreferrer">Alt Gr + 7</a>) :</p>
<pre><code>Le code `&lt;html&gt;` c'est rigolo !</code></pre>
<blockquote>
<p>Le code <code>&lt;html&gt;</code> c'est rigolo !</p>
</blockquote>
295
296
297
298
299
300
301


302







303




304









305




306




307




308




309


310

311




312


313


314

    &lt;p&gt;Paragraphe&lt;/p&gt;

    &lt;blockquote&gt;&lt;p&gt;Citation&lt;/p&gt;&lt;/blockquote&gt;
&lt;/div&gt;</code></pre>
<h2 id="tags-html">Tags HTML</h2>
<p>Certains tags HTML sont autorisés :</p>


<ul>







<li><code>&lt;kbd&gt;</code></li>




<li><code>&lt;samp&gt;</code></li>









<li><code>&lt;del&gt;</code></li>




<li><code>&lt;ins&gt;</code></li>




<li><code>&lt;sup&gt;</code></li>




<li><code>&lt;sub&gt;</code></li>




<li><code>&lt;mark&gt;</code></li>


<li><code>&lt;var&gt;</code></li>

<li><code>&lt;audio&gt;</code></li>




<li><code>&lt;video&gt;</code></li>


</ul>


<p>Mais leurs possibilités sont limitées, notamment sur les attributs autorisés.</p></div></body></html>







>
>
|
>
>
>
>
>
>
>
|
>
>
>
>
|
>
>
>
>
>
>
>
>
>
|
>
>
>
>
|
>
>
>
>
|
>
>
>
>
|
>
>
>
>
|
>
>
|
>
|
>
>
>
>
|
>
>
|
>
>

295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363

    &lt;p&gt;Paragraphe&lt;/p&gt;

    &lt;blockquote&gt;&lt;p&gt;Citation&lt;/p&gt;&lt;/blockquote&gt;
&lt;/div&gt;</code></pre>
<h2 id="tags-html">Tags HTML</h2>
<p>Certains tags HTML sont autorisés :</p>
<table>
<thead>
<tr>
<th style="text-align: left;">Tag</th>
<th style="text-align: left;">Utilisation</th>
<th style="text-align: left;">Exemple</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;"><code>&lt;kbd&gt;</code></td>
<td style="text-align: left;">Touches de clavier</td>
<td style="text-align: left;"><kbd>Ctrl</kbd> + <kbd>B</kbd></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;samp&gt;</code></td>
<td style="text-align: left;">Exemple de programme en console</td>
<td style="text-align: left;"><samp>bohwaz@platypus ~ % sudo apt install paheko</samp></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;var&gt;</code></td>
<td style="text-align: left;">Variable dans un programme informatique</td>
<td style="text-align: left;"><var>ab</var> + <var>cd</var> = 42</td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;del&gt;</code></td>
<td style="text-align: left;">Texte supprimé</td>
<td style="text-align: left;">Texte <del>supprimé</del></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;ins&gt;</code></td>
<td style="text-align: left;">Texte ajouté</td>
<td style="text-align: left;">Texte <ins>ajouté</ins></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;sup&gt;</code></td>
<td style="text-align: left;">Texte en exposant</td>
<td style="text-align: left;">Texte<sup>exposant</sup></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;sub&gt;</code></td>
<td style="text-align: left;">Texte en indice</td>
<td style="text-align: left;">Texte<sub>indice</sub></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;mark&gt;</code></td>
<td style="text-align: left;">Texte surligné</td>
<td style="text-align: left;">Texte <mark>surligné</mark></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;audio&gt;</code></td>
<td style="text-align: left;">Insérer un lecteur audio dans la page</td>
<td style="text-align: left;"><code>&lt;audio src="mon_fichier.mp3"&gt;</code></td>
</tr>
<tr>
<td style="text-align: left;"><code>&lt;video&gt;</code></td>
<td style="text-align: left;">Insérer une vidéo dans la page</td>
<td style="text-align: left;"><code>&lt;video src="mon_fichier.webm"&gt;</code></td>
</tr>
</tbody>
</table>
<p>Mais leurs possibilités sont limitées, notamment sur les attributs autorisés.</p></div></body></html>

Modified src/www/admin/static/doc/skriv.html from [4a74253cee] to [031f0f89b5].

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
<td style="text-align: left;"><code>Entourer le texte de ''deux apostrophes''</code></td>
</tr>
<tr>
<td style="text-align: left;"><strong>Gras</strong></td>
<td style="text-align: left;"><code>Entourer le texte de **deux astérisques**</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <ins>Souligné<ins></td>
<td style="text-align: left;"><code>Entourer le texte de deux __tirets bas__.</code></td>
</tr>
<tr>
<td style="text-align: left;"><del>Barré</del></td>
<td style="text-align: left;"><code>Deux --tirets hauts-- pour barrer.</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <sup>Exposant<sup></td>
<td style="text-align: left;"><code>XXI^^ème^^ siècle</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <sub>Indice<sub></td>
<td style="text-align: left;"><code>CO,,2,,</code></td>
</tr>
</tbody>
</table>
<p><strong>Attention :</strong> ces styles ne fonctionnent que si le code entoure des mots complets, ça ne fonctionne pas au milieu de mots.</p>
<pre><code>Un **mot** en gras. Mais on ne peut pas cou**per** un mot avec du gras.</code></pre>
<blockquote>







|



|



|



|







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
<td style="text-align: left;"><code>Entourer le texte de ''deux apostrophes''</code></td>
</tr>
<tr>
<td style="text-align: left;"><strong>Gras</strong></td>
<td style="text-align: left;"><code>Entourer le texte de **deux astérisques**</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <ins>Souligné</ins></td>
<td style="text-align: left;"><code>Entourer le texte de deux __tirets bas__.</code></td>
</tr>
<tr>
<td style="text-align: left;"><span style="text-decoration: line-through">Barré</span></td>
<td style="text-align: left;"><code>Deux --tirets hauts-- pour barrer.</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <sup>Exposant</sup></td>
<td style="text-align: left;"><code>XXI^^ème^^ siècle</code></td>
</tr>
<tr>
<td style="text-align: left;">Texte <sub>Indice</sub></td>
<td style="text-align: left;"><code>CO,,2,,</code></td>
</tr>
</tbody>
</table>
<p><strong>Attention :</strong> ces styles ne fonctionnent que si le code entoure des mots complets, ça ne fonctionne pas au milieu de mots.</p>
<pre><code>Un **mot** en gras. Mais on ne peut pas cou**per** un mot avec du gras.</code></pre>
<blockquote>

Modified src/www/admin/static/scripts/wiki_editor.js from [f4aae12d36] to [a519d2d60e].

173
174
175
176
177
178
179

180
181
182
183
184
185
186
			document.removeEventListener('keydown', EscapeEvent);

			if (!t.iframe) {
				return true;
			}
			t.parent.className = t.parent.className.replace(/ iframe$/, '');
			t.iframe.className = 'hidden';

		};


		var appendButton = function (name, title, action, altTitle)
		{
			var btn = document.createElement('button');
			btn.type = 'button';







>







173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
			document.removeEventListener('keydown', EscapeEvent);

			if (!t.iframe) {
				return true;
			}
			t.parent.className = t.parent.className.replace(/ iframe$/, '');
			t.iframe.className = 'hidden';
			t.textarea.focus();
		};


		var appendButton = function (name, title, action, altTitle)
		{
			var btn = document.createElement('button');
			btn.type = 'button';
314
315
316
317
318
319
320
321
322

323
324
325
326
		t.shortcuts.push({key: 'F11', callback: toggleFullscreen});
		t.shortcuts.push({ctrl: true, key: 'b', callback: applyBold });
		t.shortcuts.push({ctrl: true, key: 'g', callback: applyBold });
		t.shortcuts.push({ctrl: true, key: 'i', callback: applyItalic });
		t.shortcuts.push({ctrl: true, key: 't', callback: applyHeader });
		t.shortcuts.push({ctrl: true, key: 'l', callback: insertURL});
		t.shortcuts.push({ctrl: true, key: 's', callback: save});
		t.shortcuts.push({ctrl: true, shift: true, key: 'p', callback: openPreview});
		t.shortcuts.push({key: 'F1', callback: openSyntaxHelp});


		g.setParentDialogHeight('90%');
	});
}());







|

>




315
316
317
318
319
320
321
322
323
324
325
326
327
328
		t.shortcuts.push({key: 'F11', callback: toggleFullscreen});
		t.shortcuts.push({ctrl: true, key: 'b', callback: applyBold });
		t.shortcuts.push({ctrl: true, key: 'g', callback: applyBold });
		t.shortcuts.push({ctrl: true, key: 'i', callback: applyItalic });
		t.shortcuts.push({ctrl: true, key: 't', callback: applyHeader });
		t.shortcuts.push({ctrl: true, key: 'l', callback: insertURL});
		t.shortcuts.push({ctrl: true, key: 's', callback: save});
		t.shortcuts.push({ctrl: true, key: 'p', callback: openPreview});
		t.shortcuts.push({key: 'F1', callback: openSyntaxHelp});
		t.shortcuts.push({key: 'Escape', callback: openPreview});

		g.setParentDialogHeight('90%');
	});
}());

Modified src/www/skel-dist/content.css from [588f14e9e2] to [b5cd0b3bdf].

109
110
111
112
113
114
115














































116
117
118
119
120
121
122
    text-align: center;
}

.web-content table th {
    background: #eee;
    font-weight: bold;
}















































.web-content aside.toc {
    float: right;
    margin-left: 2em;
    max-width: 20em;
}








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
    text-align: center;
}

.web-content table th {
    background: #eee;
    font-weight: bold;
}

.web-content mark {
    background: yellow;
    color: #000;
    padding: 2px 4px;
    display: inline-block;
    box-shadow: 0px 0px 3px 1px #990;
    border-radius: .2em;
}

.web-content kbd {
    background: #ccc;
    color: #000;
    padding: 2px 4px;
    display: inline-block;
    box-shadow: 0px 2px 3px 1px #999;
    border: 1px solid #fff;
    border-radius: .2em;
}

.web-content samp {
    background: #333;
    color: #fff;
    padding: 2px 4px;
    display: inline-block;
    border-radius: .2em;
}

.web-content del {
    color: darkred;
    text-decoration: line-through;
}

.web-content ins {
    color: darkgreen;
    text-decoration: underline overline;
    text-decoration-color: green;
}

.web-content var {
    color: darkblue;
    background: #ddd;
    border-radius: .2em;
    padding: 2px 4px;
    display: inline-block;
}

.web-content aside.toc {
    float: right;
    margin-left: 2em;
    max-width: 20em;
}

137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152

.web-content .toc ol li:before {
    content: counters(item, ".") " ";
    counter-increment: item;
    color: #666;
}

aside.file a {
}

.web-content aside.file {
    margin: .8em;
}

.web-content aside.file small {
    opacity: 0.7;







<
<







183
184
185
186
187
188
189


190
191
192
193
194
195
196

.web-content .toc ol li:before {
    content: counters(item, ".") " ";
    counter-increment: item;
    color: #666;
}




.web-content aside.file {
    margin: .8em;
}

.web-content aside.file small {
    opacity: 0.7;
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201

.web-content aside.file a:hover {
    background-color: #ccc;
    color: darkred;
}

.web-content iframe {
    margin-bottom: 1rem auto;
    display: block;
}

.web-content figure.image, .web-content figure.video {
    text-align: center;
}

.web-content mark {
    background: yellow;
    color: #000;
    padding: 2px 4px;
    display: inline-block;
    box-shadow: 0px 0px 3px 1px #990;
    border-radius: .5em;
}

/** Video preview (youtube) */
.web-content figure.video a {
    position: relative;
    display: inline-flex;
}

.web-content figure.video a img {







|







<
<
<
<
<
<
<
<
<







215
216
217
218
219
220
221
222
223
224
225
226
227
228
229









230
231
232
233
234
235
236

.web-content aside.file a:hover {
    background-color: #ccc;
    color: darkred;
}

.web-content iframe {
    margin: 1rem auto;
    display: block;
}

.web-content figure.image, .web-content figure.video {
    text-align: center;
}










/** Video preview (youtube) */
.web-content figure.video a {
    position: relative;
    display: inline-flex;
}

.web-content figure.video a img {