{{tag>wiki syntax code line number}}
====== Mise en forme des extraits de code ======
**Dokuwiki** s'appuie sur **Geshi** pour la mise en forme des blocs de codes ou des extraits de fichiers (balises %%
%% et %%%%. Les options de mise en forme peuvent être transmises en utilisant la syntaxe suivante:
^ Description ^ Option |
| Activer la numérotation des lignes | enable_line_numbers="true" |
| Démarrer la numérotation en décalé | start_line_numbers_at="42" |
| Surligner un ou plusieurs lignes | highlight_lines_extra="2,5" |
| Désactiver la création des liens de documentation liés a certains mots clés | enable_keyword_links="false" |
===== Exemples =====
Un extrait de code C, ici sans mise en forme ''%%...
%%''
// main function -
// where the execution of program begins
int main()
{
// prints hello world
printf("Hello World");
return 0;
}
==== Afficher la numérotation ====
Pour afficher le code avec la numérotation des lignes:
On obtient alors:
// main function -
// where the execution of program begins
int main()
{
// prints hello world
printf("Hello World");
return 0;
}
En survolant la fonction **printf()** on peut voir qu'un lien a été automatiquement créé vers la documentation. Ce comportement par défaut peut être désactivé:
==== Décaler la numérotation ====
Dans cet exemple on utilise la balise file, les options sont passées de la même manière via un tableau clé=valeur
août 11 16:25:13 node-7c87 kernel: [UFW ALLOW] IN= OUT=enp0s31f6 SRC=192.9.200.14 DST=172.16.1.17 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=40472 DF PROTO=TCP SPT=55396 DPT=443 WINDOW=64240 RES=0>
août 11 16:25:13 node-7c87 kernel: [UFW BLOCK] IN= OUT=enp0s31f6 SRC=192.9.200.14 DST=192.168.1.57 LEN=1824 TOS=0x00 PREC=0x00 TTL=64 ID=59350 PROTO=UDP SPT=1716 DPT=1716 LEN=1804
août 11 16:25:14 node-7c87 kernel: [UFW ALLOW] IN= OUT=enp0s31f6 SRC=192.9.200.14 DST=192.9.200.231 LEN=87 TOS=0x00 PREC=0x00 TTL=64 ID=16840 DF PROTO=UDP SPT=48723 DPT=53 LEN=67
août 11 16:25:33 node-7c87 kernel: [UFW BLOCK] IN= OUT=enp0s31f6 SRC=192.9.200.14 DST=192.168.1.57 LEN=1824 TOS=0x00 PREC=0x00 TTL=64 ID=62427 PROTO=UDP SPT=1716 DPT=1716 LEN=1804
==== Surligner ====
Pour surligne une ou plusieurs lignes, on peut utiliser l'o
// main function -
// where the execution of program begins
int main()
{
// prints hello world
printf("Hello World");
return 0;
}
===== Références =====
* https://www.dokuwiki.org/syntax_highlighting