Table des matières

, , , ,

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 <code></code> et <file></file>. Les options de mise en forme peuvent être transmises en utilisant la syntaxe suivante:

<code languagecode [key="value", ...]>
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 <code none>...</code>

// 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:

<code c hello.c [enable_line_numbers="true"]>

On obtient alors:

hello.c
  1. // main function -
  2. // where the execution of program begins
  3. int main()
  4. {
  5.  
  6. // prints hello world
  7. printf("Hello World");
  8.  
  9. return 0;
  10. }

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é:

<code c hello.c [enable_line_numbers="true", enable_keyword_links="false"]>

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

<file txt [enable_line_numbers="true", start_line_numbers_at="8534"]>
  1. 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>
  2. 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
  3. 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
  4. 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

<code c hello.c [enable_line_numbers="true", highlight_lines_extra="2,5"]>
hello.c
  1. // main function -
  2. // where the execution of program begins
  3. int main()
  4. {
  5.  
  6. // prints hello world
  7. printf("Hello World");
  8.  
  9. return 0;
  10. }

Références