commit 441dc4d794d5067200f5daebb1751bebb82f52db Author: Suzanne Soy <jsmaniac.github@suzanne.soy> Date: Mon, 8 May 2023 00:17:42 +0100 Script to make an offline version of (a local copy of) wiki.gruntnetwork.com Diffstat:
55 files changed, 1440 insertions(+), 0 deletions(-)
diff --git a/.gitmodules b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "zimmer"] + path = zimmer + url = https://github.com/SuzanneSoy/wiki.gruntnetwork.com--zimmer diff --git a/download-website-script/Gruntnetwork-20230507204643-export-all-fix-pre.xml b/download-website-script/Gruntnetwork-20230507204643-export-all-fix-pre.xml @@ -0,0 +1,623 @@ +<mediawiki xmlns="http://www.mediawiki.org/xml/export-0.3/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mediawiki.org/xml/export-0.3/ http://www.mediawiki.org/xml/export-0.3.xsd" version="0.3" xml:lang="fr"> + <siteinfo> + <sitename>Gruntnetwork</sitename> + <base>https://wiki.gruntnetwork.com/Accueil</base> + <generator>MediaWiki 1.15.1</generator> + <case>first-letter</case> + <namespaces> + <namespace key="-2">Média</namespace> + <namespace key="-1">Spécial</namespace> + <namespace key="0" /> + <namespace key="1">Discussion</namespace> + <namespace key="2">Utilisateur</namespace> + <namespace key="3">Discussion utilisateur</namespace> + <namespace key="4">Gruntnetwork</namespace> + <namespace key="5">Discussion Gruntnetwork</namespace> + <namespace key="6">Fichier</namespace> + <namespace key="7">Discussion fichier</namespace> + <namespace key="8">MediaWiki</namespace> + <namespace key="9">Discussion MediaWiki</namespace> + <namespace key="10">Modèle</namespace> + <namespace key="11">Discussion modèle</namespace> + <namespace key="12">Aide</namespace> + <namespace key="13">Discussion aide</namespace> + <namespace key="14">Catégorie</namespace> + <namespace key="15">Discussion catégorie</namespace> + </namespaces> + </siteinfo> + <page> + <title>Accueil</title> + <id>1</id> + <revision> + <id>11737</id> + <timestamp>2011-06-21T11:25:11Z</timestamp> + <contributor> + <ip>193.239.192.194</ip> + </contributor> + <text xml:space="preserve">== gruntnetwork == + +gruntnetwork est un système d'exploitation sous licence Affero GPL. Actuellement il est en phase de développement, dans le cadre d'un projet pédagogique à l'Université Montpellier 2. + +== Nouveau Développeur ? == +{{:Nouveau Développeur}} + +[[notes]]</text> + </revision> + </page> + <page> + <title>Affichage Graphique</title> + <id>12</id> + <revision> + <id>67</id> + <timestamp>2009-03-04T15:14:06Z</timestamp> + <contributor> + <username>Jsmaniac</username> + <id>1</id> + </contributor> + <comment>correspond pas à ce qu'on a fait</comment> + <text xml:space="preserve" /> + </revision> + </page> + <page> + <title>Conventions</title> + <id>3</id> + <revision> + <id>31</id> + <timestamp>2009-02-08T17:02:59Z</timestamp> + <contributor> + <ip>78.115.6.242</ip> + </contributor> + <comment>/* En C */</comment> + <text xml:space="preserve">Les conventions suivantes seront utilisées pour un code homogène. + +== En C == + +* L'indentation se fait à 4 espaces par tabulation. +* Pas de transformation des espaces en tabulation. +* <code>nomsDeVariables</code> +* <code>NOMS_DE_CONSTANTE</code> +* Fonctions : +<pre> + type_retour nom_fonction(type_param_1 param_1, ..., type_param_n param_n) { + code; + } +</pre> +* Boucles for, avec déclaration locale à la boucle de l'itérateur s'il n'a pas lieu d'être à l'extérieur (int i=a) : +<pre> + for (int i=a; i<b; i++) { + code; + } +</pre> + +== En assembleur == + +On utilisera la syntaxe Gas, car elle est compatible avec le compilateur GCC</text> + </revision> + </page> + <page> + <title>Drivers/mode reel.h:int86</title> + <id>20</id> + <revision> + <id>54</id> + <timestamp>2009-02-11T13:40:21Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>Nouvelle page : {{fonctionC |void|int86|{{dec_param_d|int|interruption}}, {{dec_param_d|regs86|registres_in}}, {{dec_param_r|regs86|registres_out}} |{{param_d|registres_in}} est la valeur des regist...</comment> + <text xml:space="preserve">{{fonctionC +|void|int86|{{dec_param_d|int|interruption}}, {{dec_param_d|regs86|registres_in}}, {{dec_param_r|regs86|registres_out}} +|{{param_d|registres_in}} est la valeur des registres +avant l'interruption {{param_d|interruption}}, +{{param_r|registres_out}} est la valeur des registres après interruption. + +Cette fonction n'est pas encore écrite. +}}</text> + </revision> + </page> + <page> + <title>Environnement de programmation</title> + <id>8</id> + <revision> + <id>27</id> + <timestamp>2009-01-06T11:51:51Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>/* Tests */</comment> + <text xml:space="preserve">== Éditeur == + +Votre préféré :) Personne ne vous oblige à quoi que ce soit. Prévoyez-en un avec indentation et coloration syntaxique quand même, nano et cat sont un peu rudimentaires de ce point de vue… + +== Gestion des versions == + +SVN sera utilisé pour la gestion des versions. + +<pre> + svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/systeme + svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/applications +</pre> + +Voir [http://faq.tuxfamily.org/SVN/Fr la faq de TuxFamily] pour plus d'infos sur l'utilisation. + +== Compilateur == + +Pour le C : '''gcc'''. Car c'est le plus courant sous linux, car il gère directement l'assembleur (syntaxe gas), car beaucoup de monde l'utilise donc on trouvera facilement de la documentation, car il est sous licence libre. + +On utilisera la version 4.3, de préférence 4.3.2 (c'est celle par défaut sous ubuntu, et sous debian testing/unstable). Si vous avez une autre version, pas de problème, mais en cas de bug bizarre, il vaudra mieux vérifier que c'est bien le code qui plante et non pas une version bugguée de gcc (c'est arrivé par le passé…) + +== Tests == + +'''NE TESTEZ JAMAIS gruntnetwork SUR UN PC RÉEL''', à moins que vous n'ayez pas peur d'un effacement de disque. +Je possède moi-même un PC avec un vieux disque dur vide de quelques Go, ça pourra servir pour faire des tests grandeur nature lorsque le projet sera viable. + +Pour les tests nous utiliserons [http://bellard.org/qemu/ qemu], un émulateur de PC libre, fonctionnant sous linux et windows, probablement sous mac aussi. Seule l'architecture x86 sera supportée pour l'instant. + +Lorsque nous en viendrons à écrire les drivers, il sera possible d'utiliser bochs pour voir si les bons drivers sont chargés lorsque la configuration matérielle (l'ensemble du matériel disponible sur un PC) change. + +Le démarrage (boot) sera assuré par [[GRUB]], installé sur une image de disquette vierge (un fichier de 1.44 Mo simulant une disquette sur laquelle seront présents GRUB, gruntnetwork et rien d'autre). Cette configuration simple évitera que d'autres facteurs de causent des bugs.</text> + </revision> + </page> + <page> + <title>GRUB</title> + <id>11</id> + <revision> + <id>28</id> + <timestamp>2009-01-06T11:53:42Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>Nouvelle page : Grub est le chargeur de démarrage utilisé par gruntnetwork. Lors du démarrage de l'ordinateur, il est chargé en mémoire par le BIOS (Basic Input Output System), puis il est ex...</comment> + <text xml:space="preserve">Grub est le chargeur de démarrage utilisé par gruntnetwork. + +Lors du démarrage de l'ordinateur, il est chargé en mémoire par le BIOS (Basic Input Output System), puis il est exécuté. Sa tâche consiste alors à afficher un menu à l'écran permettant à l'utilisateur de choisir le système d'exploitation qu'il souhaite démarrer.</text> + </revision> + </page> + <page> + <title>Langage</title> + <id>9</id> + <revision> + <id>25</id> + <timestamp>2009-01-04T05:54:38Z</timestamp> + <contributor> + <username>Jsmaniac</username> + <id>1</id> + </contributor> + <minor/> + <comment>a renommé [[Langage/]] en [[Langage]]</comment> + <text xml:space="preserve">gruntnetwork utilise de manière interne un langage de programmation graphique, qui se présente de la manière suivante : + +* Les fonctions sont représentées par des blocs +* Les blocs possèdent des ports d'entrée (paramètres de la fonction) et de sortie (valeur'''s''' de sortie) +* Un bloc n'est pas caractérisé par son nom, mais par un identifiant interne, donc pas de conflits de nommage + +* Les ports ont des conditions sur leurs valeurs (type, intervalle de valeurs, …) +* Les ports peuvent (devraient) avoir une valeur par défaut +* Les ports ont un nom et une description associée + +* Les blocs sont reliés entre eux en connectant leurs ports +* Un port de sortie peut être connecté à plusieurs ports d'entrée, la valeur de sortie étant conservée en mémoire tant qu'elle est nécessaire (ceci est l'équivalent d'un <code>let</code> en scheme, ou d'une variable locale) +* Un bloc est composé d'autres blocs dont certains ports sont connectés aux ports du bloc englobant. + +Il y a une certaine analogie entre les blocs et des circuits éléctroniques : l'information circule au travers des connexions et est modifiée par les blocs. Un bloc effectue une tâche définie, et peut être vu comme un composant électronique : on n'a pas besoin de voir à l'intérieur pour l'utiliser. + +Le langage s'écrit au travers d'une interface de recherche, qui permet de sélectionner le bon bloc parmi plusieurs homonymes s'il y en a.</text> + </revision> + </page> +<!-- + <page> + <title>Langage/</title> + <id>10</id> + <revision> + <id>26</id> + <timestamp>2009-01-04T05:54:38Z</timestamp> + <contributor> + <username>Jsmaniac</username> + <id>1</id> + </contributor> + <comment>a renommé [[Langage/]] en [[Langage]]</comment> + <text xml:space="preserve">#REDIRECT [[Langage]]</text> + </revision> + </page> +--> + <page> + <title>Liens</title> + <id>4</id> + <revision> + <id>73</id> + <timestamp>2009-12-31T01:15:10Z</timestamp> + <contributor> + <ip>195.83.178.10</ip> + </contributor> + <comment>Annulation des modifications 70 de [[Special:Contributions/94.253.24.87|94.253.24.87]] ([[User talk:94.253.24.87|discussion]])</comment> + <text xml:space="preserve">== Notions == + +* [http://fr.wikipedia.org/wiki/Basic_Input_Output_System BIOS] pour ceux qui ne savent pas ce que c'est + +=== Assembleur === + +* [http://mark.masmcode.com/ Optimisation] +* [http://www.asmcommunity.net/ asmcommunity.net] +* [http://gok.customer.netspace.net.au/resources/ Hacks SVGA] +* [http://www.x86-guide.com/ Guide pour l'assembleur X86] +* [http://asm.sourceforge.net/ asm.sourceforge.net] +* [http://www.ctyme.com/intr/int.htm Interruptions du BIOS] +* [http://heim.ifi.uio.no/~stanisls/helppc/idx_interrupt.html Encore les interruptions] +* [http://www.penguin.cz/~literakl/intel/intel.html 80x86 instruction set] + +=== Démarrage (boot) === + +* [http://susam.in/articles/boot-sector-code/ Secteur de boot] +* [http://www.osdcom.info/content/view/33/39/ Après GRUB (multiboot)] +* Premier boot de la première version de linux : [http://www.oldlinux.org/Linux.old/kernel/0.00/linux-0.01/boot/boot.s] et [http://www.oldlinux.org/Linux.old/kernel/0.1x/linux-0.10/boot/bootsect.s] +* [http://en.wikibooks.org/wiki/X86_Assembly/Bootloaders Chargeurs de démarrage] sur le wiki X86_Assembly +* [http://www.vnutz.com/content/program_a_bootstrap_loader Programmer un chargeur de démarrage] +* [http://www.pixelbeat.org/docs/disk/ Organisation du disque dur] (secteur de boot et fichiers de grub) +* [http://www.gnu.org/software/grub/manual/multiboot/multiboot.html Multiboot Specification] +* [http://www.sfr-fresh.com/linux/misc/grub-0.97.tar.gz/ Grub-0.97.tar.gz] (Téléchargement des sources) + +=== Modes du processeur (réel, protégé, ...) === +* [http://www.x86.org/articles/pmbasics/tspec_a1_doc.htm Protected Mode Basics] : Les bases, y entrer, en sortir '''sur le processeur 80286''' (donc pas pour nous) +* [http://en.wikibooks.org/wiki/X86_Assembly/Protected_Mode X86 Assembly/Protected Mode] +* [http://osdev.berlios.de/v86.html Virtual 8086 Mode] : du réel dans du protégé +* [http://benoit.papillault.free.fr/c/l32/pm.asm pm.asm] : passage en mode protégé puis retour en mode réel + du V86 quelque part. +* [http://www.sudleyplace.com/pmtorm.html Transition from Protected Mode to Real Mode] + +=== Affichage Graphique === +Voir l'article [[Affichage Graphique]]. + +* [http://heim.ifi.uio.no/~stanisls/helppc/ascii.gif Table des caractères ascii] +* [http://www.faqs.org/faqs/pc-hardware-faq/supervga-programming/ SuperVGA/VESA programmer's notes] +* [http://en.wikipedia.org/wiki/VESA_BIOS_Extensions VESA BIOS Extensions] sur wikipedia +* [http://atschool.eduweb.co.uk/camdean/pupils/amac/vga.htm#11 Tutorial on VGA Graphics] : VGA, souris, bitmap +* [http://osdev.berlios.de/v86.html Virtual 8086 Mode] : Utiliser le mode 8086 virtuel pour accéder aux fonctions VESA du BIOS +* [http://www.inversereality.org/tutorials/graphics%20programming/videomodesvesa.html VESA Video Modes] Comment obtenir la liste des modes disponibles et des informations les concernant. +* [http://www.student.cs.uwaterloo.ca/~cs452/grub/ patch vbe] pour que grub nous passe en mode graphique +* [http://svn.navi.cx/misc/trunk/metalkit/lib/vbe.c Utilisation de l'interface en mode protégé de VBE] + +==== Références VESA ==== + +* [http://docs.ruudkoot.nl/vesasp12.txt VESA BIOS Extension 1.2] +* [http://docs.ruudkoot.nl/vbe20.txt VESA BIOS Extension 2.0] +* [http://www.vesa.org/public/VBE/vbe3.pdf VESA BIOS Extension 3.0] + +=== Drivers === + +==== Souris ==== +* [http://wiki.osdev.org/Mouse_Input Mouse Input] : Comment configurer et écouter une souris PS/2 sur osdev.org + +==== Clavier ==== +* [http://wiki.osdev.org/PS2_Keyboard#Protected_Mode_Keyboard_Driver PS2 Keyboard] : driver sur osdev.org +* [http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html Keyboard scancodes] Quel code envoyé par le clavier correspond à quel caractère. + +== Portails == + +* [http://www.osdev.org/ osdev.org] : Wiki + Forum sur le développement d'OS +* [http://www.nondot.org/sabre/os/articles OSRC] : Operating System Ressource Center +* [http://www.osdever.net/ Bona Fide OS Development] + +== Tutoriels == + +* [http://a.michelizza.free.fr/pmwiki.php?n=TutoOS.TutoOS Pépin] : tuto du boot au shell, très complet. +* [http://aaprog.blogspot.com/2008/04/systme-dexploitation-1-les-outils.html AAProg] : Pas beaucoup de code mais de très bonnes explications +* Tutoriels sur [http://www.osdever.net/tutorials.php?cat=0&sort=1 Bona Fide] + +== Petits systèmes d'exploitation == +Toujours pratique pour s'inspirer… + +* [http://wiki.osdev.org/Projects Liste de projets d'OS] sur osdev.org +* [http://www.dynatos.org/ dynatos] +* [http://gok.customer.netspace.net.au/resources/ UNIOS] +* [http://www.sarg.ryerson.ca/~cmwilson/code/funos/funos.html funos] +* [http://www.ninj4.net/kinetic/ kinetic], écrit en haskell. Ça vaut le coup d'oeuil. + +== Divers == +* [http://www.siteduzero.com/forum-83-276054-p1-creer-son-propre-systeme-d-exploitation.html Sujet] sur le site du zéro, pas mal de liens</text> + </revision> + </page> + <page> + <title>Notes</title> + <id>24</id> + <revision> + <id>11738</id> + <timestamp>2011-06-21T11:27:13Z</timestamp> + <contributor> + <ip>193.239.192.194</ip> + </contributor> + <comment>Page créée avec « Permettre à une construction de déclarer des mot-clés (keywords) qui seront valides ou non à certains endroits du code dans la construction, mais ne pourront pas être re… »</comment> + <text xml:space="preserve">Permettre à une construction de déclarer des mot-clés (keywords) qui seront valides ou non à certains endroits du code dans la construction, mais ne pourront pas être redéclarés tant que la construction a un effet. C'est une alternative à la possibilité de rajouter des variables "par nom" pour qu'elles soient utilisées par ex. par le code d'une fonction.</text> + </revision> + </page> + <page> + <title>Nouveau Développeur</title> + <id>7</id> + <revision> + <id>29</id> + <timestamp>2009-02-02T00:31:55Z</timestamp> + <contributor> + <ip>90.9.192.151</ip> + </contributor> + <comment>Ajout de la sous partie S'inscrire</comment> + <text xml:space="preserve">== S'inscrire == +* Créez-vous un compte sur [http://tuxfamily.org/fr/subscribe TuxFmaily] et adhérez au projet gruntnetwork +* Créez-vous un compte sur le [http://wiki.gruntnetwork.com/index.php5?title=Special:Connexion&type=signup&returnto=Nouveau_D%C3%A9veloppeur wiki] +* Créez-vous un compte sur le [http://tracker.gruntnetwork.com/index.php?do=register tracker] + +== À lire == +* [[Prérequis]] : Un peu de lecture pour les vacances. Si vous ne savez rien sur les sujets listés dans cette page, vous risquez d'être à la traîne. +* [[Conventions]] : À respecter, pour un code homogène. Si vous avez quoi que ce soit à redire dessus, faites-le vite, avant qu'on ait des centaines de lignes à reformater :) +* [[Environnement de programmation]] : Avec quoi on travaille (Emacs ou Vim + gcc + qemu ou bochs). +* [http://tracker.gruntnetwork.com/roadmap Feuille de route] : Qui fait quoi, Quand, dans Quel ordre. +* [[Liens]] : Quand vous ne saurez plus comment faire un truc en assembleur :)</text> + </revision> + </page> + <page> + <title>Prérequis</title> + <id>2</id> + <revision> + <id>33</id> + <timestamp>2009-02-08T17:15:49Z</timestamp> + <contributor> + <ip>78.115.6.242</ip> + </contributor> + <comment>/* Connaissance du C et de l'assembleur */</comment> + <text xml:space="preserve">'''Une chose à retenir''' : Si vous êtes largués, si vous ne comprenez pas, si vous piétinez sur un bout de code qui compile pas : n'attendez pas le déluge pour vous signaler ! +Il y aura toujours quelqu'un pour vous aider à comprendre ce qui vous pose problème. + +Certaines pages lisées ici sont en anglais : si vous avez du mal, envoyez-moi un message et je ferai une traduction. + +== Un peu de lecture == + +=== Conception D'OS (GNU/Linux Magazine) === + +Dans GNU/Linux Magazine France est paru il y a quelques années une série d'articles sur la conception de systèmes d'exploitation. Les articles expliquent, pas à pas, comment créer un système simple. Je recommande vivement à tout le monde d'avoir lu ces articles d'ici la mi-janvier, comme ça on saura tous de quoi on parle. + +[http://sos.enix.org/fr/SOSDownload Les articles] sont disponibles gratuitement sur internet. + +N°s des magazines : + +* 62 : Boot + Console +* 63 : Segmentation et Interruptions +* 65 : Pagination +* 68 : Multitâche et changement de contexte +* 69 : Threads +* 70 : Espaces d'adressage, appels système et applications utilisateur +* 72 : Gestion de l'espace virtuel utilisateur +* 74 : VFS (système de fichiers virtuel) + +Vu que ce dernier numéro contient la deuxième partie d'un article très intéressant sur la compression de données, vous voudrez peut-être la première partie : n° 73. +Le site [http://www.ed-diamond.com/ ed-diamond] vous permet de commander ces anciens numéros. Il propose un « PowerPack x10 » à 25€, donc ça fait un bon cadeau de noël pour pas trop cher :) + +=== a Simple Operating System === + +Un système d'exploitation simple : [http://minso.free.fr/cavinfo/systeme/sos.html sos] + +== Connaissance du C et de l'assembleur == + +==== Cours de C : ==== +* http://c.developpez.com/cours/ +* http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html +* http://c.developpez.com/faq/ + +==== Cours d'ASM pour plateforme x86 : ==== +* http://benoit-m.developpez.com/assembleur/tutoriel/ +* http://www.scribd.com/search?c=all&query=x86&commit=Search + +== Compréhension de la procédure de démarrage (Boot) == + +* [http://fr.wikipedia.org/wiki/Master_boot_record MBR] +* [http://www.pixelbeat.org/docs/disk/ GRUB] +* (Une des) [http://fr.wikipedia.org/wiki/Init procédure(s) d'initialisation] de GNU/Linux (Nous n'utiliserons probablement pas cette méthode, mais c'est bon à connaître). + + +Nous utiliserons Grub et le standard Multiboot plutôt que de programmer notre propre chargeur de démarrage, cependant les méchanismes du MBR et de GRUB sont à comprendre pour maîtriser la chose (et pour la soutenance orale...). + +== Interruptions du BIOS (pages de référence) == + +* [http://www.ctyme.com/intr/int.htm Liste des interruptions] et de comment on s'en sert +* Les interruptions int 10h et int 13h seront utilisées. +* [http://courses.ece.uiuc.edu/ece390/books/labmanual/graphics-int10h.html int 10h] +* [http://courses.ece.uiuc.edu/ece390/books/labmanual/graphics-mode13h.html int 13h (VGA)] +* [http://pdos.csail.mit.edu/6.828/2008/readings/hardware/vgadoc/VESA.TXT Modes VESA]</text> + </revision> + </page> + <page> + <title>Test fonctionC</title> + <id>6</id> + <revision> + <id>12</id> + <timestamp>2009-01-01T01:05:50Z</timestamp> + <contributor> + <ip>90.14.26.225</ip> + </contributor> + <comment>Nouvelle page : {{fonctionC |int|floor|float x |Renvoie l'arrondi à l'inférieur de x }}</comment> + <text xml:space="preserve">{{fonctionC +|int|floor|float x +|Renvoie l'arrondi à l'inférieur de x +}}</text> + </revision> + </page> + <page> + <title>Nouveau Développeur</title> + <id>7</id> + <revision> + <id>29</id> + <timestamp>2009-02-02T00:31:55Z</timestamp> + <contributor> + <ip>90.9.192.151</ip> + </contributor> + <comment>Ajout de la sous partie S'inscrire</comment> + <text xml:space="preserve">== S'inscrire == +* Créez-vous un compte sur [http://tuxfamily.org/fr/subscribe TuxFmaily] et adhérez au projet gruntnetwork +* Créez-vous un compte sur le [http://wiki.gruntnetwork.com/index.php5?title=Special:Connexion&type=signup&returnto=Nouveau_D%C3%A9veloppeur wiki] +* Créez-vous un compte sur le [http://tracker.gruntnetwork.com/index.php?do=register tracker] + +== À lire == +* [[Prérequis]] : Un peu de lecture pour les vacances. Si vous ne savez rien sur les sujets listés dans cette page, vous risquez d'être à la traîne. +* [[Conventions]] : À respecter, pour un code homogène. Si vous avez quoi que ce soit à redire dessus, faites-le vite, avant qu'on ait des centaines de lignes à reformater :) +* [[Environnement de programmation]] : Avec quoi on travaille (Emacs ou Vim + gcc + qemu ou bochs). +* [http://tracker.gruntnetwork.com/roadmap Feuille de route] : Qui fait quoi, Quand, dans Quel ordre. +* [[Liens]] : Quand vous ne saurez plus comment faire un truc en assembleur :)</text> + </revision> + </page> + <page> + <title>Affichage Graphique</title> + <id>12</id> + <revision> + <id>67</id> + <timestamp>2009-03-04T15:14:06Z</timestamp> + <contributor> + <username>Jsmaniac</username> + <id>1</id> + </contributor> + <comment>correspond pas à ce qu'on a fait</comment> + <text xml:space="preserve" /> + </revision> + </page> + <page> + <title>Drivers/mode reel.h:int86</title> + <id>20</id> + <revision> + <id>54</id> + <timestamp>2009-02-11T13:40:21Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>Nouvelle page : {{fonctionC |void|int86|{{dec_param_d|int|interruption}}, {{dec_param_d|regs86|registres_in}}, {{dec_param_r|regs86|registres_out}} |{{param_d|registres_in}} est la valeur des regist...</comment> + <text xml:space="preserve">{{fonctionC +|void|int86|{{dec_param_d|int|interruption}}, {{dec_param_d|regs86|registres_in}}, {{dec_param_r|regs86|registres_out}} +|{{param_d|registres_in}} est la valeur des registres +avant l'interruption {{param_d|interruption}}, +{{param_r|registres_out}} est la valeur des registres après interruption. + +Cette fonction n'est pas encore écrite. +}}</text> + </revision> + </page> + <page> + <title>Modèle:Dec param d</title> + <id>17</id> + <revision> + <id>52</id> + <timestamp>2009-02-11T13:34:50Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <text xml:space="preserve">d:{{{1}}} {{{2}}}</text> + </revision> + </page> + <page> + <title>Modèle:Dec param r</title> + <id>18</id> + <revision> + <id>53</id> + <timestamp>2009-02-11T13:35:32Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <text xml:space="preserve">r:{{{1}}} {{{2}}}</text> + </revision> + </page> + <page> + <title>Modèle:FonctionC</title> + <id>5</id> + <revision> + <id>15</id> + <timestamp>2009-01-01T01:08:08Z</timestamp> + <contributor> + <ip>90.14.26.225</ip> + </contributor> + <text xml:space="preserve">== {{{2}}} == + +<code> +{{{1}}} {{{2}}}({{{3}}}); +</code> + +=== Description === +{{{4}}}</text> + </revision> + </page> + <page> + <title>Modèle:Param d</title> + <id>14</id> + <revision> + <id>47</id> + <timestamp>2009-02-11T13:32:45Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <text xml:space="preserve">d:<code>{{{1}}}</code></text> + </revision> + </page> + <page> + <title>Modèle:Param r</title> + <id>15</id> + <revision> + <id>45</id> + <timestamp>2009-02-11T13:29:35Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>Nouvelle page : r:<code>{{{1}}}</code></comment> + <text xml:space="preserve">r:<code>{{{1}}}</code></text> + </revision> + </page> + <page> + <title>Environnement de programmation</title> + <id>8</id> + <revision> + <id>27</id> + <timestamp>2009-01-06T11:51:51Z</timestamp> + <contributor> + <ip>162.38.218.206</ip> + </contributor> + <comment>/* Tests */</comment> + <text xml:space="preserve">== Éditeur == + +Votre préféré :) Personne ne vous oblige à quoi que ce soit. Prévoyez-en un avec indentation et coloration syntaxique quand même, nano et cat sont un peu rudimentaires de ce point de vue… + +== Gestion des versions == + +SVN sera utilisé pour la gestion des versions. + +<pre> + svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/systeme + svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/applications +</pre> + +Voir [http://faq.tuxfamily.org/SVN/Fr la faq de TuxFamily] pour plus d'infos sur l'utilisation. + +== Compilateur == + +Pour le C : '''gcc'''. Car c'est le plus courant sous linux, car il gère directement l'assembleur (syntaxe gas), car beaucoup de monde l'utilise donc on trouvera facilement de la documentation, car il est sous licence libre. + +On utilisera la version 4.3, de préférence 4.3.2 (c'est celle par défaut sous ubuntu, et sous debian testing/unstable). Si vous avez une autre version, pas de problème, mais en cas de bug bizarre, il vaudra mieux vérifier que c'est bien le code qui plante et non pas une version bugguée de gcc (c'est arrivé par le passé…) + +== Tests == + +'''NE TESTEZ JAMAIS gruntnetwork SUR UN PC RÉEL''', à moins que vous n'ayez pas peur d'un effacement de disque. +Je possède moi-même un PC avec un vieux disque dur vide de quelques Go, ça pourra servir pour faire des tests grandeur nature lorsque le projet sera viable. + +Pour les tests nous utiliserons [http://bellard.org/qemu/ qemu], un émulateur de PC libre, fonctionnant sous linux et windows, probablement sous mac aussi. Seule l'architecture x86 sera supportée pour l'instant. + +Lorsque nous en viendrons à écrire les drivers, il sera possible d'utiliser bochs pour voir si les bons drivers sont chargés lorsque la configuration matérielle (l'ensemble du matériel disponible sur un PC) change. + +Le démarrage (boot) sera assuré par [[GRUB]], installé sur une image de disquette vierge (un fichier de 1.44 Mo simulant une disquette sur laquelle seront présents GRUB, gruntnetwork et rien d'autre). Cette configuration simple évitera que d'autres facteurs de causent des bugs.</text> + </revision> + </page> + <page> + <title>Test fonctionC</title> + <id>6</id> + <revision> + <id>12</id> + <timestamp>2009-01-01T01:05:50Z</timestamp> + <contributor> + <ip>90.14.26.225</ip> + </contributor> + <comment>Nouvelle page : {{fonctionC |int|floor|float x |Renvoie l'arrondi à l'inférieur de x }}</comment> + <text xml:space="preserve">{{fonctionC +|int|floor|float x +|Renvoie l'arrondi à l'inférieur de x +}}</text> + </revision> + </page> +</mediawiki> diff --git a/download-website-script/cmd.sh b/download-website-script/cmd.sh @@ -0,0 +1,22 @@ +mv localhost "localhost_$(date)" + +(cd ../zimmer; npm install) + +../zimmer/wikizimmer.js http://localhost/mediawiki/index.php/Accueil \ + --pages 'Accueil|Affichage_Graphique|Conventions|Drivers/mode_reel.h:int86|Environnement_de_programmation|GRUB|Langage|Liens|Notes|Nouveau_Développeur|Prérequis|Test_fonctionC|Toutes_les_pages' \ + --content body \ + --remove 'script:not(#random-script),a[href*="action=edit"],.editsection,.mw-editsection,#privacy,#about,#disclaimer,#p-personal,#p-cactions-mobile,#p-cactions,#column-one h2,#p-personal-toggle,#globalWrapper-toggle,#p-search,#t-whatlinkshere,#t-recentchangeslinked,#t-permalink,#t-info,#n-recentchanges' $(: ',#t-specialpages') \ + --template template.html \ + --style stub.css \ + --no-default-style \ + --verbose \ + +sed -i -e 's|./../data:image/svg+xml|data:image/svg+xml|g' localhost/-/zim.css + +cp localhost/Accueil.html localhost/index.html + +cid="$(ipfs cid base32 "$(ipfs add --recursive --progress --hidden --quieter --pin=false localhost)" | sed -e 's|^|https://|;s|$|.ipfs.dweb.link|')" + +(printf %s "$cid" | wl-copy) || true + +printf \\n%s\\n "$cid" diff --git a/download-website-script/localhost/-/audio-ltr.svg b/download-website-script/localhost/-/audio-ltr.svg @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#36b" d="m7.002 1.01-3 3h-3v4h3l3 3zm-1 2.5v5l-1.5-1.5h-2.5v-2h2.5z"/> + <path fill="#15a5ea" d="M7.432 4.11c0-.621.621-1.243 1.243-.621 0 0 .621.621.621 2.485s-.62 2.485-.62 2.485c-.622.621-1.244 0-1.244-.622 0 0 .621-.62.621-1.864s-.62-1.864-.62-1.864z"/> + <path fill="#15a5ea" d="M9.292 2.81c0-.621.621-1.243 1.243-.621 0 0 1.243 1.243 1.243 3.728s-1.243 3.728-1.243 3.728c-.621.621-1.243 0-1.243-.622 0 0 1.243-1.243 1.243-3.107S9.292 2.81 9.292 2.81z"/> +</svg> diff --git a/download-website-script/localhost/-/bullet.svg b/download-website-script/localhost/-/bullet.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13" viewBox="0 0 1.323 3.44"> + <path fill="#638c9c" d="M0 1.852v1.323h1.323V1.852z"/> +</svg> diff --git a/download-website-script/localhost/-/chat-ltr.svg b/download-website-script/localhost/-/chat-ltr.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#36b" d="m1.622 2.01-.621.621v5.757l.621.622h1.69l-.622 2.728L7 9.01h4.38l.62-.622V2.631l-.621-.621zm.379 1h9v5H7L4.099 9.907 5 8.01H2z"/> +</svg> diff --git a/download-website-script/localhost/-/document-ltr.svg b/download-website-script/localhost/-/document-ltr.svg @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#15a5ea" d="M7.5 2v3H10l1-1H8.5V1z"/> + <path fill="#36b" d="M3 1v10h8V4L8.5 1zm1 1h4l2 2.5V10H4z"/> +</svg> diff --git a/download-website-script/localhost/-/external-ltr.svg b/download-website-script/localhost/-/external-ltr.svg @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#36b" d="M5.002 1.01h7v7l-2-2-3 2v-1l3-2.25 1 1V2.01h-3.75l1 1-2.25 3h-1l2-3z"/> + <path fill="#36b" d="M7.002 3.01h-5v8h8v-5h-1v4h-6v-6h4z"/> + <path fill="#15a5ea" d="M4.082 5.51c0-.621.621-.621.621-.621 1.864.621 3.107 1.864 3.728 3.728 0 0 0 .621-.62.621-1.245-1.864-1.866-2.485-3.73-3.728z"/> +</svg> diff --git a/download-website-script/localhost/-/favicon b/download-website-script/localhost/-/favicon Binary files differ. diff --git a/download-website-script/localhost/-/ftp-ltr.svg b/download-website-script/localhost/-/ftp-ltr.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#3465ba" d="M1.043 2.466v7.5l1-.987V2.966h2l2 1h4v2h1v-2.5l-.5-.5h-4.5l-2-1h-2.5z"/> + <path fill="#16a4e8" d="M6.043 4.966h-3.5l-.5.5-1 4.5h10v-4.5l-.5-.5zm0 1h4v3h-7.75l.75-3h2z"/> + <path fill="#3465ba" d="M2.043 10.966v1h8v-1z"/> + <path fill="#3465ba" d="M5.043 9.466v2h2v-2c0-.5-2-.5-2 0z"/> +</svg> diff --git a/download-website-script/localhost/-/headbg.jpg b/download-website-script/localhost/-/headbg.jpg Binary files differ. diff --git a/download-website-script/localhost/-/icon-chat.svg b/download-website-script/localhost/-/icon-chat.svg @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="d" cx="2.698" cy="1.985" r=".942" fx="2.698" fy="1.985" gradientTransform="matrix(1.23922 .18503 -.09172 .61432 -.452 .228)" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#b" id="c" cx="1.852" cy=".952" r=".926" fx="1.852" fy=".952" gradientTransform="matrix(2 0 0 .71429 -1.852 .378)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="b"> + <stop offset="0" stop-color="#d8eef8" stop-opacity=".996"/> + <stop offset="1" stop-color="#75badf"/> + </linearGradient> + <linearGradient id="a"> + <stop offset="0" stop-color="#fef2d3"/> + <stop offset="1" stop-color="#fabd23"/> + </linearGradient> + </defs> + <path fill="url(#c)" fill-rule="evenodd" d="M.661.926v.794l.133.132.264.53h.265l1.19-.662V.926L2.25.661H.926z"/> + <path fill="url(#d)" fill-rule="evenodd" d="M1.455 1.72v.794l.397.264h1.455l.265-.264V1.72l-.265-.265H1.72z"/> + <path fill="#fff" fill-rule="evenodd" d="M1.455 1.72c.36 1.327 2.086.807 2.117.794l-.265.264-.661.132-.265.265h-.264l-.53-.53z"/> + <path fill="#a3a3a3" d="M1.852 2.646h.265v.265h-.265z"/> + <path fill="#a3a3a3" d="M.794.53v.264H2.38V.529zm0 .264H.529v1.058h.265zm0 1.058V2.91h.264V1.852zm.794-.53v.265H3.44v-.264zm0 .265h-.265v1.059h.265zm.264 1.323v.794h.265V2.91z"/> + <path fill="#a3a3a3" d="M1.588 2.646h.265v.265h-.265z"/> + <path fill="#4e4e4e" d="M2.381.794v.529h.265v-.53zm1.059.793v1.059h.264V1.587zm0 1.059h-.794v.264h.794zm-.794.264H2.38v.265h.265zm-.265.265h-.264v.265h.264zm-1.323-.794v.265h.265V2.38zm.53.265v.264h.529v-.264h-.53z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-globe.svg b/download-website-script/localhost/-/icon-globe.svg @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="d" cx="26.167" cy="7.091" r="5" fx="26.167" fy="7.091" gradientTransform="matrix(.37042 0 0 .26458 -8.105 -.024)" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#b" id="c" cx="7.144" cy="1.587" r="1.521" fx="7.144" fy="1.587" gradientTransform="matrix(1.2174 0 0 .86957 -6.845 .207)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="b"> + <stop offset="0" stop-color="#f6f9fe"/> + <stop offset="1" stop-color="#60acf9"/> + </linearGradient> + <linearGradient id="a"> + <stop offset="0" stop-color="#9bc56a"/> + <stop offset="1" stop-color="#3d801e" stop-opacity=".932"/> + </linearGradient> + </defs> + <path fill="url(#c)" fill-rule="evenodd" d="m.794 1.323.264-.53.53-.264c.264-.264.793-.264 1.058 0l.529.265.265.529c.264.264.264.794 0 1.058l-.265.53-.53.264c-.264.265-.793.265-1.057 0l-.53-.265-.264-.529c-.265-.264-.265-.794 0-1.058z"/> + <path fill="url(#d)" fill-rule="evenodd" d="m2.117.397-.53.132-.529.265-.132.264c.046.343.422.658.579.749.157.09.194.223.182.256-.013.033-.67.376-.761.583l.132.264.53.265.264.132.794-.132.264-.132-.264-.133s-.24-.002-.273-.15c-.033-.15.008-.379-.277-.602-.14-.11-.252-.066-.285-.136-.033-.07.07-.116.029-.199-.042-.083-.236-.136-.22-.244.017-.107.203.037.207-.029.004-.066-.004-.24.112-.244.205-.237.183-.594.178-.91zM2.91.66c-.181.096-.506.083-.529.302-.014.141-.019.405.104.624a.513.513 0 0 0 .616.253c.122-.047.29-.248.47-.253l-.131-.264-.265-.53z"/> + <path fill="#8b8b8b" d="M1.588.265v.264h.793V.265zm0 .264h-.53v.265h.53zm-.53.265H.794v.529h.264zm-.264.529H.529V2.38h.265zm0 1.058v.53h.264v-.53zm.264.53v.264h.53V2.91zm.53.264v.265h.264v-.265z"/> + <path fill="#4e4e4e" d="M2.381.265v.264h.265V.265zm.265.264v.265h.529V.529zm.529.265v.529h.265v-.53zm.265.529V2.38h.264V1.323zm0 1.058h-.265v.53h.265zm-.265.53h-.53v.264h.53zm-.53.264h-.793v.265h.794z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-page.svg b/download-website-script/localhost/-/icon-page.svg @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <linearGradient id="a"> + <stop offset="0" stop-color="#b8d6f4"/> + <stop offset="1" stop-color="#fff"/> + </linearGradient> + <linearGradient xlink:href="#a" id="b" x1="1.852" x2="1.852" y1="1.587" y2="3.175" gradientTransform="scale(3.77953)" gradientUnits="userSpaceOnUse"/> + </defs> + <path fill="#8b8b8b" d="M.794.265v2.91h.264V.529h1.059v.53h.264V.264z"/> + <path fill="url(#b)" d="M5 4v8h5V4H5z" transform="scale(.26458)"/> + <path fill="#fabd23" d="M2.381.794v.264h.265V.794H2.38z"/> + <path fill="#4e4e4e" d="M2.381.53v.264h.265V.529zm.265.264v.268l-.53-.004v.265h.794v1.852H.794v.265h2.381V1.058H2.91V.794z"/> + <path fill="#fabd23" d="M1.323 2.646v.264h1.323v-.264H1.323z"/> + <path fill="#538fc8" d="M1.058.794v.264h1.059V.794H1.058z"/> + <path fill="#fff" d="M1.058.53v2.645h.265V.794h.794V.529zm1.059.793v.264h.529v1.588h.264V1.323z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-search.svg b/download-website-script/localhost/-/icon-search.svg @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="f" cx="12.249" cy="1.424" r=".728" fx="12.249" fy="1.424" gradientTransform="matrix(-.82724 -.02009 .02428 -.9997 12.12 3.422)" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#b" id="e" cx="2.888" cy="2.578" r=".562" fx="2.888" fy="2.578" gradientTransform="rotate(-45 1.469 1.846) scale(.66551 1.33104)" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#c" id="d" cx="1.79" cy="1.499" r="1.224" fx="1.79" fy="1.499" gradientUnits="userSpaceOnUse"/> + <linearGradient id="c"> + <stop offset="0" stop-color="#172bb3"/> + <stop offset=".804" stop-color="#b1d6e5"/> + <stop offset="1" stop-color="#5c8dc7"/> + </linearGradient> + <linearGradient id="b"> + <stop offset="0" stop-color="#e4c19d"/> + <stop offset="1" stop-color="#975f18" stop-opacity=".977"/> + </linearGradient> + <linearGradient id="a"> + <stop offset="0" stop-color="#fff"/> + <stop offset="1" stop-color="#bdd7f3"/> + </linearGradient> + </defs> + <path fill="url(#d)" fill-rule="evenodd" d="M.794 1.058c-.265.265-.265.794 0 1.059l.529.529 1.19.132.53-.529-.133-1.19-.529-.53c-.264-.264-.793-.264-1.058 0z"/> + <path fill="url(#e)" fill-rule="evenodd" d="m2.91 2.117.265.264.265.265c.264.264.264.264 0 .529-.265.265-.265.265-.53 0l-.264-.265-.132-.396.132-.133v-.264z"/> + <path fill="url(#f)" fill-rule="evenodd" d="M2.117 2.117c-.265.264-.265.264-.53 0l-.264-.265c-.265-.265-.265-.265 0-.53l.265-.264c.264-.264.264-.264.529 0l.264.265c.265.264.265.264 0 .53z"/> + <path fill="#4e4e4e" d="M2.381.53v.264h.265V.529zm.265.264v.264h.264V.794zm.264.264v1.323h.265V1.058zm.265 1.323v.265h.265V2.38zm.265.265v.529h.264v-.53zm0 .529h-.265v.265h.265zM1.587.794v.264h.53V.794zm0 .264h-.264v.265h.264zm-.264.265h-.265v.53h.265zm0 .53v.264h.264v-.265zm.264.793v.264h1.059v-.529H2.38v.265z"/> + <path fill="#a3a3a3" d="M1.323.265v.264H2.38V.265zm0 .264h-.265v.265h.265zm-.265.265H.794v.264h.264zm-.264.264H.529v1.059h.265zm0 1.059v.264h.264v-.264zm.264.264v.265h.265V2.38zm.265.265v.264h.264v-.264zm.794-1.588v.265h.264v-.265zm.264.265v.53h.265v-.53zm0 .53h-.264v.264h.264zm-.264.264h-.53v.264h.53zm.529.793v.265h.264V2.91zm.264.265v.265h.265v-.265z"/> + <path fill="#fff" fill-rule="evenodd" d="M1.69 1.267c-.153.038-.197.382-.197.382.148-.268.301-.19.317-.309.007-.052-.048-.091-.12-.073z"/> + <path fill="#a3a3a3" d="M1.587 3.175v.265h.794v-.265z"/> + <path fill="#e6e6e6" d="M1.058 3.175v.265h.53v-.265zm1.323 0v.265h.265v-.265z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-tools.svg b/download-website-script/localhost/-/icon-tools.svg @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="c" cx="2.016" cy="2.35" r=".893" fx="2.016" fy="2.35" gradientTransform="matrix(.2963 .29626 -1.4815 1.4817 5 -1.961)" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#b" id="d" cx="2.646" cy="2.646" r=".628" fx="2.646" fy="2.646" gradientTransform="rotate(-45 2.11 1.355) scale(.59545 1)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="b"> + <stop offset="0" stop-color="#d8eef8" stop-opacity=".996"/> + <stop offset="1" stop-color="#75badf"/> + </linearGradient> + <linearGradient id="a"> + <stop offset="0" stop-color="#fef2d3"/> + <stop offset="1" stop-color="#fabd23"/> + </linearGradient> + </defs> + <path fill="#e6e6e6" fill-rule="evenodd" d="m1.72 1.984-.53-.529.265-.264.53.529z"/> + <path fill="url(#c)" fill-rule="evenodd" d="m1.852 1.852-.794.794c-.264.264-.264.264 0 .529.265.265.265.265.53 0l1.058-1.058-.53-.53z"/> + <path fill="#e6e6e6" fill-rule="evenodd" d="m2.117 1.587.529.53.529-.265.397-.397-.397-.397v.265H2.91v-.265h.265L2.778.661l-.397.397zM.661 1.19l.662-.66.53-.265-.266.529-.264.529-.265.264H.794z"/> + <path fill="url(#d)" fill-rule="evenodd" d="m2.117 2.646.529.529c.264.265.264.265.529 0s.265-.265 0-.53l-.53-.528z"/> + <path fill="#8b8b8b" d="M1.323.265v.264h.794V.265zm0 .264h-.265v.265h.265zm-.265.265H.794v.264h.264zm-.264.264H.529v.53h.265zM2.646.53v.265h.529V.529zm0 .265H2.38v.264h.265zm-.265.264h-.264v.53h.264zm-.264.53h-.265v.264h.265zm-.265.264h-.265v.265h.265zm-.265.265h-.264v.264h.264zm-.264.264h-.265v.265h.265zm-.265.265H.794v.529h.264zm2.117-1.588v.265h.53v-.265zm0 .265H2.91v.264h.265zm-.53.794v.264h.265v-.264zm.265.264v.265h.265V2.38z"/> + <path fill="#fff" d="M1.323.53v.264h.264V.529zm0 .264h-.265v.529h.265zm1.323 0v.264h.264V.794zm0 .264H2.38v.53h.265z"/> + <path fill="#4e4e4e" d="M1.587.53v.264h.265V.529zm0 .264h-.264v.529h.264zm0 .529v.264h.265v-.264zm0 .264h-.264v.265h.264zm-.264 0v-.264h-.265v.264zm-.265 0H.794v.265h.264zM2.91.794v.264h.265V.794zm0 .264h-.264v.265h.264zm.53.265v.264h.264v-.264zm0 .264h-.265v.265h.265zm-.265.265h-.53v-.265h-.528v.265h.264v.53h.265v-.265h.529zm-.794.53h-.264v.264h-.265v.264h.53zm0 .528v.265h.265V2.91zm.265.265v.265h.529v-.265zm.529 0h.265v-.53h-.265zM1.852 2.91h-.265v.265h.265zm-.265.265h-.529v.265h.53z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-triangle-down.svg b/download-website-script/localhost/-/icon-triangle-down.svg @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="b" cx="6.879" cy="6.813" r="1.455" fx="6.879" fy="6.813" gradientTransform="matrix(1 0 0 .72727 -5.292 -3.103)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="a"> + <stop offset="0" stop-color="#8ed3e0"/> + <stop offset="1" stop-color="#3771c8"/> + </linearGradient> + </defs> + <path fill="url(#b)" fill-rule="evenodd" d="M3.572 1.455 2.382 2.91h-.53L.794 1.852.66 1.455z"/> + <path fill="#4e4e4e" d="M3.44 1.587v.265h.264v-.265zm0 .265h-.265v.265h.265zm-.265.265H2.91v.264h.265zm-.265.264h-.264v.265h.264zm-.264.265H2.38v.264h.265zm-.265.264h-.264v.265h.264z"/> + <path fill="#a3a3a3" d="M.53 1.323v.53h.264v-.266h2.91v-.264zm.264.53v.264h.264v-.265zm.264.264v.264h.265v-.264zm.265.264v.265h.264V2.38zm.264.265v.264h.265v-.264zm.265.264v.265h.265V2.91z"/> + <path fill="#5f5fd3" d="M3.175 1.587v.265h.265v-.265zm0 .265H2.91v.265h.265zm-.265.265h-.264v.264h.264zm-.264.264H2.38v.265h.265zm-.265.265h-.529v.264h.53z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-triangle-ltr.svg b/download-website-script/localhost/-/icon-triangle-ltr.svg @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="b" cx="1.587" cy="1.852" r=".728" fx="1.587" fy="1.852" gradientTransform="matrix(1.81818 0 0 2.54545 -1.299 -3.127)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="a"> + <stop offset="0" stop-color="#8ed3e0"/> + <stop offset="1" stop-color="#3771c8"/> + </linearGradient> + </defs> + <path fill="url(#b)" fill-rule="evenodd" d="m1.19.661 1.456 1.456L1.19 3.572z"/> + <path fill="#4e4e4e" d="M1.323.53v.264h.264V.529zm.264.264v.264h.265V.794zm.265.264v.265h.265v-.265zm.265.265v.264h.264v-.264zm.264.264v.265h.265v-.265zm.265.265v.53h.264v-.53zm0 .53H2.38v.264h.265zm-.265.264h-.264v.264h.264zm-.264.264h-.265v.265h.265zm-.265.265h-.265v.265h.265zm-.265.265h-.529v.264h.53z"/> + <path fill="#a3a3a3" d="M1.058.53v2.91h.265V.53z"/> + <path fill="#5f5fd3" d="M1.323.794v.264h.264V.794zm.264.264v.265h.265v-.265zm.265.265v.264h.265v-.264zm.265.264v.265h.264v-.265zm.264.265v.53h.265v-.53zm0 .53h-.264v.264h.264zm-.264.264h-.265v.264h.265zm-.265.264h-.265v.265h.265zm-.265.265h-.264v.265h.264z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-triangle-up.svg b/download-website-script/localhost/-/icon-triangle-up.svg @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <radialGradient xlink:href="#a" id="b" cx="1.733" cy="1.852" r=".728" fx="1.733" fy="1.852" gradientTransform="matrix(0 -1.81818 2.54545 0 -3.127 5.268)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="a"> + <stop offset="0" stop-color="#8ed3e0"/> + <stop offset="1" stop-color="#3771c8"/> + </linearGradient> + </defs> + <path fill="url(#b)" fill-rule="evenodd" d="M.661 2.778v-.264L1.984 1.19l1.588 1.587z"/> + <path fill="#8b8b8b" d="M2.381 1.323v.265h.265v-.265zm.265.265v.264h.264v-.264zm.264.264v.265h.265v-.265zm.265.265v.264h.265v-.264zm.265.264v.265h.264V2.38z"/> + <path fill="#a3a3a3" d="M1.852 1.058v.265h.53v-.265zm0 .265h-.264v.265h.264zm-.264.265h-.265v.264h.265zm-.265.264h-.265v.265h.265zm-.265.265H.794v.264h.264zm-.264.264H.529v.265h.265z"/> + <path fill="#4e4e4e" d="M.53 2.91h3.174v-.264H.53z"/> + <path fill="#5f5fd3" d="M2.117 1.323v.265h.264v-.265zm.264.265v.264h.265v-.264zm.265.264v.265h.264v-.265zm.264.265v.264h.265v-.264zm.265.264v.265h.265V2.38z"/> +</svg> diff --git a/download-website-script/localhost/-/icon-user.svg b/download-website-script/localhost/-/icon-user.svg @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 4.233 4.233"> + <defs> + <linearGradient id="c"> + <stop offset="0" stop-color="#fbeacf"/> + <stop offset="1" stop-color="#f0bf7b"/> + </linearGradient> + <linearGradient id="b"> + <stop offset="0" stop-color="#f9e0ba"/> + <stop offset="1" stop-color="#de8a3d"/> + </linearGradient> + <linearGradient id="a"> + <stop offset="0" stop-color="#dfedc7"/> + <stop offset="1" stop-color="#89b92f"/> + </linearGradient> + <linearGradient xlink:href="#a" id="d" x1=".794" x2="3.175" y1="2.778" y2="2.778" gradientUnits="userSpaceOnUse"/> + <linearGradient xlink:href="#b" id="f" x1="1.587" x2="2.381" y1="1.058" y2="1.587" gradientUnits="userSpaceOnUse"/> + <radialGradient xlink:href="#c" id="e" cx="1.984" cy="2.381" r=".397" fx="1.984" fy="1.984" gradientTransform="matrix(.33333 0 0 1.30283 1.323 -.469)" gradientUnits="userSpaceOnUse"/> + </defs> + <path fill="url(#d)" fill-rule="evenodd" d="m.661 3.307.133-.661.264-.265c.53-.264 1.323-.264 1.852 0l.265.265.132.661z"/> + <path fill="url(#e)" fill-rule="evenodd" d="M1.587 2.117v.264l.265.265h.265l.264-.265v-.264c-.264-.265-.529-.265-.793 0z"/> + <path fill="url(#f)" fill-rule="evenodd" d="M1.323 1.058v.53l.264.264c.265.265.53.265.794 0l.265-.265v-.529L2.116.53h-.264z"/> + <path fill="#4e4e4e" d="M2.646 1.058v.53h.264v-.53zM2.38 2.117v.264h.53v-.264zm.53.264v.265h.264V2.38zm.264.265v.529H.529v.265h2.91v-.795z"/> + <path fill="#a3a3a3" d="M1.058 1.058v.53h.265v-.53zm.265.53v.264h.264v-.265zm-.265.529v.264h.53v-.264zm0 .264H.794v.265h.264zm-.264.265H.529v.529h.265z"/> + <path fill="#768854" d="M1.587 2.381v.265h.265V2.38zm.265.265v.264h.265v-.264zm.265 0h.264V2.38h-.264z"/> + <path fill="#a6774d" d="M2.381 1.587v.265h.265v-.265zm0 .265h-.793v.265h.793z"/> + <path fill="#9a7b54" fill-rule="evenodd" d="M1.984.397v.132c0 .265-.396.794-.793.794l.132-.53.264-.264z"/> + <path fill="#93642b" fill-rule="evenodd" d="M1.984.397v.132c0 .265.397.794.794.794l-.132-.53L2.38.53z"/> + <path fill="#86735c" d="M1.587.265v.264h.794V.265zm0 .264h-.264v.265h.264zm-.264.265h-.265v.529h.265z"/> + <path fill="#5a4934" d="M2.381.53v.264h.265V.529zm.265.264v.529h.264v-.53z"/> + <path fill="#83b625" d="M1.323 2.91h.265v.265h-.265z"/> + <path fill="#6d971f" d="M2.646 2.91h.265v.265h-.265z"/> + <path fill="#cde3a8" d="M1.058 2.91h.265v.265h-.265z"/> + <path fill="#a9cd69" d="M2.381 2.91h.265v.265h-.265z"/> +</svg> diff --git a/download-website-script/localhost/-/magnify-clip-ltr.svg b/download-website-script/localhost/-/magnify-clip-ltr.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="15" height="11" viewBox="0 0 11 15"> + <g id="magnify-clip" fill="#fff" stroke="#000"> + <path id="bigbox" d="M1.509 1.865h10.99v7.919H1.509z"/> + <path id="smallbox" d="M-1.499 6.868h5.943v4.904h-5.943z"/> + </g> +</svg> diff --git a/download-website-script/localhost/-/magnify-clip-rtl.svg b/download-website-script/localhost/-/magnify-clip-rtl.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="15" height="11" viewBox="0 0 11 15"> + <g id="magnify-clip" fill="#fff" stroke="#000"> + <path id="bigbox" d="M9.491 1.865h-10.99v7.919h10.99z"/> + <path id="smallbox" d="M12.499 6.868H6.556v4.904h5.943z"/> + </g> +</svg> diff --git a/download-website-script/localhost/-/mail.svg b/download-website-script/localhost/-/mail.svg @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#15a5ea" d="M1.84 4 6.5 8.349 11.16 4l-.621-.621L9.296 4 6.5 6.485 3.704 4 2.46 3.38z"/> + <path fill="#36b" d="M1 3v8h11V3zm1 1h9v6H2z"/> +</svg> diff --git a/download-website-script/localhost/-/video.svg b/download-website-script/localhost/-/video.svg @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"> + <path fill="#15a5ea" d="M2.492 2.01v.621h8.098V2.01zm0 8h8.098v-.621H2.492zm0-6.1v.621h1.87V3.91zm6.23 0v.621h1.868V3.91zm-6.23 3.7v.621h1.87V7.61zm6.23 0v.621h1.868V7.61zm-6.23-1.2h8.098v-.621H2.492z"/> + <path fill="#15a5ea" d="M4.362 5.51v1.243h4.36V5.51z"/> + <path fill="#36b" d="M4.002 2.01v8h5v-8zm1 1h3v6h-3zm-3-2h1v10h-1zm8 0h1v10h-1z"/> +</svg> diff --git a/download-website-script/localhost/-/wiki.png b/download-website-script/localhost/-/wiki.png Binary files differ. diff --git a/download-website-script/localhost/-/zim.css b/download-website-script/localhost/-/zim.css @@ -0,0 +1,84 @@ +/* + * + * stub.css + * + */ +body#zim { + font-size: 100%; + width: inherit; + padding: inherit; + position: inherit; + margin: inherit; +/* background-image: none;*/ +} +#zim #content { +/* margin: 0px; + padding: 2px;*/ +} +#zim .mw-body-content { + line-height: 1.6; + font-size: 0.875em; +} +#zim .mw-body-content p { + line-height: inherit; + margin: 0.5em 0; +} +/* +#zim #toc, +#zim .article-status, +#zim .thumbcaption .magnify, +#zim .editsection, +#zim .mw-editsection +{ + display: none; +} +*/ +#zim table.wikitable, table.nicetable { + margin-right: 0; + margin-left: 0; +} + +/* for en.wikivoyage.org */ +/* supress Kartographer chartlet */ +/* +.thumbinner a[data-lon] { + display: none; +} +*/ +#zim #geoCoord { + top: -20px; +} +#geoCoord img { + display: none; +} +#zim #mw-customtoggle-mapToggle { + display: none; +} + +/* Wikia */ +body#zim .WikiaMainContent { + width: inherit; +} +body#zim .WikiaPageBackground { + width: inherit; + height: inherit; + position: inherit; + left: inherit; + top: inherit; + +} + +html body pre { + padding: 1em; + border: 1px dashed #2f6fab; + color: black; + background-color: #f9f9f9; + line-height: 1.1em; +} + +/* + * + * from /mediawiki/load.php?lang=fr&modules=skins.monobook.styles&only=styles&skin=monobook + * + */ +@media (prefers-reduced-motion:reduce){*,::before,::after{animation-delay:-0.01ms !important;animation-duration:0.01ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:0ms !important}}body{margin:0}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}abbr[title]{border-bottom:1px dotted;cursor:help}@supports (text-decoration:underline dotted){abbr[title]{border-bottom:0;text-decoration:underline dotted}}pre,code,tt,kbd,samp{font-family:monospace,monospace}sub,sup{line-height:1}img{border:0}button,input,optgroup,select,textarea{margin:0}button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{border-style:none;padding:0}legend{color:inherit;padding:0}div.tright,div.floatright,table.floatright{clear:right;float:right}div.tleft,div.floatleft,table.floatleft{float:left;clear:left}div.floatright,table.floatright{margin:0 0 0.5em 0.5em}div.floatleft,table.floatleft{margin:0 0.5em 0.5em 0}div.thumb{width:auto;background-color:transparent;margin-bottom:0.5em}div.tleft{margin:0.5em 1.4em 1.3em 0}div.tright{margin:0.5em 0 1.3em 1.4em}.thumbcaption{text-align:left;line-height:1.4em;padding:3px}div.thumbinner{padding:3px;text-align:center;overflow:hidden}.mw-message-box{color:#000;box-sizing:border-box;margin-bottom:16px;border:1px solid;padding:12px 24px;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden;background-color:#eaecf0;border-color:#a2a9b1}.mw-message-box > :only-child{margin:0}.mw-message-box h2{color:inherit;display:block;border:0;font-size:1em;font-weight:bold}.mw-message-box .mw-logevent-loglines li{font-size:90%}.mw-message-box-error{background-color:#fee7e6;border-color:#d33}.mw-message-box-warning{background-color:#fef6e7;border-color:#fc3}.mw-message-box-success{background-color:#d5fdf4;border-color:#14866d}.toctogglecheckbox:checked ~ ul{display:none}@media screen{#column-content{width:100%;margin:0;padding:0}.mw-body{padding:1em;position:relative;z-index:2;background:#ffffff;color:#000000;border:1px solid #aaaaaa;line-height:1.5em}#column-one h2{position:absolute;top:-9999px;left:0}body{font-family:sans-serif;font-size:x-small;background:#f9f9f9 url(./../-/headbg.jpg) 0 0 no-repeat;background:linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%221941%22 height=%22220%22 viewBox=%220 0 273.897 31.044%22%3E %3Cdefs%3E %3ClinearGradient id=%22C%22%3E %3Cstop offset=%220%22 stop-color=%22%23f9f9f9%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f3f3f3%22/%3E %3C/linearGradient%3E %3ClinearGradient xlink:href=%22%23b%22 id=%22ai%22 x1=%22862.392%22 x2=%22864.333%22 y1=%221.153%22 y2=%22114.025%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient id=%22B%22%3E %3Cstop offset=%220%22 stop-color=%22%23e9e9e9%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22A%22%3E %3Cstop offset=%220%22 stop-color=%22%23f2f2f2%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22z%22%3E %3Cstop offset=%220%22 stop-color=%22%23f4f4f4%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22y%22%3E %3Cstop offset=%220%22 stop-color=%22%23efefef%22/%3E %3Cstop offset=%221%22 stop-color=%22%23efefef%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22x%22%3E %3Cstop offset=%220%22 stop-color=%22%23d6d6d6%22/%3E %3Cstop offset=%221%22 stop-color=%22%23d6d6d6%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22w%22%3E %3Cstop offset=%220%22 stop-color=%22%23f1f1f1%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f1f1f1%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22v%22%3E %3Cstop offset=%220%22 stop-color=%22%23f3f3f3%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f3f3f3%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22u%22%3E %3Cstop offset=%220%22 stop-color=%22%23ededed%22/%3E %3Cstop offset=%221%22 stop-color=%22%23ededed%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22t%22%3E %3Cstop offset=%220%22 stop-color=%22%23f0f0f0%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f0f0f0%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22s%22%3E %3Cstop offset=%220%22 stop-color=%22%23f6f6f6%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f5f5f5%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22r%22%3E %3Cstop offset=%220%22 stop-color=%22%23e9e9e9%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f3f3f3%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22q%22%3E %3Cstop offset=%220%22 stop-color=%22%23e0e0e0%22/%3E %3Cstop offset=%221%22 stop-color=%22%23e0e0e0%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22p%22%3E %3Cstop offset=%220%22 stop-color=%22%23ededed%22/%3E %3Cstop offset=%221%22 stop-color=%22%23e1e1e1%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22o%22%3E %3Cstop offset=%220%22 stop-color=%22%23ebebeb%22/%3E %3Cstop offset=%221%22 stop-color=%22%23e5e5e5%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22n%22%3E %3Cstop offset=%220%22 stop-color=%22%23f4f4f4%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f4f4f4%22 stop-opacity=%22.997%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22m%22%3E %3Cstop offset=%220%22 stop-color=%22%23d0d0d0%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22l%22%3E %3Cstop offset=%220%22 stop-color=%22%23dadada%22/%3E %3Cstop offset=%221%22 stop-color=%22%23e9e9e9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22k%22%3E %3Cstop offset=%220%22 stop-color=%22%23ececec%22/%3E %3Cstop offset=%22.514%22 stop-color=%22%23f6f6f6%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22j%22%3E %3Cstop offset=%220%22 stop-color=%22%23e8e8e8%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f3f3f3%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22i%22%3E %3Cstop offset=%220%22 stop-color=%22%23f3f3f3%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22h%22%3E %3Cstop offset=%220%22 stop-color=%22%23efefef%22/%3E %3Cstop offset=%22.396%22 stop-color=%22%23ededed%22/%3E %3Cstop offset=%22.63%22 stop-color=%22%23e8e8e8%22/%3E %3Cstop offset=%221%22 stop-color=%22%23dedede%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22g%22%3E %3Cstop offset=%220%22 stop-color=%22%23cbcbcb%22/%3E %3Cstop offset=%22.517%22 stop-color=%22%23dcdcdc%22/%3E %3Cstop offset=%22.865%22 stop-color=%22%23eee%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f0f0f0%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22f%22%3E %3Cstop offset=%220%22 stop-color=%22%23e6e6e6%22 stop-opacity=%22.997%22/%3E %3Cstop offset=%221%22 stop-color=%22%23dbdbdb%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22e%22%3E %3Cstop offset=%220%22 stop-color=%22%23e1e1e1%22/%3E %3Cstop offset=%22.198%22 stop-color=%22%23e4e4e4%22/%3E %3Cstop offset=%22.338%22 stop-color=%22%23f5f5f5%22/%3E %3Cstop offset=%22.551%22 stop-color=%22%23f4f4f4%22/%3E %3Cstop offset=%22.597%22 stop-color=%22%23f2f2f2%22/%3E %3Cstop offset=%22.773%22 stop-color=%22%23f6f6f6%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22d%22%3E %3Cstop offset=%220%22 stop-color=%22%23cfcfcf%22/%3E %3Cstop offset=%221%22 stop-color=%22%23d0d0d0%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22c%22%3E %3Cstop offset=%220%22 stop-color=%22%23f2f2f2%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22b%22%3E %3Cstop offset=%220%22 stop-color=%22%23e4e4e4%22/%3E %3Cstop offset=%22.504%22 stop-color=%22%23e5e5e5%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22a%22%3E %3Cstop offset=%220%22 stop-color=%22%23e6e6e6%22/%3E %3Cstop offset=%22.442%22 stop-color=%22%23e7e7e7%22/%3E %3Cstop offset=%22.772%22 stop-color=%22%23f1f1f1%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f9f9f9%22/%3E %3C/linearGradient%3E %3ClinearGradient xlink:href=%22%23a%22 id=%22ah%22 x1=%22241.181%22 x2=%22241.052%22 y1=%22.83%22 y2=%2229.29%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient id=%22D%22%3E %3Cstop offset=%220%22 stop-color=%22%23e5e5e5%22/%3E %3Cstop offset=%221%22 stop-color=%22%23e5e5e5%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3ClinearGradient xlink:href=%22%23c%22 id=%22ag%22 x1=%22231.389%22 x2=%22224.379%22 y1=%2213.086%22 y2=%2220.51%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23d%22 id=%22aj%22 x1=%2252.702%22 x2=%2252.47%22 y1=%2216.05%22 y2=%2218.382%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23e%22 id=%22O%22 x1=%2215.127%22 x2=%22103.297%22 y1=%2215.607%22 y2=%2231.128%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23f%22 id=%22P%22 x1=%2235.71%22 x2=%2236.996%22 y1=%2218.012%22 y2=%2218.177%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23g%22 id=%22L%22 x1=%2245.303%22 x2=%2245.624%22 y1=%2218.049%22 y2=%2226.029%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23h%22 id=%22M%22 x1=%2271.064%22 x2=%2272.457%22 y1=%2224.169%22 y2=%2221.973%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23i%22 id=%22ae%22 x1=%2266.829%22 x2=%22120.759%22 y1=%2222.094%22 y2=%2230.56%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23j%22 id=%22J%22 x1=%2265.523%22 x2=%2263.831%22 y1=%2223.532%22 y2=%2226.451%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23k%22 id=%22N%22 x1=%2295.817%22 x2=%2295.561%22 y1=%2225.922%22 y2=%2228.296%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23l%22 id=%22K%22 x1=%2233.045%22 x2=%2232.51%22 y1=%2215.633%22 y2=%2218.439%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23m%22 id=%22F%22 x1=%2233.342%22 x2=%2233.513%22 y1=%2217.978%22 y2=%2230.778%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23m%22 id=%22G%22 x1=%2234.162%22 x2=%2233.08%22 y1=%2218.797%22 y2=%2227.777%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23C%22 id=%22E%22 x1=%22262.803%22 x2=%22263.049%22 y1=%2229.234%22 y2=%22.97%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23n%22 id=%22ad%22 x1=%2244.713%22 x2=%2232.808%22 y1=%2213.097%22 y2=%223.44%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23o%22 id=%22ac%22 x1=%227.266%22 x2=%227.419%22 y1=%2212.121%22 y2=%229.176%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23p%22 id=%22ab%22 x1=%229.677%22 x2=%2210.488%22 y1=%224.024%22 y2=%22.745%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23q%22 id=%22af%22 x1=%2264.1%22 x2=%2262.561%22 y1=%223.955%22 y2=%22.306%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23r%22 id=%22W%22 x1=%2279.435%22 x2=%2280.522%22 y1=%222.238%22 y2=%224.488%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23s%22 id=%22V%22 x1=%22216.854%22 x2=%22157.45%22 y1=%2210.693%22 y2=%221.152%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23t%22 id=%22Y%22 x1=%22151.682%22 x2=%22248.454%22 y1=%221.765%22 y2=%2213.926%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23u%22 id=%22X%22 x1=%22155.198%22 x2=%22222.595%22 y1=%225.793%22 y2=%2218.882%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23v%22 id=%22Z%22 x1=%22167.257%22 x2=%22232.504%22 y1=%224.057%22 y2=%2216.124%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23w%22 id=%22aa%22 x1=%22111.926%22 x2=%22220.942%22 y1=%2210.932%22 y2=%2222.839%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23x%22 id=%22S%22 x1=%2281.617%22 x2=%2281.449%22 y1=%22-7.073%22 y2=%2211.636%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23y%22 id=%22T%22 x1=%2293.149%22 x2=%2292.968%22 y1=%2213.259%22 y2=%2215.017%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23z%22 id=%22R%22 x1=%22176.25%22 x2=%22176.742%22 y1=%2218.815%22 y2=%2231.118%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23A%22 id=%22U%22 x1=%2293.015%22 x2=%2293.101%22 y1=%2219.511%22 y2=%2228.389%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23B%22 id=%22Q%22 x1=%2275.997%22 x2=%2275.848%22 y1=%2220.433%22 y2=%2225.46%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23D%22 id=%22I%22 x1=%22243.28%22 x2=%22244.389%22 y1=%2210.403%22 y2=%2210.59%22 gradientUnits=%22userSpaceOnUse%22/%3E %3Cfilter id=%22H%22 width=%221.115%22 height=%221.269%22 x=%22-.057%22 y=%22-.135%22 color-interpolation-filters=%22sRGB%22%3E %3CfeGaussianBlur stdDeviation=%221.33%22/%3E %3C/filter%3E %3C/defs%3E %3Cpath fill=%22url%28%23E%29%22 d=%22M0 0h273.897v31.044H0z%22/%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23F%29%22 d=%22m-1.964 14.277 48.596 4.794 25.07 4.958 41.814 8.232-117.445 1.122z%22/%3E %3Cpath fill=%22url%28%23G%29%22 d=%22M-2.245 12.195c.748.234 40.937 5.578 40.937 5.578l9.016 5.04-3.228 13.096s-52.618-.982-52.478-1.216c.14-.234 5.753-22.498 5.753-22.498z%22 filter=%22url%28%23H%29%22/%3E %3Cpath fill=%22url%28%23I%29%22 d=%22m245.302-1.003 1.753-.1-5.027 32.974-1.952-.264z%22/%3E %3C/g%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23J%29%22 d=%22M63.49 26.81c1.564-.958 2.958-2.241 4.243-3.604l-2.976.083z%22/%3E %3Cpath fill=%22url%28%23K%29%22 d=%22M-.538 10.465S19.2 13.41 24.976 14.16c5.777.748 10.384 1.31 12.231 2.315 1.848 1.006-.187 1.193-.187 1.193s-3.59-.027-4.485.314c-.894.34-2.718.808-2.718.808l-31.781-4.513z%22/%3E %3Cpath fill=%22url%28%23L%29%22 d=%22M39.055 17.48c-1.497-.046-2.807.632-2.807.632s-2.806 3.905-2.455 4.49c.35.585 5.449 3.227 14.265 4.14 8.817.911 14.476.374 15.318-.14.842-.515 1.006-2.854 1.006-2.854l-.398-1.427-4.724-3.46-16.604-2.41z%22/%3E %3Cpath fill=%22url%28%23M%29%22 d=%22M64.757 23.289c-.773-.968-.1-1.703-.1-1.703 1.541.158 7.268.03 11.526 1.339l-4.828 2.15s-4.829-2.547-6.598-1.786z%22/%3E %3Cpath fill=%22url%28%23N%29%22 d=%22m73.819 23.173.397-.661s24.308 3.307 29.104 4.233c4.795.926 22.853 4.994 22.853 4.994l-17.495-.43c-11.327-1.566-22.968-2.748-34.86-8.136z%22/%3E %3Cpath fill=%22url%28%23O%29%22 d=%22M-.561 14.627c.28.047 29.326 4.537 30.589 4.49 1.263-.046 1.75-.742 3.324-.866 1.002-.079 1.396.627 1.15.942-1.213 1.547-2.15 3.321-.078 4.555 2.727 1.623 10.236 2.678 14.92 3.274 8.28 1.052 12.392.52 13.798-.047 1.613-.65.906-1.614 1.69-2.62.385-.495 2.446-.827 3.43-.154.72.493 1.008 1.184 2.41 1.511.653.153 39.804 6.174 39.804 6.174l12.088 1.09c-.05.133-42.57-4.899-48.44-10.24-.861-.783-1.336 2.183-3.31 1.573-1.976-.61-2.157-3.1-5.925-1.83-1.501.505-.994 2.936-1.887 3.56-1.446 1.013-7.904 1.123-12.722.562-4.817-.561-14.41-2.143-15.715-3.788-.496-.624-.07-1.9.467-2.666 1.147-1.636.101-2.781-1.31-2.666-1.951.158-2.808 1.22-3.975 1.075-.925-.114-32.413-4.677-32.413-4.677z%22/%3E %3Cpath fill=%22url%28%23P%29%22 d=%22M34.264 21.586c1.322-2.828 4.29-3.308 4.192-4.118-.1-.81-2.026-.585-2.655-.453-.716.132-2.478.429-3.406.85 0 0 1.736-.414 2.183.397.446.81-.314 3.324-.314 3.324z%22/%3E %3C/g%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23Q%29%22 d=%22M58.374 13.483c-1.059.827 1.786 5.027 1.786 5.027l3.406 3.307s5.887.132 8.533.496 45.045 6.383 54.438 9.36c9.393 2.976 15.697 4.75 15.697 4.75l3.695-11.459s-82.362-14.03-87.555-11.481z%22/%3E %3Cpath fill=%22url%28%23R%29%22 d=%22m222.382 20.13 2.448 16.67-40.626.41C146.56 31.804 88.95 12.102 64.624 19.8c-.916.629-1.258.465-1.24-.199-1.927.24-.602-.857-.33-1.29-1.123.427-.936-.215-1.373-.347-.562-.162-1-.415-.96-1.025-2.386.44-.823-.684-.859-1.257-.945.183-.505-.511-.612-.86 0 0 4.407-8.941 26.062-14.133 21.656-5.191 86.397-.734 137.07 19.441z%22/%3E %3Cpath fill=%22url%28%23S%29%22 d=%22M60.476 15.048S69.73 5.621 93.638 2.513C120.55-.985 189.4 18.557 189.399 18.558c0 0-69.553-17.635-94.311-14.782C71.47 6.498 60.476 15.048 60.476 15.048z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M85.219 6.63c17.384-4.36 55.57 1.9 65.154 3.928-9.226-1.908-46.83-9.643-65.154-3.929z%22/%3E %3Cpath fill=%22%23f1f1f1%22 d=%22M130.836 8.753c14.135 1.85 68.486 15.66 79.838 18.786-13.334-3.852-66.283-17.468-79.838-18.786z%22/%3E %3Cpath fill=%22%23f5f5f5%22 d=%22M82.249 8.936c10.572-1.518 25.094-1.26 28.84-1.19-3.184-.357-17.088-.764-28.84 1.19z%22/%3E %3Cpath fill=%22%23f7f7f7%22 d=%22M187.193 24.76c-10.46-3.523-42.856-12.108-50.205-13.427 8.32 1.188 41.811 9.916 50.205 13.428z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M96.771 9.547c23.108.926 55.544 7.174 82.352 16.007-20.863-7.287-56.35-16.843-82.352-16.007z%22/%3E %3Cpath fill=%22%23f0f0f0%22 d=%22M74.017 12.92c6.664-1.521 23.058-2.31 29.7-1.984-8.503-.463-20.974-.491-29.7 1.984zm-10.252 4.102c4.888-2.032 8.536-2.42 10.318-2.646-2.839.732-6.491 1.667-10.318 2.646z%22/%3E %3Cpath fill=%22url%28%23T%29%22 d=%22M78.515 13.913c28.778-.404 67.141 7.028 94.324 15.478-14.251-5.307-58.585-20.163-94.324-15.478z%22/%3E %3Cpath fill=%22%23f9f9f9%22 d=%22M80.542 16.124c8.207.12 22.163 1.425 33.068 2.666-4.842-.841-26.127-3.07-33.068-2.666z%22/%3E %3Cpath fill=%22%23f0f0f0%22 d=%22M65.481 18.37c2.714-.7 5.829-1.085 8.746-1.404-2.486.13-6.631.667-8.746 1.403z%22/%3E %3Cpath fill=%22%23ededed%22 d=%22M75.256 16.03c4.552-.583 18.219.044 25.117.749-4.907-.542-18.234-1.691-25.117-.748z%22/%3E %3Cpath fill=%22url%28%23U%29%22 d=%22M154.629 31.7s-38.107-10.88-71.187-12.582c-14.577-.75-18.904 1-18.904 1-.652.55.383.628 1.356.738-.308.42-.369.743.482.705.132-.297 15.931-.058 32.781 3.17 19.07 3.652 33.045 8.395 33.045 8.395z%22/%3E %3Cpath fill=%22%23f2f2f2%22 d=%22M73.538 19.932c9.594.067 19.773 1.398 28.806 2.745-4.654-.908-17.209-3.246-28.806-2.745z%22/%3E %3C/g%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23V%29%22 d=%22m122.029-.948 98.97 22.077-3.04-23.527z%22/%3E %3Cpath fill=%22url%28%23W%29%22 d=%22m59.635 13.13-.375 1.31s9.308-8.746 24.322-12.207c15.014-3.461 31.103-3.555 52.431.935 21.329 4.49 85.443 18.682 85.443 18.682l-2.58-5.358L132.16-1.102l-45.64-.794S62.913 5.999 59.635 13.13z%22/%3E %3Cpath fill=%22%23f8f8f8%22 d=%22M131.685-.696c30.86 4.82 58.639 11.489 87.838 17.306l-.234-.795c-28.318-5.697-54.562-11.6-85.126-17.072z%22/%3E %3Cpath fill=%22url%28%23X%29%22 d=%22M132.973.081c30.86 4.82 58.546 12.12 87.745 17.937l-.14-1.426c-28.318-5.696-54.562-11.6-85.126-17.072z%22/%3E %3Cpath fill=%22url%28%23Y%29%22 d=%22M141.533-.854c27.55 3.965 51.703 9.73 77.595 14.359l.14-2.585c-24.47-4.307-47.714-8.466-73.526-12.102z%22/%3E %3Cpath fill=%22%23f6f6f6%22 d=%22M160.475-.948c16.969 3.27 38.852 7.36 58.278 11.039l-.233-.754C199.04 6.007 169.885.52 160.475-.948z%22/%3E %3Cpath fill=%22url%28%23Z%29%22 d=%22M170.438-.527c16.041 2.699 31.824 5.656 47.707 8.513l-.046.655-50.842-8.887z%22/%3E %3Cpath fill=%22%23f1f1f1%22 d=%22M177.5-2.585c.936.28 38.4 6.361 38.4 6.361l-.046-.655c-10.032-1.671-19.02-3.22-28.017-4.77l-10.617-.889z%22/%3E %3Cpath fill=%22%23f4f4f4%22 d=%22M187.229-1.135c9.147.894 17.799 1.143 27.502 2.76l.094-.608c-5.15-.664-10.008-1.294-14.92-1.824z%22/%3E %3Cpath fill=%22url%28%23aa%29%22 d=%22M113.47-.433c35.796 3.976 72.668 14.5 108.464 21.515l-.14 1.216c-36.046-7.417-68.99-16.951-109.868-22.497z%22/%3E %3C/g%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23ab%29%22 d=%22m-.992-.606.132 4.365s19.38 2.613 23.614 4.002c4.234 1.39 17.86 7.871 17.86 7.871l5.622-.231 7.014-2.925 4.7 3.145c.611-.051 1.486-.834 1.421-1.295l-4.437-2.996-1.38-.935-1.146-.562-4.513 2.315-7.273 1.123-24.58-14.616z%22/%3E %3Cpath fill=%22url%28%23ac%29%22 d=%22m-.398 10.558 31.431 4.42s6.244 1.053 7.227 1.848c.982.795 1.146.795 1.146.795l1.052-1.871-4.935-2.923S4.326 3.847.795 5.086c-3.531 1.24-1.193 5.472-1.193 5.472z%22/%3E %3Cpath fill=%22url%28%23ad%29%22 d=%22M3.142-.11C1.566-1.65 27.84 2.228 40.018 14.177c.716.703 2.1 1.023 1.82.488.597.261 1.636.914 1.521-.3.939.024 3.184 1.37 2.63-.815.471-.01.355-.175.71-.497.635.123 1.195.097 1.654-.133.964.276 1.669.108 1.885-.892.517-.198 1.212-.056 1.323-1.026 0 0 .992.066 1.157-.397.166-.463.364-11.178.364-11.178z%22/%3E %3Cpath fill=%22%23f5f5f5%22 d=%22M51.726-.342c1.482 2.673.554 11.435 1.588 11.51.543.42.954-.041 1.1-.133.11.531-.1 1.503.975 1.235-.103.514 1.06 1.82 1.79 1.08.042.178.855 1.513 1.7.99-.033.263-.372.739.19.796C69.452 4.604 80.76 1.876 91.313-1.334z%22/%3E %3Cpath fill=%22%23f4f4f4%22 d=%22M38.692 17.773s-1.344-1.836-8.08-2.748c-6.735-.912-33.98-4.677-33.98-4.677l.538-.304s31.735 4.42 33.91 4.7c2.175.281 7.425 1.687 7.881 2.206.456.519-.269.823-.269.823z%22/%3E %3Cpath fill=%22url%28%23ae%29%22 d=%22M64.89 22.479c1.526-.672 2.813-.263 5.619-.146 1.964.082 21.544 2.86 32.226 4.853 9.899 1.846 29.557 6.24 29.557 6.24l1.984-.596s-22.986-4.927-31.75-6.383c-8.764-1.455-27.01-4.42-32.504-4.717-3.096-.167-5.265-.045-5.265-.045s-.893.76.132.794%22/%3E %3Cpath fill=%22url%28%23af%29%22 d=%22M64.46-.276c-.806.994-4.303 6.386-8.732 11.774 4.366-4.703 8.757-9.262 13.427-12.187z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M62.987-.325c-3.268 3.06-5.699 7.167-8.88 10.88C56.25 6.824 56.574-1.324 56.82-.787c-.066.066 6.168.463 6.168.463z%22/%3E %3Cpath fill=%22%23ebebeb%22 d=%22M54.885 11.101c.78-.31 2.04-2.435 2.1-2.678-.184.343-1.65 2.36-2.1 2.678z%22/%3E %3Cpath fill=%22%23dedede%22 d=%22M59.763 12.193C62.913 9.112 73.055 2.7 73.075 2.8c-2.652 1.207-10.037 5.438-13.312 9.393z%22/%3E %3Cpath fill=%22%23f3f3f3%22 d=%22M86.949-.176c.346-.548-8.597 1.645-15.032 5.275 3.6-2.163 8.698-4.343 13.097-5.375z%22/%3E %3Cpath fill=%22%23f1f1f1%22 d=%22M82.058-.456C78.713.56 74.483 2.715 71.421 4.818c2.544-2.04 5.996-4.044 8.818-5.538z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M71.14 1.064c-4.405 2.76-8.8 6.233-12.965 10.12 3.93-4.195 9.302-8.433 12.965-10.12z%22/%3E %3Cpath fill=%22%23f3f3f3%22 d=%22M-.96 2.337c4.275.278 35.22 5.029 40.68 12.336.618.379.67 2.567-.743 1.631C29.515 10.03-.006 6.457-2.679 7.067z%22/%3E %3Cpath fill=%22%23ededed%22 d=%22M-.728 4.884C18.171 6.24 29.203 9.922 34.098 11.96 25.325 9.39 10.562 6.627-.76 6.273z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M48.716-.739c1.535 2.745 2.403 5.358 3.076 8.236-1.34-4.526-2.424-6.151-3.902-8.269z%22/%3E %3Cpath fill=%22%23ededed%22 d=%22M46.534-.904a48.533 48.533 0 0 1 4.134 9.426c-2.302-3.299-4.775-6.496-8.037-9.228z%22/%3E %3Cpath fill=%22%23f0f0f0%22 d=%22M40.547-.937c3.497 3.233 6.208 6.69 9.129 10.087-3.038-3.258-5.888-6.574-9.592-9.624z%22/%3E %3Cpath fill=%22%23efefef%22 d=%22M39.72 1.113c3.116 3.175 6.121 6.35 8.864 9.525.323.334-4.398-6.07-8.863-9.525z%22/%3E %3Cpath fill=%22%23eee%22 d=%22M23.647-.87c6.227 3.572 12.515 7.207 18.819 12.434C34.866 5.98 28.443 2.747 21.86-.805z%22/%3E %3C/g%3E %3Cpath fill=%22url%28%23ag%29%22 fill-rule=%22evenodd%22 d=%22m214.31-.082.07 1.426 1.216.912-.28 1.146.374.444-.14 1.287s.233 1.146.327 1.169c.093.023.889.374.889.374l1.286 2.386-.374.818.35.304v.819l-.14.678.655.608-.608 1.24 1.029 1.566.444 1.45-.701.819.655.654-.211 1.31 1.216 1.24-.28 1.239.35.842 1.006.608-.257 2.011-.281.748.257 2.9 1.193 3.134 17.119.398 4.162-33.934-27.712 1.03z%22/%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23ah%29%22 d=%22m235.779 31.419 6.477-32.67 3.602.257-5.45 34.915z%22/%3E %3Cpath fill=%22%23f3f3f3%22 d=%22m219.604 23.04 7.392-23.795.976-.017z%22/%3E %3Cpath fill=%22url%28%23ai%29%22 d=%22M857.938-2.854s-.5 7.188.187 9.563c.688 2.375 2.562 1.375 4.625 1.812 2.062.438 2.437 2.625 2.188 3.438-.25.812 2.687 7.062 2.687 7.062s4.75-18.125 4.938-20.375zm8.375 27.125L857 64.21s2.25 1.375 2.563 3c.312 1.625.5 6.937.5 6.937l1.375.25s1.625-2.25 1.812-.562c.187 1.687 0 10.875 0 10.875l10.188-41s-.5-2.375-.25-4.125-.063-6.438-.438-6.563-1.687 2.813-2.188 2c-.5-.812-1.5-7.875-2.125-8.437-.624-.563-2.125-2.313-2.125-2.313zm-2.836 64.05a1.407 1.407 0 0 0-.276.02l-4.861 20.948s1.501 5.128 3.357 5.658c1.856.53 7.955 5.037 7.955 5.037l5.569-21.566s-1.68 1.856-2.387-.266c-.707-2.121 1.77-4.772-.617-5.39-2.387-.619-4.775-.177-5.658-1.326-.829-1.078-1.734-3.087-3.082-3.116z%22 transform=%22scale%28.26458%29%22/%3E %3Cpath fill=%22%23f2f2f2%22 d=%22m240.076-.474-6.118 28.343 5.49-28.442z%22/%3E %3Cpath fill=%22%23f6f6f6%22 d=%22m232.536 25.488 5.787-26.26.298.133-6.284 29.203z%22/%3E %3Cpath fill=%22%23f0f0f0%22 d=%22m230.684 22.743 5.754-23.912.232.199z%22/%3E %3Cpath fill=%22%23f7f7f7%22 d=%22m226.781 5.446-6.826 24.403.244 2.32z%22/%3E %3Cpath fill=%22%23f4f4f4%22 d=%22m228.534 4.917-6.25 22.754s5.29-14.519 6.25-22.754z%22/%3E %3Cpath fill=%22%23f7f7f7%22 d=%22M232.734-1.565c-.132.165-2.249 8.334-2.249 8.334l1.654-7.871z%22/%3E %3Cpath fill=%22%23f5f5f5%22 d=%22M216.368-.176c0 .094-.725 3.742-.725 3.742l1.52-4.023z%22/%3E %3Cpath fill=%22%23f7f7f7%22 d=%22m214.38 1.344 1.193-2.268.28.374-1.216 2.642zm4.49-1.59-2.619 5.753.444 2.409 3.04-8.373-.958.281.14.023-.093-.21z%22/%3E %3Cpath fill=%22%23f4f4f4%22 d=%22m217 8.898.444 1.847 4.91-12.044-1.215-.163z%22/%3E %3Cpath fill=%22%23f3f3f3%22 d=%22m218.566 13.435.351 3.344 7.086-18.311-.842.117z%22/%3E %3C/g%3E %3Cg fill-rule=%22evenodd%22%3E %3Cpath fill=%22url%28%23aj%29%22 d=%22M43.326 17.146c.04 0 4.762.57 6.184.893 1.422.322 6.664 1.463 7.4 1.562.736.1 3.812.53 3.812.53l-6.086-6.301-3.067-.604z%22/%3E %3Cpath fill=%22%23d6d6d6%22 d=%22M41.308 17.832c6.312-.615 11.274 1.936 19.058 2.795l-.24-.745c-7.995-.942-11.39-2.702-17.032-2.927z%22/%3E %3Cpath fill=%22%23e7e7e7%22 d=%22M51.461 14.095c.034.099.116 1.835-.248 2.083-.363.248-2.05.678-2.893.81-1.042.215-2.762.463-2.762.463-1.265.112-2.55-.761-3.77-.016l-.943.628s2.1-.215 2.877-.231c.778-.017 1.489.099 1.919.082.43-.016 1.752-.48 2.48-.529.728-.05 3.175-.562 3.555-.975.38-.414.166-2.762.166-2.762z%22/%3E %3Cpath fill=%22%23f4f4f4%22 d=%22M39.324 16.658c-.443.372-1.193 1.737-.281 1.918.297.05 1.438-.165 1.504-.265.067-.099.298-.248.298-.248.838-.006 1.35-.185 1.935-.777 0 0 .694.199.926.083 1.287-.032 2.55-.142 3.687-.893.116-.132.298-.53.298-.53 1.246-.359 1.984-.616 2.58-1.256.832-.103 1.476-.096 1.868-.794.378.708.793.862 1.472.76 1.181.346 3.137 2.118 3.556 2.779.325.573.855 1.244 1.703 1.687.64.987 2.579 3.19 3.191 3.274.381.506.51 1.514 1.555 1.025.548-.198 1.091-.4 1.273-.942 2.036-.746.956-1.522-.694-1.952.08-.039-1.407-.847-1.571-.942.013-.533-1.356-1.643-1.72-1.62-.246-.82-1.166-1.12-1.224-1.49-.246-.642-.556-1.328-.959-1.487-1.192-.642-1.581-1.155-2.447-1.44-.31-.3-.928-.577-.844-.876-.386-.352-.683-.81-1.157-1.008-.408-.206-.816-.19-1.224-.182-.674-.17-1.159.272-1.637.645-.541.483-1.13.626-1.736.694-.792-.032-1.406.37-2.051.695-.917.293-2.028.079-2.762.76-.381.764-1.158.885-2.034.844-.532-.294-1.277-.025-2.133-.248-.771.065-1.091.893-1.372 1.786z%22/%3E %3C/g%3E %3C/svg%3E") 0 0 no-repeat,#f9f9f9 url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%225%22 height=%22220%22 viewBox=%220 0 1.323 58.208%22%3E %3Cdefs%3E %3ClinearGradient xlink:href=%22%23a%22 id=%22b%22 x1=%22262.803%22 x2=%22263.049%22 y1=%2229.234%22 y2=%22.97%22 gradientTransform=%22translate%28-492.003 238.792%29 scale%281.875%29%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient id=%22a%22%3E %3Cstop offset=%220%22 stop-color=%22%23f9f9f9%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f3f3f3%22/%3E %3C/linearGradient%3E %3C/defs%3E %3Cpath fill=%22url%28%23b%29%22 d=%22M0 238.792h1.323V297H0z%22 transform=%22translate%280 -238.792%29%22/%3E %3C/svg%3E") 0 0 repeat-x;color:#000000;direction:ltr;unicode-bidi:embed}#globalWrapper{font-size:127%;width:100%;margin:0;padding:0;position:relative;z-index:0}ul{list-style-type:square;list-style-image:url(./../-/bullet.svg)}pre,.mw-code{line-height:1.1em}.firstHeading{margin-top:0.4em;margin-bottom:0.1em;padding-top:0;overflow:visible}.mw-indicators{line-height:1.5em;font-size:95%}.mw-indicator{display:-moz-inline-block;display:inline-block}.mw-jump-link:not(:focus){display:block;position:absolute !important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden}#siteNotice{font-size:95%;padding:0 0.9em}#siteNotice p{margin:0;padding:0}#localNotice{margin:0}table.rimage{float:right;position:relative;margin-left:1em;margin-bottom:1em;text-align:center}.portlet{overflow:hidden}.portlet h3{background:transparent;display:inline;height:1em;font-size:91%;white-space:nowrap}.portlet ul{line-height:1.5em;font-size:95%}.portlet li{padding:0;margin:0}.pBody{font-size:95%;color:#000000;border-collapse:collapse}.pBody:after{content:'';clear:both;display:block}body:not(.monobook-capitalize-all-nouns) .portlet h3,body:not(.monobook-capitalize-all-nouns) #p-personal ul,body:not(.monobook-capitalize-all-nouns) #p-cactions ul li a{text-transform:lowercase}li#pt-userpage,.no-text-transform{text-transform:none}#p-logo{position:absolute;z-index:3;overflow:visible}#p-logo a,#p-logo a:hover{display:block;background-repeat:no-repeat;text-decoration:none}li#pt-anonuserpage{color:#707070}.mw-footer{background-color:#ffffff;border-top:1px solid #fabd23;border-bottom:1px solid #fabd23;margin:0.6em 0 1em 0;overflow:hidden;padding:0.4em 0 0.3em 0;text-align:center;font-size:90%}.mw-footer li{display:inline;margin:0 1.3em}#userloginprompt,#languagelinks{font-size:85%}#login-sectiontip{font-size:85%;line-height:1.2;padding-top:2em}#pagehistory li.selected{position:relative}div.patrollink{clear:both}.sharedUploadNotice{font-style:italic}.toggle{margin-left:2em;text-indent:-2em}input#wpSave,input#wpDiff{margin-right:0.33em}#wpSave{font-weight:bold}div.noarticletext{border:1px solid #aaaaaa;background:#ffffff;padding:0.2em 1em;color:#000000}#powersearch p{margin-top:0}div.multipageimagenavbox{border:solid 1px #aaaaaa;padding:4px;margin:1em;background:#f9f9f9}div.multipageimagenavbox div.thumb{border:0;margin-left:2em;margin-right:2em}div.multipageimagenavbox hr{margin:6px}table.multipageimage td{text-align:center}.templatesUsed{margin-top:1.5em}.mw-summary-preview{margin:0.1em 0}div.mw-lag-warn-normal,div.mw-lag-warn-high{padding:3px;text-align:center;margin:3px auto}div.mw-lag-warn-normal{border:1px solid #fc6;background-color:#ffc}div.mw-lag-warn-high{font-weight:bold;border:2px solid #f03;background-color:#fcc}.MediaTransformError{background-color:#aaaaaa;padding:0.1em}.MediaTransformError td{text-align:center;vertical-align:middle;font-size:90%}.tipsy{font-size:127%}.mw-content-ltr{direction:ltr}.mw-content-rtl{direction:rtl}.visualClear{clear:both}body:not(.skin--responsive){}body:not(.skin--responsive) #column-content{float:right;margin:0 0 0.6em -12.2em}body:not(.skin--responsive) .mw-body{margin:2.8em 0 0 12.2em;border-right:0}body:not(.skin--responsive) #mw-data-after-content{margin-left:12.2em}body:not(.skin--responsive) #column-one{padding-top:160px}body:not(.skin--responsive) .special li{line-height:1.4em;margin:0;padding:0}body:not(.skin--responsive) .portlet{border:0;margin:0 0 0.5em;padding:0;float:none;width:11.6em}body:not(.skin--responsive) .portlet h3{padding:0 1em 0 0.5em;font-weight:normal}body:not(.skin--responsive) .pBody{background-color:#fff;border:1px solid #aaa;padding:0 0.8em 0.3em 0.5em}body:not(.skin--responsive) #p-logo{top:0;left:0;height:155px;width:12em}body:not(.skin--responsive) #p-logo a,body:not(.skin--responsive) #p-logo a:hover{height:155px;width:12.2em;background-position:35% 50% !important}body:not(.skin--responsive) #p-search{position:relative;z-index:3}body:not(.skin--responsive) input.searchButton{margin-top:1px;font-size:95%}body:not(.skin--responsive) #searchButton{padding-left:0.5em;padding-right:0.5em;font-weight:bold}body:not(.skin--responsive) #searchInput{width:10.9em;margin:0;font-size:95%}body:not(.skin--responsive) #p-search .pBody{padding:0.5em 0.4em 0.4em 0.4em;text-align:center}body:not(.skin--responsive) #p-search #searchform div div{margin-top:0.4em;font-size:95%}body:not(.skin--responsive) #p-personal{position:absolute;left:0;top:0;z-index:3;width:100%;white-space:nowrap;padding:0;margin:0;border:0;background:none;overflow:visible;line-height:1.2em}body:not(.skin--responsive) #p-personal h3{position:absolute;top:-9999px}body:not(.skin--responsive) #p-personal .portlet,body:not(.skin--responsive) #p-personal .pBody{z-index:0;padding:0;margin:0;border:0;overflow:visible;background:none}body:not(.skin--responsive) #p-personal ul{border:0;line-height:1.4em;color:#2f6fab;padding:0;padding-right:2em;padding-left:14em;margin:0;float:right;list-style-type:none;list-style-image:none;z-index:0;background:none;cursor:default;box-sizing:border-box;max-width:100%}body:not(.skin--responsive) #p-personal li{z-index:0;border:0;padding:0;color:#2f6fab;display:inline;margin-left:1em;line-height:1.2em;background:none}body:not(.skin--responsive) #p-personal li a{color:#005896;text-decoration:none;padding-bottom:0.2em}body:not(.skin--responsive) #p-personal li a.new{color:#cc2200}body:not(.skin--responsive) #p-personal li a:hover{background-color:#fff;text-decoration:none}body:not(.skin--responsive) #p-personal li.active a:hover{background-color:transparent}body:not(.skin--responsive) li#pt-userpage,body:not(.skin--responsive) li#pt-anonuserpage{background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%2216%22 height=%2216%22 viewBox=%220 0 4.233 4.233%22%3E %3Cdefs%3E %3ClinearGradient id=%22c%22%3E %3Cstop offset=%220%22 stop-color=%22%23fbeacf%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f0bf7b%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22b%22%3E %3Cstop offset=%220%22 stop-color=%22%23f9e0ba%22/%3E %3Cstop offset=%221%22 stop-color=%22%23de8a3d%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22a%22%3E %3Cstop offset=%220%22 stop-color=%22%23dfedc7%22/%3E %3Cstop offset=%221%22 stop-color=%22%2389b92f%22/%3E %3C/linearGradient%3E %3ClinearGradient xlink:href=%22%23a%22 id=%22d%22 x1=%22.794%22 x2=%223.175%22 y1=%222.778%22 y2=%222.778%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23b%22 id=%22f%22 x1=%221.587%22 x2=%222.381%22 y1=%221.058%22 y2=%221.587%22 gradientUnits=%22userSpaceOnUse%22/%3E %3CradialGradient xlink:href=%22%23c%22 id=%22e%22 cx=%221.984%22 cy=%222.381%22 r=%22.397%22 fx=%221.984%22 fy=%221.984%22 gradientTransform=%22matrix%28.33333 0 0 1.30283 1.323 -.469%29%22 gradientUnits=%22userSpaceOnUse%22/%3E %3C/defs%3E %3Cpath fill=%22url%28%23d%29%22 fill-rule=%22evenodd%22 d=%22m.661 3.307.133-.661.264-.265c.53-.264 1.323-.264 1.852 0l.265.265.132.661z%22/%3E %3Cpath fill=%22url%28%23e%29%22 fill-rule=%22evenodd%22 d=%22M1.587 2.117v.264l.265.265h.265l.264-.265v-.264c-.264-.265-.529-.265-.793 0z%22/%3E %3Cpath fill=%22url%28%23f%29%22 fill-rule=%22evenodd%22 d=%22M1.323 1.058v.53l.264.264c.265.265.53.265.794 0l.265-.265v-.529L2.116.53h-.264z%22/%3E %3Cpath fill=%22%234e4e4e%22 d=%22M2.646 1.058v.53h.264v-.53zM2.38 2.117v.264h.53v-.264zm.53.264v.265h.264V2.38zm.264.265v.529H.529v.265h2.91v-.795z%22/%3E %3Cpath fill=%22%23a3a3a3%22 d=%22M1.058 1.058v.53h.265v-.53zm.265.53v.264h.264v-.265zm-.265.529v.264h.53v-.264zm0 .264H.794v.265h.264zm-.264.265H.529v.529h.265z%22/%3E %3Cpath fill=%22%23768854%22 d=%22M1.587 2.381v.265h.265V2.38zm.265.265v.264h.265v-.264zm.265 0h.264V2.38h-.264z%22/%3E %3Cpath fill=%22%23a6774d%22 d=%22M2.381 1.587v.265h.265v-.265zm0 .265h-.793v.265h.793z%22/%3E %3Cpath fill=%22%239a7b54%22 fill-rule=%22evenodd%22 d=%22M1.984.397v.132c0 .265-.396.794-.793.794l.132-.53.264-.264z%22/%3E %3Cpath fill=%22%2393642b%22 fill-rule=%22evenodd%22 d=%22M1.984.397v.132c0 .265.397.794.794.794l-.132-.53L2.38.53z%22/%3E %3Cpath fill=%22%2386735c%22 d=%22M1.587.265v.264h.794V.265zm0 .264h-.264v.265h.264zm-.264.265h-.265v.529h.265z%22/%3E %3Cpath fill=%22%235a4934%22 d=%22M2.381.53v.264h.265V.529zm.265.264v.529h.264v-.53z%22/%3E %3Cpath fill=%22%2383b625%22 d=%22M1.323 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%236d971f%22 d=%22M2.646 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%23cde3a8%22 d=%22M1.058 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%23a9cd69%22 d=%22M2.381 2.91h.265v.265h-.265z%22/%3E %3C/svg%3E");background-position:top left;background-repeat:no-repeat;padding-left:20px}body:not(.skin--responsive) #p-lang{position:relative;z-index:3}body:not(.skin--responsive) #p-cactions{position:absolute;top:1.3em;left:11.5em;margin:0;white-space:nowrap;width:76%;line-height:1.1em;overflow:visible;background:none;border-collapse:collapse;padding-left:1em;font-size:95%}body:not(.skin--responsive) #p-cactions h3{position:absolute;top:-9999px}body:not(.skin--responsive) #p-cactions ul{list-style-type:none;list-style-image:none}body:not(.skin--responsive) #p-cactions li{display:inline;border:1px solid #aaa;border-bottom:0;margin:0 0.5em 0 0;padding:0 0 1em 0;overflow:visible;background:#fff}body:not(.skin--responsive) #p-cactions li.selected{border-color:#fabd23;font-weight:bold}body:not(.skin--responsive) #p-cactions li.selected a{z-index:3;background-color:#fff}body:not(.skin--responsive) #p-cactions li a{background-color:#fbfbfb;color:#002bb8;border:0;padding:0 0.8em 0.3em;position:relative;z-index:0;margin:0;text-decoration:none}body:not(.skin--responsive) #p-cactions li a:hover{z-index:3;text-decoration:none;background-color:#fff}body:not(.skin--responsive) #p-cactions li.istalk{margin-right:0}body:not(.skin--responsive) #p-cactions li.istalk a{padding-right:0.5em}body:not(.skin--responsive) #p-cactions .new a{color:#c20}body:not(.skin--responsive) #p-cactions #ca-addsection a{padding-left:0.4em;padding-right:0.4em}body:not(.skin--responsive) #p-cactions .pBody{font-size:1em;background-color:transparent;color:inherit;border-collapse:inherit;border:0;padding:0}body:not(.skin--responsive) li#ca-talk{margin-right:1.6em}body:not(.skin--responsive) li#ca-watch,body:not(.skin--responsive) li#ca-unwatch,body:not(.skin--responsive) li#ca-varlang-0,body:not(.skin--responsive) li#ca-print{margin-left:1.6em}body:not(.skin--responsive) #p-cactions li#ca-view,body:not(.skin--responsive) #p-personal #pt-notifications,body:not(.skin--responsive) #echo-hack-badges,body:not(.skin--responsive) #p-cactions-mobile,body:not(.skin--responsive) #sidebar-mobilejs,body:not(.skin--responsive) .mobile-close-button,body:not(.skin--responsive) .menu-toggle,body:not(.skin--responsive) .menus-cover{display:none}body:not(.skin--responsive) #f-poweredbyico,body:not(.skin--responsive) #f-copyrightico{margin:0 8px;position:relative;top:-2px}body:not(.skin--responsive) #f-poweredbyico{float:right;height:1%}body:not(.skin--responsive) #f-copyrightico{float:left;height:1%}}@media print{.mw-jump-link{display:none}#f-list > li{display:none}#f-list > #copyright,#f-list > #credits,#f-list > #lastmod{display:block}#footer{background:#fff;color:#000;margin-top:1em;border-top:1pt solid #aaa;padding-top:5px;direction:ltr}.noprint,.mw-cite-backlink,.mw-redirectedfrom,.patrollink,#column-one,#footer-places,#mw-navigation,#f-poweredbyico,#f-copyrightico,li#about,li#disclaimer,li#mobileview,li#privacy{display:none}}@media screen and (min-width:551px){body.skin--responsive{}body.skin--responsive #column-content{float:right;margin:0 0 0.6em -12.2em}body.skin--responsive .mw-body{margin:2.8em 0 0 12.2em;border-right:0}body.skin--responsive #mw-data-after-content{margin-left:12.2em}body.skin--responsive #column-one{padding-top:160px}body.skin--responsive .special li{line-height:1.4em;margin:0;padding:0}body.skin--responsive .portlet{border:0;margin:0 0 0.5em;padding:0;float:none;width:11.6em}body.skin--responsive .portlet h3{padding:0 1em 0 0.5em;font-weight:normal}body.skin--responsive .pBody{background-color:#fff;border:1px solid #aaa;padding:0 0.8em 0.3em 0.5em}body.skin--responsive #p-logo{top:0;left:0;height:155px;width:12em}body.skin--responsive #p-logo a,body.skin--responsive #p-logo a:hover{height:155px;width:12.2em;background-position:35% 50% !important}body.skin--responsive #p-search{position:relative;z-index:3}body.skin--responsive input.searchButton{margin-top:1px;font-size:95%}body.skin--responsive #searchButton{padding-left:0.5em;padding-right:0.5em;font-weight:bold}body.skin--responsive #searchInput{width:10.9em;margin:0;font-size:95%}body.skin--responsive #p-search .pBody{padding:0.5em 0.4em 0.4em 0.4em;text-align:center}body.skin--responsive #p-search #searchform div div{margin-top:0.4em;font-size:95%}body.skin--responsive #p-personal{position:absolute;left:0;top:0;z-index:3;width:100%;white-space:nowrap;padding:0;margin:0;border:0;background:none;overflow:visible;line-height:1.2em}body.skin--responsive #p-personal h3{position:absolute;top:-9999px}body.skin--responsive #p-personal .portlet,body.skin--responsive #p-personal .pBody{z-index:0;padding:0;margin:0;border:0;overflow:visible;background:none}body.skin--responsive #p-personal ul{border:0;line-height:1.4em;color:#2f6fab;padding:0;padding-right:2em;padding-left:14em;margin:0;float:right;list-style-type:none;list-style-image:none;z-index:0;background:none;cursor:default;box-sizing:border-box;max-width:100%}body.skin--responsive #p-personal li{z-index:0;border:0;padding:0;color:#2f6fab;display:inline;margin-left:1em;line-height:1.2em;background:none}body.skin--responsive #p-personal li a{color:#005896;text-decoration:none;padding-bottom:0.2em}body.skin--responsive #p-personal li a.new{color:#cc2200}body.skin--responsive #p-personal li a:hover{background-color:#fff;text-decoration:none}body.skin--responsive #p-personal li.active a:hover{background-color:transparent}body.skin--responsive li#pt-userpage,body.skin--responsive li#pt-anonuserpage{background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%2216%22 height=%2216%22 viewBox=%220 0 4.233 4.233%22%3E %3Cdefs%3E %3ClinearGradient id=%22c%22%3E %3Cstop offset=%220%22 stop-color=%22%23fbeacf%22/%3E %3Cstop offset=%221%22 stop-color=%22%23f0bf7b%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22b%22%3E %3Cstop offset=%220%22 stop-color=%22%23f9e0ba%22/%3E %3Cstop offset=%221%22 stop-color=%22%23de8a3d%22/%3E %3C/linearGradient%3E %3ClinearGradient id=%22a%22%3E %3Cstop offset=%220%22 stop-color=%22%23dfedc7%22/%3E %3Cstop offset=%221%22 stop-color=%22%2389b92f%22/%3E %3C/linearGradient%3E %3ClinearGradient xlink:href=%22%23a%22 id=%22d%22 x1=%22.794%22 x2=%223.175%22 y1=%222.778%22 y2=%222.778%22 gradientUnits=%22userSpaceOnUse%22/%3E %3ClinearGradient xlink:href=%22%23b%22 id=%22f%22 x1=%221.587%22 x2=%222.381%22 y1=%221.058%22 y2=%221.587%22 gradientUnits=%22userSpaceOnUse%22/%3E %3CradialGradient xlink:href=%22%23c%22 id=%22e%22 cx=%221.984%22 cy=%222.381%22 r=%22.397%22 fx=%221.984%22 fy=%221.984%22 gradientTransform=%22matrix%28.33333 0 0 1.30283 1.323 -.469%29%22 gradientUnits=%22userSpaceOnUse%22/%3E %3C/defs%3E %3Cpath fill=%22url%28%23d%29%22 fill-rule=%22evenodd%22 d=%22m.661 3.307.133-.661.264-.265c.53-.264 1.323-.264 1.852 0l.265.265.132.661z%22/%3E %3Cpath fill=%22url%28%23e%29%22 fill-rule=%22evenodd%22 d=%22M1.587 2.117v.264l.265.265h.265l.264-.265v-.264c-.264-.265-.529-.265-.793 0z%22/%3E %3Cpath fill=%22url%28%23f%29%22 fill-rule=%22evenodd%22 d=%22M1.323 1.058v.53l.264.264c.265.265.53.265.794 0l.265-.265v-.529L2.116.53h-.264z%22/%3E %3Cpath fill=%22%234e4e4e%22 d=%22M2.646 1.058v.53h.264v-.53zM2.38 2.117v.264h.53v-.264zm.53.264v.265h.264V2.38zm.264.265v.529H.529v.265h2.91v-.795z%22/%3E %3Cpath fill=%22%23a3a3a3%22 d=%22M1.058 1.058v.53h.265v-.53zm.265.53v.264h.264v-.265zm-.265.529v.264h.53v-.264zm0 .264H.794v.265h.264zm-.264.265H.529v.529h.265z%22/%3E %3Cpath fill=%22%23768854%22 d=%22M1.587 2.381v.265h.265V2.38zm.265.265v.264h.265v-.264zm.265 0h.264V2.38h-.264z%22/%3E %3Cpath fill=%22%23a6774d%22 d=%22M2.381 1.587v.265h.265v-.265zm0 .265h-.793v.265h.793z%22/%3E %3Cpath fill=%22%239a7b54%22 fill-rule=%22evenodd%22 d=%22M1.984.397v.132c0 .265-.396.794-.793.794l.132-.53.264-.264z%22/%3E %3Cpath fill=%22%2393642b%22 fill-rule=%22evenodd%22 d=%22M1.984.397v.132c0 .265.397.794.794.794l-.132-.53L2.38.53z%22/%3E %3Cpath fill=%22%2386735c%22 d=%22M1.587.265v.264h.794V.265zm0 .264h-.264v.265h.264zm-.264.265h-.265v.529h.265z%22/%3E %3Cpath fill=%22%235a4934%22 d=%22M2.381.53v.264h.265V.529zm.265.264v.529h.264v-.53z%22/%3E %3Cpath fill=%22%2383b625%22 d=%22M1.323 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%236d971f%22 d=%22M2.646 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%23cde3a8%22 d=%22M1.058 2.91h.265v.265h-.265z%22/%3E %3Cpath fill=%22%23a9cd69%22 d=%22M2.381 2.91h.265v.265h-.265z%22/%3E %3C/svg%3E");background-position:top left;background-repeat:no-repeat;padding-left:20px}body.skin--responsive #p-lang{position:relative;z-index:3}body.skin--responsive #p-cactions{position:absolute;top:1.3em;left:11.5em;margin:0;white-space:nowrap;width:76%;line-height:1.1em;overflow:visible;background:none;border-collapse:collapse;padding-left:1em;font-size:95%}body.skin--responsive #p-cactions h3{position:absolute;top:-9999px}body.skin--responsive #p-cactions ul{list-style-type:none;list-style-image:none}body.skin--responsive #p-cactions li{display:inline;border:1px solid #aaa;border-bottom:0;margin:0 0.5em 0 0;padding:0 0 1em 0;overflow:visible;background:#fff}body.skin--responsive #p-cactions li.selected{border-color:#fabd23;font-weight:bold}body.skin--responsive #p-cactions li.selected a{z-index:3;background-color:#fff}body.skin--responsive #p-cactions li a{background-color:#fbfbfb;color:#002bb8;border:0;padding:0 0.8em 0.3em;position:relative;z-index:0;margin:0;text-decoration:none}body.skin--responsive #p-cactions li a:hover{z-index:3;text-decoration:none;background-color:#fff}body.skin--responsive #p-cactions li.istalk{margin-right:0}body.skin--responsive #p-cactions li.istalk a{padding-right:0.5em}body.skin--responsive #p-cactions .new a{color:#c20}body.skin--responsive #p-cactions #ca-addsection a{padding-left:0.4em;padding-right:0.4em}body.skin--responsive #p-cactions .pBody{font-size:1em;background-color:transparent;color:inherit;border-collapse:inherit;border:0;padding:0}body.skin--responsive li#ca-talk{margin-right:1.6em}body.skin--responsive li#ca-watch,body.skin--responsive li#ca-unwatch,body.skin--responsive li#ca-varlang-0,body.skin--responsive li#ca-print{margin-left:1.6em}body.skin--responsive #p-cactions li#ca-view,body.skin--responsive #p-personal #pt-notifications,body.skin--responsive #echo-hack-badges,body.skin--responsive #p-cactions-mobile,body.skin--responsive #sidebar-mobilejs,body.skin--responsive .mobile-close-button,body.skin--responsive .menu-toggle,body.skin--responsive .menus-cover{display:none}body.skin--responsive #f-poweredbyico,body.skin--responsive #f-copyrightico{margin:0 8px;position:relative;top:-2px}body.skin--responsive #f-poweredbyico{float:right;height:1%}body.skin--responsive #f-copyrightico{float:left;height:1%}}@media screen and (max-width:550px){body.skin--responsive{}body.skin--responsive #column-content{padding-top:6em}body.skin--responsive .mw-body{border-right:0;border-left:0}body.skin--responsive .menu-toggle{display:block;width:35px;height:35px;background:#ffffff;border:solid 1px #fabd23;box-sizing:border-box;background-position:50% 50%;background-repeat:no-repeat;z-index:4}body.skin--responsive #sidebar-toggle{background-image:url(./../-/icon-triangle-down.svg);position:absolute;top:5px;left:1em}body.skin--responsive #p-personal-toggle{background-image:url(./../-/icon-user.svg);position:absolute;top:5px;right:1em}body.skin--responsive #globalWrapper-toggle{background-image:url(./../-/icon-triangle-up.svg);margin:1em auto}body.skin--responsive #p-search{position:absolute;z-index:3;top:5px;left:0;width:100%;padding:0 55px;box-sizing:border-box}body.skin--responsive #p-search h3{position:absolute;top:-9999px;left:0}body.skin--responsive #searchBody{border:solid 1px #fabd23;background-color:#ffffff;height:35px;box-sizing:border-box}body.skin--responsive #searchform{position:relative;width:100%;padding:3px 42px 3px 9px;box-sizing:border-box}body.skin--responsive #searchInput{width:100%;height:27px;border:solid 1px #aaaaaa;padding:0 0.25em;box-sizing:border-box}body.skin--responsive #searchButton{position:absolute;box-sizing:border-box;top:1px;right:6px;height:31px;width:35px;text-indent:-99999px;border:0;background:none;background-image:url(./../-/icon-search.svg);background-position:50% 50%;background-repeat:no-repeat;cursor:pointer}body.skin--responsive #mw-searchButton{display:none}body.skin--responsive .client-nojs #p-cactions,body.skin--responsive .client-nojs #p-personal,body.skin--responsive .client-nojs #sidebar .generated-sidebar,body.skin--responsive .client-nojs #p-tb,body.skin--responsive .client-nojs #p-lang{margin:1em;overflow:visible}body.skin--responsive .client-nojs #p-cactions .pBody,body.skin--responsive .client-nojs #p-personal .pBody,body.skin--responsive .client-nojs #sidebar .generated-sidebar .pBody,body.skin--responsive .client-nojs #p-tb .pBody,body.skin--responsive .client-nojs #p-lang .pBody{border:solid 1px #aaaaaa;background:#ffffff;padding:0.5em}body.skin--responsive .client-nojs #p-cactions ul,body.skin--responsive .client-nojs #p-personal ul,body.skin--responsive .client-nojs #sidebar .generated-sidebar ul,body.skin--responsive .client-nojs #p-tb ul,body.skin--responsive .client-nojs #p-lang ul{margin:0}body.skin--responsive .client-nojs #p-cactions li,body.skin--responsive .client-nojs #p-personal li,body.skin--responsive .client-nojs #sidebar .generated-sidebar li,body.skin--responsive .client-nojs #p-tb li,body.skin--responsive .client-nojs #p-lang li{display:inline-block;border-left:solid 1px #aaaaaa;padding:0 0.5em;white-space:nowrap}body.skin--responsive .client-nojs #p-cactions li:first-child,body.skin--responsive .client-nojs #p-personal li:first-child,body.skin--responsive .client-nojs #sidebar .generated-sidebar li:first-child,body.skin--responsive .client-nojs #p-tb li:first-child,body.skin--responsive .client-nojs #p-lang li:first-child{border-left:0;padding-left:0}body.skin--responsive .client-nojs #p-cactions li#pt-notifications-alert,body.skin--responsive .client-nojs #p-personal li#pt-notifications-alert,body.skin--responsive .client-nojs #sidebar .generated-sidebar li#pt-notifications-alert,body.skin--responsive .client-nojs #p-tb li#pt-notifications-alert,body.skin--responsive .client-nojs #p-lang li#pt-notifications-alert,body.skin--responsive .client-nojs #p-cactions li#pt-notifications-notice,body.skin--responsive .client-nojs #p-personal li#pt-notifications-notice,body.skin--responsive .client-nojs #sidebar .generated-sidebar li#pt-notifications-notice,body.skin--responsive .client-nojs #p-tb li#pt-notifications-notice,body.skin--responsive .client-nojs #p-lang li#pt-notifications-notice{border-left:0}body.skin--responsive .client-nojs #p-cactions li.selected,body.skin--responsive .client-nojs #p-personal li.selected,body.skin--responsive .client-nojs #sidebar .generated-sidebar li.selected,body.skin--responsive .client-nojs #p-tb li.selected,body.skin--responsive .client-nojs #p-lang li.selected{font-weight:bold}body.skin--responsive .client-nojs #p-cactions li.selected a,body.skin--responsive .client-nojs #p-personal li.selected a,body.skin--responsive .client-nojs #sidebar .generated-sidebar li.selected a,body.skin--responsive .client-nojs #p-tb li.selected a,body.skin--responsive .client-nojs #p-lang li.selected a{color:#000000}body.skin--responsive .client-nojs #p-cactions h3,body.skin--responsive .client-nojs #p-personal h3,body.skin--responsive .client-nojs #sidebar .generated-sidebar h3,body.skin--responsive .client-nojs #p-tb h3,body.skin--responsive .client-nojs #p-lang h3{font-weight:normal}body.skin--responsive #p-cactions-mobile{position:absolute;top:3.75em;left:0;padding:0 1em;width:100%;box-sizing:border-box}body.skin--responsive #p-cactions-mobile h3{display:none}body.skin--responsive #p-cactions-mobile ul{margin:0;list-style:none}body.skin--responsive #p-cactions-mobile li{display:inline-block;border:1px solid #aaaaaa;border-bottom:0;margin-right:0.5em;height:2.5em}body.skin--responsive #p-cactions-mobile li a{text-indent:-99999px;width:1em;display:block;position:relative;padding:0.5em 1em 0.75em;background-color:#fbfbfb;background-image:url(./../-/icon-page.svg);background-position:50% 50%;background-repeat:no-repeat;text-transform:lowercase}body.skin--responsive #p-cactions-mobile li#ca-talk-mobile a{background-image:url(./../-/icon-chat.svg)}body.skin--responsive #p-cactions-mobile li#ca-more{border:0}body.skin--responsive #p-cactions-mobile li#ca-more a{background-color:transparent;background-image:url(./../-/icon-triangle-ltr.svg);background-position:100% 40%;text-indent:0;padding-left:0.5em;padding-right:1.35em;width:auto}body.skin--responsive #p-cactions-mobile li#ca-languages a{background-image:url(./../-/icon-globe.svg)}body.skin--responsive #p-cactions-mobile li#ca-tools a{background-image:url(./../-/icon-tools.svg)}body.skin--responsive #p-cactions-mobile li.selected{border-color:#fabd23;font-weight:bold}body.skin--responsive #p-cactions-mobile li.selected a,body.skin--responsive #p-cactions-mobile li:hover a{z-index:3;background-color:#ffffff;text-decoration:none}body.skin--responsive #p-cactions-mobile li#ca-languages,body.skin--responsive #p-cactions-mobile li#ca-tools{float:right;margin-right:0;margin-left:0.5em}body.skin--responsive .mw-footer li{margin-left:0}body.skin--responsive #f-poweredbyico,body.skin--responsive #f-copyrightico{display:inline-block;margin:0 0.5em 1em}body.skin--responsive div.thumb{float:none;margin:1em auto}body.skin--responsive div.tright{margin-left:0;padding-left:0}body.skin--responsive div.tleft{margin-right:0;padding-right:0}body.skin--responsive .thumbinner{width:100% !important;box-sizing:border-box}body.skin--responsive .monobook-body{overflow:auto}body.skin--responsive .monobook-body img{height:auto !important;max-width:100% !important}body.skin--responsive #toc,body.skin--responsive .toc,body.skin--responsive .mw-warning{width:100%;box-sizing:border-box}body.skin--responsive .nomobile{display:none}}.mw-wiki-logo{background-image:url(./../-/wiki.png)}@media print{table.floatright,div.floatright{border:0}table.floatleft,div.floatleft{border:0}div.thumb{page-break-inside:avoid}div.thumb a{border-bottom:0}div.thumbinner{border:1px;background-color:#ffffff;font-size:10pt;color:#666666;border-radius:2px;min-width:100px}.thumbborder{border:1pt solid #dddddd}.magnify{display:none}.mw-parser-output a.external{}.mw-parser-output a.external.text:after,.mw-parser-output a.external.autonumber:after{content:' (' attr(href) ')';word-break:break-all;word-wrap:break-word}.mw-parser-output a.external.text[href^='//']:after,.mw-parser-output a.external.autonumber[href^='//']:after{content:' (https:' attr(href) ')'}.wikitable{background:#fff;margin:1em 0;border:1pt solid #aaa;border-collapse:collapse;font-size:10pt;page-break-inside:avoid}.wikitable > caption{padding:5px;font-size:10pt}.wikitable > tr > th,.wikitable > tr > td,.wikitable > * > tr > th,.wikitable > * > tr > td{background:#fff !important;color:#000 !important;border:1pt solid #aaa;padding:0.4em 0.6em}.wikitable > tr > th,.wikitable > * > tr > th{text-align:center}table.listing,table.listing td{border:1pt solid #000;border-collapse:collapse}.catlinks ul{display:inline;padding:0;list-style:none}.catlinks li{display:inline-block;line-height:1.15;margin:0.1em 0;border-left:1pt solid #aaa;padding:0 0.4em}.catlinks li:first-child{border-left:0;padding-left:0.2em}.mw-hidden-catlinks,.catlinks{display:none}.mw-editsection,.mw-editsection-like,.mw-indicators,#siteNotice,.usermessage{display:none}.printfooter{padding:1em 0}.center{text-align:center}a{background:none !important;padding:0 !important}a,a.external,a.new,a.stub{color:inherit !important;text-decoration:inherit !important}dt{font-weight:bold}h1,h2,h3,h4,h5,h6{font-weight:bold;page-break-after:avoid;page-break-before:avoid}p{margin:1em 0;line-height:1.2;orphans:3;widows:3}img,figure{page-break-inside:avoid}img{border:0;vertical-align:middle}pre,.mw-code{background:#fff;color:#000;border:1pt dashed #000;padding:1em;font-size:8pt;white-space:pre-wrap;overflow-x:hidden;word-wrap:break-word}ul{list-style-type:square}.toctogglecheckbox:checked + .toctitle{display:none}.toc{background-color:#f9f9f9;border:1pt solid #aaa;padding:5px;display:table}.tocnumber,.toctext{display:table-cell}.tocnumber{padding-left:0;padding-right:0.5em}.mw-content-ltr .tocnumber{padding-left:0;padding-right:0.5em}.mw-content-rtl .tocnumber{padding-left:0.5em;padding-right:0}}@media screen{div.thumbinner{border:1px solid #c8ccd1;background-color:#f8f9fa;font-size:94%}.thumbimage{background-color:#ffffff;border:1px solid #c8ccd1}.thumbcaption{border:0;font-size:94%}.thumbborder{border:1px solid #eaecf0}.magnify{float:right;margin-left:3px}.magnify a{display:block;text-indent:15px;white-space:nowrap;overflow:hidden;width:15px;height:11px;background-image:url(./../-/magnify-clip-ltr.svg);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mw-content-ltr .thumbcaption{text-align:left}.mw-content-rtl .thumbcaption{text-align:right}.mw-content-ltr .magnify{margin-left:3px;margin-right:0;float:right}.mw-content-ltr .magnify a{background-image:url(./../-/magnify-clip-ltr.svg)}.mw-content-rtl .magnify{margin-left:0;margin-right:3px;float:left}.mw-content-rtl .magnify a{background-image:url(./../-/magnify-clip-rtl.svg)}a.new{color:#cc2200}a.mw-selflink{color:inherit;font-weight:bold;text-decoration:inherit}a.mw-selflink:hover{cursor:inherit;text-decoration:inherit}a.mw-selflink:active,a.mw-selflink:visited{color:inherit}a.new:visited{color:#a55858}.mw-parser-output a.extiw,.mw-parser-output a.external{color:#3366bb}.mw-parser-output a.extiw:visited,.mw-parser-output a.external:visited{color:#663366}.mw-parser-output a.extiw:active,.mw-parser-output a.external:active{color:#bb6633}.mw-underline-always a{text-decoration:underline}.mw-underline-never a{text-decoration:none}.plainlinks a.external{background:none !important;padding:0 !important}.mw-parser-output a.external{color:#36b}.mw-parser-output a.external,.link-mailto,.link-ftp,.link-irc,.link-audio,.link-video,.link-document{background-image:url(./../-/external-ltr.svg);background-position:center right;background-repeat:no-repeat;padding-right:13px}.mw-parser-output a.external[href^='mailto:'],.link-mailto{background-image:url(./../-/mail.svg)}.mw-parser-output a.external[href^='ftp://'],.link-ftp{background-image:url(./../-/ftp-ltr.svg)}.mw-parser-output a.external[href^='irc://'],.mw-parser-output a.external[href^='ircs://'],.link-irc{background-image:url(./../-/chat-ltr.svg)}.mw-parser-output a.external[href$='.ogg'],.mw-parser-output a.external[href$='.OGG'],.mw-parser-output a.external[href$='.mid'],.mw-parser-output a.external[href$='.MID'],.mw-parser-output a.external[href$='.midi'],.mw-parser-output a.external[href$='.MIDI'],.mw-parser-output a.external[href$='.mp3'],.mw-parser-output a.external[href$='.MP3'],.mw-parser-output a.external[href$='.wav'],.mw-parser-output a.external[href$='.WAV'],.mw-parser-output a.external[href$='.wma'],.mw-parser-output a.external[href$='.WMA'],.link-audio{background-image:url(./../-/audio-ltr.svg)}.mw-parser-output a.external[href$='.ogm'],.mw-parser-output a.external[href$='.OGM'],.mw-parser-output a.external[href$='.avi'],.mw-parser-output a.external[href$='.AVI'],.mw-parser-output a.external[href$='.mpeg'],.mw-parser-output a.external[href$='.MPEG'],.mw-parser-output a.external[href$='.mpg'],.mw-parser-output a.external[href$='.MPG'],.link-video{background-image:url(./../-/video.svg)}.mw-parser-output a.external[href$='.pdf'],.mw-parser-output a.external[href$='.PDF'],.mw-parser-output a.external[href*='.pdf#'],.mw-parser-output a.external[href*='.PDF#'],.mw-parser-output a.external[href*='.pdf?'],.mw-parser-output a.external[href*='.PDF?'],.link-document{background-image:url(./../-/document-ltr.svg)}.mw-parser-output a.extiw,.mw-parser-output a.extiw:active{color:#36b}.mw-body-content:after{clear:both;content:'';display:block}.mw-body-content a.external.free{word-wrap:break-word}.mw-body-content .error{font-size:larger;color:#d33}.rtl .mw-parser-output a.external.free,.rtl .mw-parser-output a.external.autonumber{direction:ltr;unicode-bidi:embed}.mw-hide-empty-elt .mw-parser-output:not(.mw-show-empty-elt) .mw-empty-elt{display:none}.wikitable{background-color:#f8f9fa;color:#202122;margin:1em 0;border:1px solid #a2a9b1;border-collapse:collapse}.wikitable > tr > th,.wikitable > tr > td,.wikitable > * > tr > th,.wikitable > * > tr > td{border:1px solid #a2a9b1;padding:0.2em 0.4em}.wikitable > tr > th,.wikitable > * > tr > th{background-color:#eaecf0;text-align:center}.wikitable > caption{font-weight:bold}#catlinks{text-align:left}.catlinks{border:1px solid #a2a9b1;background-color:#f8f9fa;padding:5px;margin-top:1em;clear:both}.catlinks ul{display:inline;margin:0;padding:0;list-style:none}.catlinks li{display:inline-block;line-height:1.25em;border-left:1px solid #a2a9b1;margin:0.125em 0;padding:0 0.5em}.catlinks li:first-child{padding-left:0.25em;border-left:0}.catlinks li a.mw-redirect{font-style:italic}.mw-hidden-cats-hidden,.catlinks-allhidden{display:none}.emptyPortlet{display:none}.printfooter,.client-nojs #t-print{display:none}.mw-editsection{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.mw-editsection,.mw-editsection-like{font-size:small;font-weight:normal;margin-left:1em;vertical-align:baseline;line-height:1em}.mw-content-ltr .mw-editsection,.mw-content-rtl .mw-content-ltr .mw-editsection,.mw-content-ltr .mw-editsection-like,.mw-content-rtl .mw-content-ltr .mw-editsection-like{margin-left:1em;margin-right:0}.mw-content-rtl .mw-editsection,.mw-content-ltr .mw-content-rtl .mw-editsection,.mw-content-rtl .mw-editsection-like,.mw-content-ltr .mw-content-rtl .mw-editsection-like{margin-right:1em;margin-left:0}.mw-indicators{float:right}#siteNotice{position:relative;text-align:center;margin:0}#localNotice{margin-bottom:0.9em}#siteSub{display:none}#contentSub,#contentSub2{font-size:84%;line-height:1.2em;margin:0 0 1.4em 1em;color:#54595d;width:auto}span.subpages{display:block}.usermessage{background-color:#fef6e7;border:1px solid #fc3;color:#000;font-weight:bold;margin:2em 0 1em;padding:0.5em 1em;vertical-align:middle}a{text-decoration:none;color:#002bb8;background:none}a:not([href]){cursor:pointer}a:visited{color:#5a3696}a:active{color:#faa700}a:hover,a:focus{text-decoration:underline}a:lang(ar),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}img{border:0;vertical-align:middle}hr{height:1px;background-color:#a2a9b1;border:0;margin:0.2em 0}h1,h2,h3,h4,h5,h6{color:#000;margin:0;padding-top:0.5em;padding-bottom:0.17em;overflow:hidden}h1,h2{margin-bottom:0.6em;border-bottom:1px solid #a2a9b1}h3,h4,h5{margin-bottom:0.3em}h1{font-size:188%;font-weight:normal}h2{font-size:150%;font-weight:normal}h3{font-size:128%}h4{font-size:116%}h5{font-size:108%}h6{font-size:100%}p{margin:0.4em 0 0.5em 0}p img{margin:0}ul{margin:0.3em 0 0 1.6em;padding:0}ol{margin:0.3em 0 0 3.2em;padding:0;list-style-image:none}li{margin-bottom:0.1em}dt{font-weight:bold;margin-bottom:0.1em}dl{margin-top:0.2em;margin-bottom:0.5em}dd{margin-left:1.6em;margin-bottom:0.1em}pre,code,tt,kbd,samp,.mw-code{font-family:monospace,monospace}pre,code,.mw-code{background-color:#f8f9fa;color:#000;border:1px solid #eaecf0}code{border-radius:2px;padding:1px 4px}pre,.mw-code{padding:1em;white-space:pre-wrap;overflow-x:hidden;word-wrap:break-word}table{font-size:100%}fieldset{border:1px solid #2a4b8d;margin:1em 0 1em 0;padding:0 1em 1em}legend{padding:0.5em}form{border:0;margin:0}textarea{display:block;box-sizing:border-box;width:100%;border:1px solid #c8ccd1;padding:0.1em}.center{width:100%;text-align:center}*.center *{margin-left:auto;margin-right:auto}.small{font-size:94%}table.small{font-size:100%}@counter-style meetei{system:numeric;symbols:'\ABF0' '\ABF1' '\ABF2' '\ABF3' '\ABF4' '\ABF5' '\ABF6' '\ABF7' '\ABF8' '\ABF9';suffix:') '}@counter-style santali{system:numeric;symbols:'\1C50' '\1C51' '\1C52' '\1C53' '\1C54' '\1C55' '\1C56' '\1C57' '\1C58' '\1C59'}@counter-style myanmar_with_period{system:numeric;symbols:'\1040' '\1041' '\1042' '\1043' '\1044' '\1045' '\1046' '\1047' '\1048' '\1049';suffix:'\104B\0020'}ol:lang(azb) li,ol:lang(bcc) li,ol:lang(bgn) li,ol:lang(bqi) li,ol:lang(fa) li,ol:lang(glk) li,ol:lang(kk-arab) li,ol:lang(lrc) li,ol:lang(luz) li,ol:lang(mzn) li{list-style-type:persian}ol:lang(ckb) li,ol:lang(sdh) li{list-style-type:arabic-indic}ol:lang(hi) li,ol:lang(mai) li,ol:lang(mr) li,ol:lang(ne) li{list-style-type:devanagari}ol:lang(as) li,ol:lang(bn) li{list-style-type:bengali}ol:lang(mni) li{list-style-type:meetei}ol:lang(or) li{list-style-type:oriya}ol:lang(sat) li{list-style-type:santali}ol:lang(blk) li,ol:lang(kjp) li,ol:lang(ksw) li,ol:lang(mnw) li,ol:lang(my) li,ol:lang(shn) li{list-style-type:myanmar_with_period}.mw-content-ltr ul,.mw-content-rtl .mw-content-ltr ul{margin:0.3em 0 0 1.6em;padding:0}.mw-content-rtl ul,.mw-content-ltr .mw-content-rtl ul{margin:0.3em 1.6em 0 0;padding:0}.mw-content-ltr ol,.mw-content-rtl .mw-content-ltr ol{margin:0.3em 0 0 3.2em;padding:0}.mw-content-rtl ol,.mw-content-ltr .mw-content-rtl ol{margin:0.3em 3.2em 0 0;padding:0}.mw-content-ltr dd,.mw-content-rtl .mw-content-ltr dd{margin-left:1.6em;margin-right:0}.mw-content-rtl dd,.mw-content-ltr .mw-content-rtl dd{margin-right:1.6em;margin-left:0}h1:lang(anp),h1:lang(as),h1:lang(bh),h1:lang(bho),h1:lang(blk),h1:lang(bn),h1:lang(gu),h1:lang(hi),h1:lang(kjp),h1:lang(kn),h1:lang(ks),h1:lang(ksw),h1:lang(ml),h1:lang(mr),h1:lang(my),h1:lang(mai),h1:lang(mnw),h1:lang(ne),h1:lang(new),h1:lang(or),h1:lang(pa),h1:lang(pi),h1:lang(sa),h1:lang(shn),h1:lang(syl),h1:lang(ta),h1:lang(te){line-height:1.6em !important}h2:lang(anp),h2:lang(as),h2:lang(bh),h2:lang(bho),h2:lang(blk),h2:lang(bn),h2:lang(gu),h2:lang(hi),h2:lang(kjp),h2:lang(kn),h2:lang(ks),h2:lang(ksw),h2:lang(ml),h2:lang(mr),h2:lang(my),h2:lang(mai),h2:lang(mnw),h2:lang(ne),h2:lang(new),h2:lang(or),h2:lang(pa),h2:lang(pi),h2:lang(sa),h2:lang(shn),h2:lang(syl),h2:lang(ta),h2:lang(te),h3:lang(anp),h3:lang(as),h3:lang(bh),h3:lang(bho),h3:lang(blk),h3:lang(bn),h3:lang(gu),h3:lang(hi),h3:lang(kjp),h3:lang(kn),h3:lang(ks),h3:lang(ksw),h3:lang(ml),h3:lang(mr),h3:lang(my),h3:lang(mai),h3:lang(mnw),h3:lang(ne),h3:lang(new),h3:lang(or),h3:lang(pa),h3:lang(pi),h3:lang(sa),h3:lang(shn),h3:lang(syl),h3:lang(ta),h3:lang(te),h4:lang(anp),h4:lang(as),h4:lang(bh),h4:lang(bho),h4:lang(blk),h4:lang(bn),h4:lang(gu),h4:lang(hi),h4:lang(kjp),h4:lang(kn),h4:lang(ks),h4:lang(ksw),h4:lang(ml),h4:lang(mr),h4:lang(my),h4:lang(mai),h4:lang(mnw),h4:lang(ne),h4:lang(new),h4:lang(or),h4:lang(pa),h4:lang(pi),h4:lang(sa),h4:lang(shn),h4:lang(syl),h4:lang(ta),h4:lang(te),h5:lang(anp),h5:lang(as),h5:lang(bh),h5:lang(bho),h5:lang(blk),h5:lang(bn),h5:lang(gu),h5:lang(hi),h5:lang(kjp),h5:lang(kn),h5:lang(ks),h5:lang(ksw),h5:lang(ml),h5:lang(mr),h5:lang(my),h5:lang(mai),h5:lang(mnw),h5:lang(ne),h5:lang(new),h5:lang(or),h5:lang(pa),h5:lang(pi),h5:lang(sa),h5:lang(shn),h5:lang(syl),h5:lang(ta),h5:lang(te),h6:lang(anp),h6:lang(as),h6:lang(bh),h6:lang(bho),h6:lang(blk),h6:lang(bn),h6:lang(gu),h6:lang(hi),h6:lang(kjp),h6:lang(kn),h6:lang(ks),h6:lang(ksw),h6:lang(ml),h6:lang(mr),h6:lang(my),h6:lang(mai),h6:lang(mnw),h6:lang(ne),h6:lang(new),h6:lang(or),h6:lang(pa),h6:lang(pi),h6:lang(sa),h6:lang(shn),h6:lang(syl),h6:lang(ta),h6:lang(te){line-height:1.4em}h2:lang(th){line-height:1.6}.toc,.toccolours{border:1px solid #a2a9b1;background-color:#f8f9fa;padding:5px;font-size:95%}.toc{display:table;padding:7px}.toc h2{display:inline;border:0;padding:0;font-size:100%;font-weight:bold}.toc .toctitle{text-align:center}.toc ul{list-style:none;margin:0.3em 0;padding:0;text-align:left}.toc ul ul{margin:0 0 0 2em}table.toc{border-collapse:collapse}table.toc td{padding:0}.tocnumber,.toctext{display:table-cell;text-decoration:inherit}.tocnumber{color:#202122;padding-left:0;padding-right:0.5em}.mw-content-ltr .tocnumber{padding-left:0;padding-right:0.5em}.mw-content-rtl .tocnumber{padding-left:0.5em;padding-right:0}.toctogglecheckbox{display:inline !important;position:absolute;opacity:0;z-index:-1}.toctogglespan{font-size:94%}.toctogglespan:before{content:' ['}.toctogglespan:after{content:']'}.toctogglelabel{cursor:pointer;color:#0645ad}.toctogglelabel:hover{text-decoration:underline}.toctogglecheckbox:focus + .toctitle .toctogglelabel{text-decoration:underline;outline:dotted 1px;outline:auto -webkit-focus-ring-color}.toctogglecheckbox:checked + .toctitle .toctogglelabel:after{content:'afficher'}.toctogglecheckbox:not(:checked) + .toctitle .toctogglelabel:after{content:'masquer'}.toc .toctitle{direction:ltr}.mw-content-ltr .toc ul,.mw-content-rtl .mw-content-ltr .toc ul{text-align:left}.mw-content-rtl .toc ul,.mw-content-ltr .mw-content-rtl .toc ul{text-align:right}.mw-content-ltr .toc ul ul,.mw-content-rtl .mw-content-ltr .toc ul ul{margin:0 0 0 2em}.mw-content-rtl .toc ul ul,.mw-content-ltr .mw-content-rtl .toc ul ul{margin:0 2em 0 0}} diff --git a/download-website-script/localhost/Accueil.html b/download-website-script/localhost/Accueil.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Accueil</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Accueil rootpage-Accueil skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Accueil</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><div class="toc" id="toc" role="navigation" aria-labelledby="mw-toc-heading"><input class="toctogglecheckbox" id="toctogglecheckbox" role="button" style="display:none" type="checkbox"><div class="toctitle" dir="ltr" lang="fr"><h2 id="mw-toc-heading">Sommaire</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#gruntnetwork"><span class="tocnumber">1</span> <span class="toctext">gruntnetwork</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Nouveau_Développeur_?"><span class="tocnumber">2</span> <span class="toctext">Nouveau Développeur ?</span></a></li> <li class="toclevel-1"><a href="#S'inscrire"><span class="tocnumber">3</span> <span class="toctext">S'inscrire</span></a></li> <li class="toclevel-1"><a href="#À_lire"><span class="tocnumber">4</span> <span class="toctext">À lire</span></a></li> </ul> </div> <h2><span class="mw-headline" id="gruntnetwork">gruntnetwork</span></h2> <p>gruntnetwork est un système d'exploitation sous licence Affero GPL. Actuellement il est en phase de développement, dans le cadre d'un projet pédagogique à l'Université Montpellier 2. </p> <h2><span id="Nouveau_D.C3.A9veloppeur_.3F"></span><span class="mw-headline" id="Nouveau_Développeur_?">Nouveau Développeur ?</span></h2> <h2><span id="S.27inscrire"></span><span class="mw-headline" id="S'inscrire">S'inscrire</span></h2> <ul><li>Créez-vous un compte sur <a href="http://tuxfamily.org/fr/subscribe" class="external text" rel="nofollow">TuxFmaily</a> et adhérez au projet gruntnetwork</li> <li>Créez-vous un compte sur le <a href="http://wiki.gruntnetwork.com/index.php5?title=Special:Connexion&type=signup&returnto=Nouveau_D%C3%A9veloppeur" class="external text" rel="nofollow">wiki</a></li> <li>Créez-vous un compte sur le <a href="http://tracker.gruntnetwork.com/index.php?do=register" class="external text" rel="nofollow">tracker</a></li></ul> <h2><span id=".C3.80_lire"></span><span class="mw-headline" id="À_lire">À lire</span></h2> <ul><li><a href="./Prérequis.html" title="Prérequis">Prérequis</a> : Un peu de lecture pour les vacances. Si vous ne savez rien sur les sujets listés dans cette page, vous risquez d'être à la traîne.</li> <li><a href="./Conventions.html" title="Conventions">Conventions</a> : À respecter, pour un code homogène. Si vous avez quoi que ce soit à redire dessus, faites-le vite, avant qu'on ait des centaines de lignes à reformater :)</li> <li><a href="./Environnement_de_programmation.html" title="Environnement de programmation">Environnement de programmation</a> : Avec quoi on travaille (Emacs ou Vim + gcc + qemu ou bochs).</li> <li><a href="http://tracker.gruntnetwork.com/roadmap" class="external text" rel="nofollow">Feuille de route</a> : Qui fait quoi, Quand, dans Quel ordre.</li> <li><a href="./Liens.html" title="Liens">Liens</a> : Quand vous ne saurez plus comment faire un truc en assembleur :)</li></ul> <p><a href="./Notes.html" title="Notes">notes</a> </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Accueil&oldid=26" dir="ltr">http://localhost/mediawiki/index.php?title=Accueil&oldid=26</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li class="mw-list-item" id="n-mainpage-description"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li class="mw-list-item" id="n-randompage"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li class="mw-list-item" id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li class="mw-list-item" id="t-allpages"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li class="mw-list-item" id="t-print"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 21 juin 2011 à 12:25.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Affichage_Graphique.html b/download-website-script/localhost/Affichage_Graphique.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Affichage Graphique</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Affichage_Graphique rootpage-Affichage_Graphique skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Affichage Graphique</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Affichage_Graphique&oldid=16" dir="ltr">http://localhost/mediawiki/index.php?title=Affichage_Graphique&oldid=16</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 4 mars 2009 à 16:14.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Conventions.html b/download-website-script/localhost/Conventions.html @@ -0,0 +1,28 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Conventions</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Conventions rootpage-Conventions skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Conventions</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><p>Les conventions suivantes seront utilisées pour un code homogène. </p> <h2><span class="mw-headline" id="En_C">En C</span></h2> <ul><li>L'indentation se fait à 4 espaces par tabulation.</li> <li>Pas de transformation des espaces en tabulation.</li> <li><code>nomsDeVariables</code></li> <li><code>NOMS_DE_CONSTANTE</code></li> <li>Fonctions :</li></ul> <pre> type_retour nom_fonction(type_param_1 param_1, ..., type_param_n param_n) { + code; + } +</pre> <ul><li>Boucles for, avec déclaration locale à la boucle de l'itérateur s'il n'a pas lieu d'être à l'extérieur (int i=a) :</li></ul> <pre> for (int i=a; i<b; i++) { + code; + } +</pre> <h2><span class="mw-headline" id="En_assembleur">En assembleur</span></h2> <p>On utilisera la syntaxe Gas, car elle est compatible avec le compilateur GCC </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Conventions&oldid=4" dir="ltr">http://localhost/mediawiki/index.php?title=Conventions&oldid=4</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 8 février 2009 à 18:02.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Drivers/mode_reel.h:int86.html b/download-website-script/localhost/Drivers/mode_reel.h:int86.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Drivers/mode reel.h:int86</title> <link href="../../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Drivers_mode_reel_h_int86 rootpage-Drivers_mode_reel_h_int86 skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Drivers/mode reel.h:int86</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><h2><span class="mw-headline" id="int86">int86</span></h2> <p><code> void int86(d:int interruption, d:regs86 registres_in, r:regs86 registres_out ); </code> </p> <h3><span class="mw-headline" id="Description">Description</span></h3> <p>d:<code>registres_in</code> est la valeur des registres avant l'interruption d:<code>interruption</code>, r:<code>registres_out</code> est la valeur des registres après interruption. </p><p>Cette fonction n'est pas encore écrite. </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Drivers/mode_reel.h:int86&oldid=17" dir="ltr">http://localhost/mediawiki/index.php?title=Drivers/mode_reel.h:int86&oldid=17</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="../Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="../Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="../Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="../../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="../../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 11 février 2009 à 14:40.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Environnement_de_programmation.html b/download-website-script/localhost/Environnement_de_programmation.html @@ -0,0 +1,24 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Environnement de programmation</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Environnement_de_programmation rootpage-Environnement_de_programmation skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Environnement de programmation</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><div class="toc" id="toc" role="navigation" aria-labelledby="mw-toc-heading"><input class="toctogglecheckbox" id="toctogglecheckbox" role="button" style="display:none" type="checkbox"><div class="toctitle" dir="ltr" lang="fr"><h2 id="mw-toc-heading">Sommaire</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Éditeur"><span class="tocnumber">1</span> <span class="toctext">Éditeur</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Gestion_des_versions"><span class="tocnumber">2</span> <span class="toctext">Gestion des versions</span></a></li> <li class="toclevel-1 tocsection-3"><a href="#Compilateur"><span class="tocnumber">3</span> <span class="toctext">Compilateur</span></a></li> <li class="toclevel-1 tocsection-4"><a href="#Tests"><span class="tocnumber">4</span> <span class="toctext">Tests</span></a></li> </ul> </div> <h2><span id=".C3.89diteur"></span><span class="mw-headline" id="Éditeur">Éditeur</span></h2> <p>Votre préféré :) Personne ne vous oblige à quoi que ce soit. Prévoyez-en un avec indentation et coloration syntaxique quand même, nano et cat sont un peu rudimentaires de ce point de vue… </p> <h2><span class="mw-headline" id="Gestion_des_versions">Gestion des versions</span></h2> <p>SVN sera utilisé pour la gestion des versions. </p> <pre> svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/systeme + svn co svn+ssh://VOTREUSER@svn.tuxfamily.org/svnroot/gruntnetwork/applications +</pre> <p>Voir <a href="http://faq.tuxfamily.org/SVN/Fr" class="external text" rel="nofollow">la faq de TuxFamily</a> pour plus d'infos sur l'utilisation. </p> <h2><span class="mw-headline" id="Compilateur">Compilateur</span></h2> <p>Pour le C : <b>gcc</b>. Car c'est le plus courant sous linux, car il gère directement l'assembleur (syntaxe gas), car beaucoup de monde l'utilise donc on trouvera facilement de la documentation, car il est sous licence libre. </p><p>On utilisera la version 4.3, de préférence 4.3.2 (c'est celle par défaut sous ubuntu, et sous debian testing/unstable). Si vous avez une autre version, pas de problème, mais en cas de bug bizarre, il vaudra mieux vérifier que c'est bien le code qui plante et non pas une version bugguée de gcc (c'est arrivé par le passé…) </p> <h2><span class="mw-headline" id="Tests">Tests</span></h2> <p><b>NE TESTEZ JAMAIS gruntnetwork SUR UN PC RÉEL</b>, à moins que vous n'ayez pas peur d'un effacement de disque. Je possède moi-même un PC avec un vieux disque dur vide de quelques Go, ça pourra servir pour faire des tests grandeur nature lorsque le projet sera viable. </p><p>Pour les tests nous utiliserons <a href="http://bellard.org/qemu/" class="external text" rel="nofollow">qemu</a>, un émulateur de PC libre, fonctionnant sous linux et windows, probablement sous mac aussi. Seule l'architecture x86 sera supportée pour l'instant. </p><p>Lorsque nous en viendrons à écrire les drivers, il sera possible d'utiliser bochs pour voir si les bons drivers sont chargés lorsque la configuration matérielle (l'ensemble du matériel disponible sur un PC) change. </p><p>Le démarrage (boot) sera assuré par <a href="./GRUB.html" title="GRUB">GRUB</a>, installé sur une image de disquette vierge (un fichier de 1.44 Mo simulant une disquette sur laquelle seront présents GRUB, gruntnetwork et rien d'autre). Cette configuration simple évitera que d'autres facteurs de causent des bugs. </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Environnement_de_programmation&oldid=23" dir="ltr">http://localhost/mediawiki/index.php?title=Environnement_de_programmation&oldid=23</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li class="mw-list-item" id="n-mainpage-description"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li class="mw-list-item" id="n-randompage"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li class="mw-list-item" id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li class="mw-list-item" id="t-allpages"><a href="./Toutes_les_pages.html" rel="alternate" accesskey="q" title="Toutes les pages [q]">Toutes les pages</a></li><li class="mw-list-item" id="t-print"><a href="javascript:print();" rel="alternate" accesskey="p" title="Version imprimable de cette page [p]">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 6 janvier 2009 à 12:51.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/GRUB.html b/download-website-script/localhost/GRUB.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>GRUB</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-GRUB rootpage-GRUB skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">GRUB</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><p>Grub est le chargeur de démarrage utilisé par gruntnetwork. </p><p>Lors du démarrage de l'ordinateur, il est chargé en mémoire par le BIOS (Basic Input Output System), puis il est exécuté. Sa tâche consiste alors à afficher un menu à l'écran permettant à l'utilisateur de choisir le système d'exploitation qu'il souhaite démarrer. </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=GRUB&oldid=7" dir="ltr">http://localhost/mediawiki/index.php?title=GRUB&oldid=7</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 6 janvier 2009 à 12:53.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/I/cc-0.png b/download-website-script/localhost/I/cc-0.png Binary files differ. diff --git a/download-website-script/localhost/I/poweredby_mediawiki_88x31.png b/download-website-script/localhost/I/poweredby_mediawiki_88x31.png Binary files differ. diff --git a/download-website-script/localhost/Langage.html b/download-website-script/localhost/Langage.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Langage</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Langage rootpage-Langage skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Langage</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><p>gruntnetwork utilise de manière interne un langage de programmation graphique, qui se présente de la manière suivante : </p> <ul><li>Les fonctions sont représentées par des blocs</li> <li>Les blocs possèdent des ports d'entrée (paramètres de la fonction) et de sortie (valeur<b>s</b> de sortie)</li> <li>Un bloc n'est pas caractérisé par son nom, mais par un identifiant interne, donc pas de conflits de nommage</li></ul> <ul><li>Les ports ont des conditions sur leurs valeurs (type, intervalle de valeurs, …)</li> <li>Les ports peuvent (devraient) avoir une valeur par défaut</li> <li>Les ports ont un nom et une description associée</li></ul> <ul><li>Les blocs sont reliés entre eux en connectant leurs ports</li> <li>Un port de sortie peut être connecté à plusieurs ports d'entrée, la valeur de sortie étant conservée en mémoire tant qu'elle est nécessaire (ceci est l'équivalent d'un <code>let</code> en scheme, ou d'une variable locale)</li> <li>Un bloc est composé d'autres blocs dont certains ports sont connectés aux ports du bloc englobant.</li></ul> <p>Il y a une certaine analogie entre les blocs et des circuits éléctroniques : l'information circule au travers des connexions et est modifiée par les blocs. Un bloc effectue une tâche définie, et peut être vu comme un composant électronique : on n'a pas besoin de voir à l'intérieur pour l'utiliser. </p><p>Le langage s'écrit au travers d'une interface de recherche, qui permet de sélectionner le bon bloc parmi plusieurs homonymes s'il y en a. </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Langage&oldid=8" dir="ltr">http://localhost/mediawiki/index.php?title=Langage&oldid=8</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 4 janvier 2009 à 06:54.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Liens.html b/download-website-script/localhost/Liens.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Liens</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Liens rootpage-Liens skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Liens</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><div class="toc" id="toc" role="navigation" aria-labelledby="mw-toc-heading"><input class="toctogglecheckbox" id="toctogglecheckbox" role="button" style="display:none" type="checkbox"><div class="toctitle" dir="ltr" lang="fr"><h2 id="mw-toc-heading">Sommaire</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Notions"><span class="tocnumber">1</span> <span class="toctext">Notions</span></a> <ul> <li class="toclevel-2 tocsection-2"><a href="#Assembleur"><span class="tocnumber">1.1</span> <span class="toctext">Assembleur</span></a></li> <li class="toclevel-2 tocsection-3"><a href="#Démarrage_(boot)"><span class="tocnumber">1.2</span> <span class="toctext">Démarrage (boot)</span></a></li> <li class="toclevel-2 tocsection-4"><a href="#Modes_du_processeur_(réel,_protégé,_...)"><span class="tocnumber">1.3</span> <span class="toctext">Modes du processeur (réel, protégé, ...)</span></a></li> <li class="toclevel-2 tocsection-5"><a href="#Affichage_Graphique"><span class="tocnumber">1.4</span> <span class="toctext">Affichage Graphique</span></a> <ul> <li class="toclevel-3 tocsection-6"><a href="#Références_VESA"><span class="tocnumber">1.4.1</span> <span class="toctext">Références VESA</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-7"><a href="#Drivers"><span class="tocnumber">1.5</span> <span class="toctext">Drivers</span></a> <ul> <li class="toclevel-3 tocsection-8"><a href="#Souris"><span class="tocnumber">1.5.1</span> <span class="toctext">Souris</span></a></li> <li class="toclevel-3 tocsection-9"><a href="#Clavier"><span class="tocnumber">1.5.2</span> <span class="toctext">Clavier</span></a></li> </ul> </li> </ul> </li> <li class="toclevel-1 tocsection-10"><a href="#Portails"><span class="tocnumber">2</span> <span class="toctext">Portails</span></a></li> <li class="toclevel-1 tocsection-11"><a href="#Tutoriels"><span class="tocnumber">3</span> <span class="toctext">Tutoriels</span></a></li> <li class="toclevel-1 tocsection-12"><a href="#Petits_systèmes_d'exploitation"><span class="tocnumber">4</span> <span class="toctext">Petits systèmes d'exploitation</span></a></li> <li class="toclevel-1 tocsection-13"><a href="#Divers"><span class="tocnumber">5</span> <span class="toctext">Divers</span></a></li> </ul> </div> <h2><span class="mw-headline" id="Notions">Notions</span></h2> <ul><li><a href="http://fr.wikipedia.org/wiki/Basic_Input_Output_System" class="external text" rel="nofollow">BIOS</a> pour ceux qui ne savent pas ce que c'est</li></ul> <h3><span class="mw-headline" id="Assembleur">Assembleur</span></h3> <ul><li><a href="http://mark.masmcode.com/" class="external text" rel="nofollow">Optimisation</a></li> <li><a href="http://www.asmcommunity.net/" class="external text" rel="nofollow">asmcommunity.net</a></li> <li><a href="http://gok.customer.netspace.net.au/resources/" class="external text" rel="nofollow">Hacks SVGA</a></li> <li><a href="http://www.x86-guide.com/" class="external text" rel="nofollow">Guide pour l'assembleur X86</a></li> <li><a href="http://asm.sourceforge.net/" class="external text" rel="nofollow">asm.sourceforge.net</a></li> <li><a href="http://www.ctyme.com/intr/int.htm" class="external text" rel="nofollow">Interruptions du BIOS</a></li> <li><a href="http://heim.ifi.uio.no/~stanisls/helppc/idx_interrupt.html" class="external text" rel="nofollow">Encore les interruptions</a></li> <li><a href="http://www.penguin.cz/~literakl/intel/intel.html" class="external text" rel="nofollow">80x86 instruction set</a></li></ul> <h3><span id="D.C3.A9marrage_.28boot.29"></span><span class="mw-headline" id="Démarrage_(boot)">Démarrage (boot)</span></h3> <ul><li><a href="http://susam.in/articles/boot-sector-code/" class="external text" rel="nofollow">Secteur de boot</a></li> <li><a href="http://www.osdcom.info/content/view/33/39/" class="external text" rel="nofollow">Après GRUB (multiboot)</a></li> <li>Premier boot de la première version de linux : <a href="http://www.oldlinux.org/Linux.old/kernel/0.00/linux-0.01/boot/boot.s" class="external autonumber" rel="nofollow">[1]</a> et <a href="http://www.oldlinux.org/Linux.old/kernel/0.1x/linux-0.10/boot/bootsect.s" class="external autonumber" rel="nofollow">[2]</a></li> <li><a href="http://en.wikibooks.org/wiki/X86_Assembly/Bootloaders" class="external text" rel="nofollow">Chargeurs de démarrage</a> sur le wiki X86_Assembly</li> <li><a href="http://www.vnutz.com/content/program_a_bootstrap_loader" class="external text" rel="nofollow">Programmer un chargeur de démarrage</a></li> <li><a href="http://www.pixelbeat.org/docs/disk/" class="external text" rel="nofollow">Organisation du disque dur</a> (secteur de boot et fichiers de grub)</li> <li><a href="http://www.gnu.org/software/grub/manual/multiboot/multiboot.html" class="external text" rel="nofollow">Multiboot Specification</a></li> <li><a href="http://www.sfr-fresh.com/linux/misc/grub-0.97.tar.gz/" class="external text" rel="nofollow">Grub-0.97.tar.gz</a> (Téléchargement des sources)</li></ul> <h3><span id="Modes_du_processeur_.28r.C3.A9el.2C_prot.C3.A9g.C3.A9.2C_....29"></span><span class="mw-headline" id="Modes_du_processeur_(réel,_protégé,_...)">Modes du processeur (réel, protégé, ...)</span></h3> <ul><li><a href="http://www.x86.org/articles/pmbasics/tspec_a1_doc.htm" class="external text" rel="nofollow">Protected Mode Basics</a> : Les bases, y entrer, en sortir <b>sur le processeur 80286</b> (donc pas pour nous)</li> <li><a href="http://en.wikibooks.org/wiki/X86_Assembly/Protected_Mode" class="external text" rel="nofollow">X86 Assembly/Protected Mode</a></li> <li><a href="http://osdev.berlios.de/v86.html" class="external text" rel="nofollow">Virtual 8086 Mode</a> : du réel dans du protégé</li> <li><a href="http://benoit.papillault.free.fr/c/l32/pm.asm" class="external text" rel="nofollow">pm.asm</a> : passage en mode protégé puis retour en mode réel + du V86 quelque part.</li> <li><a href="http://www.sudleyplace.com/pmtorm.html" class="external text" rel="nofollow">Transition from Protected Mode to Real Mode</a></li></ul> <h3><span class="mw-headline" id="Affichage_Graphique">Affichage Graphique</span></h3> <p>Voir l'article <a href="./Affichage_Graphique.html" title="Affichage Graphique">Affichage Graphique</a>. </p> <ul><li><a class="external text" rel="nofollow">Table des caractères ascii</a></li> <li><a href="http://www.faqs.org/faqs/pc-hardware-faq/supervga-programming/" class="external text" rel="nofollow">SuperVGA/VESA programmer's notes</a></li> <li><a href="http://en.wikipedia.org/wiki/VESA_BIOS_Extensions" class="external text" rel="nofollow">VESA BIOS Extensions</a> sur wikipedia</li> <li><a href="http://atschool.eduweb.co.uk/camdean/pupils/amac/vga.htm#11" class="external text" rel="nofollow">Tutorial on VGA Graphics</a> : VGA, souris, bitmap</li> <li><a href="http://osdev.berlios.de/v86.html" class="external text" rel="nofollow">Virtual 8086 Mode</a> : Utiliser le mode 8086 virtuel pour accéder aux fonctions VESA du BIOS</li> <li><a href="http://www.inversereality.org/tutorials/graphics%20programming/videomodesvesa.html" class="external text" rel="nofollow">VESA Video Modes</a> Comment obtenir la liste des modes disponibles et des informations les concernant.</li> <li><a href="http://www.student.cs.uwaterloo.ca/~cs452/grub/" class="external text" rel="nofollow">patch vbe</a> pour que grub nous passe en mode graphique</li> <li><a href="http://svn.navi.cx/misc/trunk/metalkit/lib/vbe.c" class="external text" rel="nofollow">Utilisation de l'interface en mode protégé de VBE</a></li></ul> <h4><span id="R.C3.A9f.C3.A9rences_VESA"></span><span class="mw-headline" id="Références_VESA">Références VESA</span></h4> <ul><li><a href="http://docs.ruudkoot.nl/vesasp12.txt" class="external text" rel="nofollow">VESA BIOS Extension 1.2</a></li> <li><a href="http://docs.ruudkoot.nl/vbe20.txt" class="external text" rel="nofollow">VESA BIOS Extension 2.0</a></li> <li><a href="http://www.vesa.org/public/VBE/vbe3.pdf" class="external text" rel="nofollow">VESA BIOS Extension 3.0</a></li></ul> <h3><span class="mw-headline" id="Drivers">Drivers</span></h3> <h4><span class="mw-headline" id="Souris">Souris</span></h4> <ul><li><a href="http://wiki.osdev.org/Mouse_Input" class="external text" rel="nofollow">Mouse Input</a> : Comment configurer et écouter une souris PS/2 sur osdev.org</li></ul> <h4><span class="mw-headline" id="Clavier">Clavier</span></h4> <ul><li><a href="http://wiki.osdev.org/PS2_Keyboard#Protected_Mode_Keyboard_Driver" class="external text" rel="nofollow">PS2 Keyboard</a> : driver sur osdev.org</li> <li><a href="http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html" class="external text" rel="nofollow">Keyboard scancodes</a> Quel code envoyé par le clavier correspond à quel caractère.</li></ul> <h2><span class="mw-headline" id="Portails">Portails</span></h2> <ul><li><a href="http://www.osdev.org/" class="external text" rel="nofollow">osdev.org</a> : Wiki + Forum sur le développement d'OS</li> <li><a href="http://www.nondot.org/sabre/os/articles" class="external text" rel="nofollow">OSRC</a> : Operating System Ressource Center</li> <li><a href="http://www.osdever.net/" class="external text" rel="nofollow">Bona Fide OS Development</a></li></ul> <h2><span class="mw-headline" id="Tutoriels">Tutoriels</span></h2> <ul><li><a href="http://a.michelizza.free.fr/pmwiki.php?n=TutoOS.TutoOS" class="external text" rel="nofollow">Pépin</a> : tuto du boot au shell, très complet.</li> <li><a href="http://aaprog.blogspot.com/2008/04/systme-dexploitation-1-les-outils.html" class="external text" rel="nofollow">AAProg</a> : Pas beaucoup de code mais de très bonnes explications</li> <li>Tutoriels sur <a href="http://www.osdever.net/tutorials.php?cat=0&sort=1" class="external text" rel="nofollow">Bona Fide</a></li></ul> <h2><span id="Petits_syst.C3.A8mes_d.27exploitation"></span><span class="mw-headline" id="Petits_systèmes_d'exploitation">Petits systèmes d'exploitation</span></h2> <p>Toujours pratique pour s'inspirer… </p> <ul><li><a href="http://wiki.osdev.org/Projects" class="external text" rel="nofollow">Liste de projets d'OS</a> sur osdev.org</li> <li><a href="http://www.dynatos.org/" class="external text" rel="nofollow">dynatos</a></li> <li><a href="http://gok.customer.netspace.net.au/resources/" class="external text" rel="nofollow">UNIOS</a></li> <li><a href="http://www.sarg.ryerson.ca/~cmwilson/code/funos/funos.html" class="external text" rel="nofollow">funos</a></li> <li><a href="http://www.ninj4.net/kinetic/" class="external text" rel="nofollow">kinetic</a>, écrit en haskell. Ça vaut le coup d'oeuil.</li></ul> <h2><span class="mw-headline" id="Divers">Divers</span></h2> <ul><li><a href="http://www.siteduzero.com/forum-83-276054-p1-creer-son-propre-systeme-d-exploitation.html" class="external text" rel="nofollow">Sujet</a> sur le site du zéro, pas mal de liens</li></ul> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Liens&oldid=10" dir="ltr">http://localhost/mediawiki/index.php?title=Liens&oldid=10</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li class="mw-list-item" id="n-mainpage-description"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li class="mw-list-item" id="n-randompage"><a accesskey="x" title="Afficher une page au hasard [x]">Page au hasard</a></li><li class="mw-list-item" id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li class="mw-list-item" id="t-allpages"><a href="./Toutes_les_pages.html" rel="alternate" accesskey="q" title="Toutes les pages [q]">Toutes les pages</a></li><li class="mw-list-item" id="t-print"><a href="javascript:print();" rel="alternate" accesskey="p" title="Version imprimable de cette page [p]">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 31 décembre 2009 à 02:15.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/M/Creator b/download-website-script/localhost/M/Creator diff --git a/download-website-script/localhost/M/Date b/download-website-script/localhost/M/Date @@ -0,0 +1 @@ +2023-05-07 +\ No newline at end of file diff --git a/download-website-script/localhost/M/Description b/download-website-script/localhost/M/Description diff --git a/download-website-script/localhost/M/Language b/download-website-script/localhost/M/Language @@ -0,0 +1 @@ +fra +\ No newline at end of file diff --git a/download-website-script/localhost/M/Name b/download-website-script/localhost/M/Name @@ -0,0 +1 @@ +wikizimmer.my_wiki +\ No newline at end of file diff --git a/download-website-script/localhost/M/Publisher b/download-website-script/localhost/M/Publisher diff --git a/download-website-script/localhost/M/Source b/download-website-script/localhost/M/Source @@ -0,0 +1 @@ +http://localhost/ +\ No newline at end of file diff --git a/download-website-script/localhost/M/Title b/download-website-script/localhost/M/Title @@ -0,0 +1 @@ +Gruntnetwork +\ No newline at end of file diff --git a/download-website-script/localhost/M/mainpage b/download-website-script/localhost/M/mainpage @@ -0,0 +1 @@ +Accueil +\ No newline at end of file diff --git a/download-website-script/localhost/Notes.html b/download-website-script/localhost/Notes.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Notes</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Notes rootpage-Notes skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Notes</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><p>Permettre à une construction de déclarer des mot-clés (keywords) qui seront valides ou non à certains endroits du code dans la construction, mais ne pourront pas être redéclarés tant que la construction a un effet. C'est une alternative à la possibilité de rajouter des variables "par nom" pour qu'elles soient utilisées par ex. par le code d'une fonction. </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Notes&oldid=11" dir="ltr">http://localhost/mediawiki/index.php?title=Notes&oldid=11</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 21 juin 2011 à 12:27.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Nouveau_Développeur.html b/download-website-script/localhost/Nouveau_Développeur.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Nouveau Développeur</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Nouveau_Développeur rootpage-Nouveau_Développeur skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Nouveau Développeur</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><h2><span id="S.27inscrire"></span><span id="S'inscrire" class="mw-headline">S'inscrire</span></h2> <ul><li>Créez-vous un compte sur <a href="http://tuxfamily.org/fr/subscribe" class="external text" rel="nofollow">TuxFmaily</a> et adhérez au projet gruntnetwork</li> <li>Créez-vous un compte sur le <a href="http://wiki.gruntnetwork.com/index.php5?title=Special:Connexion&type=signup&returnto=Nouveau_D%C3%A9veloppeur" class="external text" rel="nofollow">wiki</a></li> <li>Créez-vous un compte sur le <a href="http://tracker.gruntnetwork.com/index.php?do=register" class="external text" rel="nofollow">tracker</a></li></ul> <h2><span id=".C3.80_lire"></span><span id="À_lire" class="mw-headline">À lire</span></h2> <ul><li><a href="./Prérequis.html" title="Prérequis">Prérequis</a> : Un peu de lecture pour les vacances. Si vous ne savez rien sur les sujets listés dans cette page, vous risquez d'être à la traîne.</li> <li><a href="./Conventions.html" title="Conventions">Conventions</a> : À respecter, pour un code homogène. Si vous avez quoi que ce soit à redire dessus, faites-le vite, avant qu'on ait des centaines de lignes à reformater :)</li> <li><a href="./Environnement_de_programmation.html" title="Environnement de programmation">Environnement de programmation</a> : Avec quoi on travaille (Emacs ou Vim + gcc + qemu ou bochs).</li> <li><a href="http://tracker.gruntnetwork.com/roadmap" class="external text" rel="nofollow">Feuille de route</a> : Qui fait quoi, Quand, dans Quel ordre.</li> <li><a href="./Liens.html" title="Liens">Liens</a> : Quand vous ne saurez plus comment faire un truc en assembleur :)</li></ul> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Nouveau_Développeur&oldid=15" dir="ltr">http://localhost/mediawiki/index.php?title=Nouveau_Développeur&oldid=15</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 2 février 2009 à 01:31.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Prérequis.html b/download-website-script/localhost/Prérequis.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Prérequis</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Prérequis rootpage-Prérequis skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Prérequis</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><p><b>Une chose à retenir</b> : Si vous êtes largués, si vous ne comprenez pas, si vous piétinez sur un bout de code qui compile pas : n'attendez pas le déluge pour vous signaler ! Il y aura toujours quelqu'un pour vous aider à comprendre ce qui vous pose problème. </p><p>Certaines pages lisées ici sont en anglais : si vous avez du mal, envoyez-moi un message et je ferai une traduction. </p> <div class="toc" id="toc" role="navigation" aria-labelledby="mw-toc-heading"><input class="toctogglecheckbox" id="toctogglecheckbox" role="button" style="display:none" type="checkbox"><div class="toctitle" dir="ltr" lang="fr"><h2 id="mw-toc-heading">Sommaire</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Un_peu_de_lecture"><span class="tocnumber">1</span> <span class="toctext">Un peu de lecture</span></a> <ul> <li class="toclevel-2 tocsection-2"><a href="#Conception_D'OS_(GNU/Linux_Magazine)"><span class="tocnumber">1.1</span> <span class="toctext">Conception D'OS (GNU/Linux Magazine)</span></a></li> <li class="toclevel-2 tocsection-3"><a href="#a_Simple_Operating_System"><span class="tocnumber">1.2</span> <span class="toctext">a Simple Operating System</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-4"><a href="#Connaissance_du_C_et_de_l'assembleur"><span class="tocnumber">2</span> <span class="toctext">Connaissance du C et de l'assembleur</span></a> <ul> <li class="toclevel-2 tocsection-5"><a href="#Cours_de_C_:"><span class="tocnumber">2.1</span> <span class="toctext">Cours de C :</span></a></li> <li class="toclevel-2 tocsection-6"><a href="#Cours_d'ASM_pour_plateforme_x86_:"><span class="tocnumber">2.2</span> <span class="toctext">Cours d'ASM pour plateforme x86 :</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-7"><a href="#Compréhension_de_la_procédure_de_démarrage_(Boot)"><span class="tocnumber">3</span> <span class="toctext">Compréhension de la procédure de démarrage (Boot)</span></a></li> <li class="toclevel-1 tocsection-8"><a href="#Interruptions_du_BIOS_(pages_de_référence)"><span class="tocnumber">4</span> <span class="toctext">Interruptions du BIOS (pages de référence)</span></a></li> </ul> </div> <h2><span class="mw-headline" id="Un_peu_de_lecture">Un peu de lecture</span></h2> <h3><span id="Conception_D.27OS_.28GNU.2FLinux_Magazine.29"></span><span class="mw-headline" id="Conception_D'OS_(GNU/Linux_Magazine)">Conception D'OS (GNU/Linux Magazine)</span></h3> <p>Dans GNU/Linux Magazine France est paru il y a quelques années une série d'articles sur la conception de systèmes d'exploitation. Les articles expliquent, pas à pas, comment créer un système simple. Je recommande vivement à tout le monde d'avoir lu ces articles d'ici la mi-janvier, comme ça on saura tous de quoi on parle. </p><p><a href="http://sos.enix.org/fr/SOSDownload" class="external text" rel="nofollow">Les articles</a> sont disponibles gratuitement sur internet. </p><p>N°s des magazines : </p> <ul><li>62 : Boot + Console</li> <li>63 : Segmentation et Interruptions</li> <li>65 : Pagination</li> <li>68 : Multitâche et changement de contexte</li> <li>69 : Threads</li> <li>70 : Espaces d'adressage, appels système et applications utilisateur</li> <li>72 : Gestion de l'espace virtuel utilisateur</li> <li>74 : VFS (système de fichiers virtuel)</li></ul> <p>Vu que ce dernier numéro contient la deuxième partie d'un article très intéressant sur la compression de données, vous voudrez peut-être la première partie : n° 73. Le site <a href="http://www.ed-diamond.com/" class="external text" rel="nofollow">ed-diamond</a> vous permet de commander ces anciens numéros. Il propose un « PowerPack x10 » à 25€, donc ça fait un bon cadeau de noël pour pas trop cher :) </p> <h3><span class="mw-headline" id="a_Simple_Operating_System">a Simple Operating System</span></h3> <p>Un système d'exploitation simple : <a href="http://minso.free.fr/cavinfo/systeme/sos.html" class="external text" rel="nofollow">sos</a> </p> <h2><span id="Connaissance_du_C_et_de_l.27assembleur"></span><span class="mw-headline" id="Connaissance_du_C_et_de_l'assembleur">Connaissance du C et de l'assembleur</span></h2> <h4><span class="mw-headline" id="Cours_de_C_:">Cours de C :</span></h4> <ul><li><a href="http://c.developpez.com/cours/" class="external free" rel="nofollow">http://c.developpez.com/cours/</a></li> <li><a href="http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html" class="external free" rel="nofollow">http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html</a></li> <li><a href="http://c.developpez.com/faq/" class="external free" rel="nofollow">http://c.developpez.com/faq/</a></li></ul> <h4><span id="Cours_d.27ASM_pour_plateforme_x86_:"></span><span class="mw-headline" id="Cours_d'ASM_pour_plateforme_x86_:">Cours d'ASM pour plateforme x86 :</span></h4> <ul><li><a href="http://benoit-m.developpez.com/assembleur/tutoriel/" class="external free" rel="nofollow">http://benoit-m.developpez.com/assembleur/tutoriel/</a></li> <li><a href="http://www.scribd.com/search?c=all&query=x86&commit=Search" class="external free" rel="nofollow">http://www.scribd.com/search?c=all&query=x86&commit=Search</a></li></ul> <h2><span id="Compr.C3.A9hension_de_la_proc.C3.A9dure_de_d.C3.A9marrage_.28Boot.29"></span><span class="mw-headline" id="Compréhension_de_la_procédure_de_démarrage_(Boot)">Compréhension de la procédure de démarrage (Boot)</span></h2> <ul><li><a href="http://fr.wikipedia.org/wiki/Master_boot_record" class="external text" rel="nofollow">MBR</a></li> <li><a href="http://www.pixelbeat.org/docs/disk/" class="external text" rel="nofollow">GRUB</a></li> <li>(Une des) <a href="http://fr.wikipedia.org/wiki/Init" class="external text" rel="nofollow">procédure(s) d'initialisation</a> de GNU/Linux (Nous n'utiliserons probablement pas cette méthode, mais c'est bon à connaître).</li></ul> <p><br> Nous utiliserons Grub et le standard Multiboot plutôt que de programmer notre propre chargeur de démarrage, cependant les méchanismes du MBR et de GRUB sont à comprendre pour maîtriser la chose (et pour la soutenance orale...). </p> <h2><span id="Interruptions_du_BIOS_.28pages_de_r.C3.A9f.C3.A9rence.29"></span><span class="mw-headline" id="Interruptions_du_BIOS_(pages_de_référence)">Interruptions du BIOS (pages de référence)</span></h2> <ul><li><a href="http://www.ctyme.com/intr/int.htm" class="external text" rel="nofollow">Liste des interruptions</a> et de comment on s'en sert</li> <li>Les interruptions int 10h et int 13h seront utilisées.</li> <li><a href="http://courses.ece.uiuc.edu/ece390/books/labmanual/graphics-int10h.html" class="external text" rel="nofollow">int 10h</a></li> <li><a href="http://courses.ece.uiuc.edu/ece390/books/labmanual/graphics-mode13h.html" class="external text" rel="nofollow">int 13h (VGA)</a></li> <li><a href="http://pdos.csail.mit.edu/6.828/2008/readings/hardware/vgadoc/VESA.TXT" class="external text" rel="nofollow">Modes VESA</a></li></ul> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Prérequis&oldid=13" dir="ltr">http://localhost/mediawiki/index.php?title=Prérequis&oldid=13</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li class="mw-list-item" id="n-mainpage-description"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li class="mw-list-item" id="n-randompage"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li class="mw-list-item" id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li class="mw-list-item" id="t-allpages"><a href="./Toutes_les_pages.html" rel="alternate" accesskey="q" title="Toutes les pages [q]">Toutes les pages</a></li><li class="mw-list-item" id="t-print"><a href="javascript:print();" rel="alternate" accesskey="p" title="Version imprimable de cette page [p]">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 8 février 2009 à 18:15.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Test_fonctionC.html b/download-website-script/localhost/Test_fonctionC.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Test fonctionC</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Test_fonctionC rootpage-Test_fonctionC skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Test fonctionC</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><h2><span class="mw-headline" id="floor">floor</span></h2> <p><code> int floor(float x ); </code> </p> <h3><span class="mw-headline" id="Description">Description</span></h3> <p>Renvoie l'arrondi à l'inférieur de x </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Test_fonctionC&oldid=24" dir="ltr">http://localhost/mediawiki/index.php?title=Test_fonctionC&oldid=24</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 1 janvier 2009 à 02:05.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/Toutes_les_pages.html b/download-website-script/localhost/Toutes_les_pages.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Toutes les pages</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Toutes_les_pages rootpage-Toutes_les_pages skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Toutes les pages</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><ul><li><a href="./Accueil.html" title="Accueil">Accueil</a></li> <li><a href="./Affichage_Graphique.html" title="Affichage Graphique">Affichage Graphique</a></li> <li><a href="./Conventions.html" title="Conventions">Conventions</a></li> <li><a href="./Drivers/mode_reel.h:int86.html" title="Drivers/mode reel.h:int86">Drivers/mode reel.h:int86</a></li> <li><a href="./Environnement_de_programmation.html" title="Environnement de programmation">Environnement de programmation</a></li> <li><a href="./GRUB.html" title="GRUB">GRUB</a></li> <li><a href="./Langage.html" title="Langage">Langage</a></li> <li><a href="./Liens.html" title="Liens">Liens</a></li> <li><a href="./Notes.html" title="Notes">Notes</a></li> <li><a href="./Nouveau_Développeur.html" title="Nouveau Développeur">Nouveau Développeur</a></li> <li><a href="./Prérequis.html" title="Prérequis">Prérequis</a></li> <li><a href="./Test_fonctionC.html" title="Test fonctionC">Test fonctionC</a></li></ul> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Toutes_les_pages&oldid=27" dir="ltr">http://localhost/mediawiki/index.php?title=Toutes_les_pages&oldid=27</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li id="n-mainpage-description" class="mw-list-item"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li id="n-randompage" class="mw-list-item"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li id="n-help-mediawiki" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li id="t-allpages" class="mw-list-item"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" title="Aller à la navigation" class="menu-toggle" id="sidebar-toggle"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 7 mai 2023 à 22:33.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/index.html b/download-website-script/localhost/index.html @@ -0,0 +1,22 @@ +<!DOCTYPE html><html dir="ltr" lang="en"><head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Accueil</title> <link href="./../-/zim.css" id="layout-css" rel="stylesheet"> </head> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr WikiaPage no-js skin-vector" id="zim"> <body class="action-view ltr mediawiki mw-hide-empty-elt ns-0 ns-subject sitedir-ltr page-Accueil rootpage-Accueil skin--responsive skin-monobook"><div id="globalWrapper"> <div id="column-content"> <div class="mw-body" id="content" role="main"> <a id="top"></a> <div id="siteNotice"></div> <div class="mw-indicators"> </div> <h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Accueil</span></h1> <div class="monobook-body" id="bodyContent"> <div id="siteSub">De Gruntnetwork</div> <div id="contentSub"></div> <div id="jump-to-nav"></div><a href="#column-one" class="mw-jump-link">Aller à la navigation</a><a href="#searchInput" class="mw-jump-link">Aller à la recherche</a> <div class="mw-body-content mw-content-ltr" id="mw-content-text" dir="ltr" lang="fr"><div class="mw-parser-output"><div class="toc" id="toc" role="navigation" aria-labelledby="mw-toc-heading"><input class="toctogglecheckbox" id="toctogglecheckbox" role="button" style="display:none" type="checkbox"><div class="toctitle" dir="ltr" lang="fr"><h2 id="mw-toc-heading">Sommaire</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#gruntnetwork"><span class="tocnumber">1</span> <span class="toctext">gruntnetwork</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Nouveau_Développeur_?"><span class="tocnumber">2</span> <span class="toctext">Nouveau Développeur ?</span></a></li> <li class="toclevel-1"><a href="#S'inscrire"><span class="tocnumber">3</span> <span class="toctext">S'inscrire</span></a></li> <li class="toclevel-1"><a href="#À_lire"><span class="tocnumber">4</span> <span class="toctext">À lire</span></a></li> </ul> </div> <h2><span class="mw-headline" id="gruntnetwork">gruntnetwork</span></h2> <p>gruntnetwork est un système d'exploitation sous licence Affero GPL. Actuellement il est en phase de développement, dans le cadre d'un projet pédagogique à l'Université Montpellier 2. </p> <h2><span id="Nouveau_D.C3.A9veloppeur_.3F"></span><span class="mw-headline" id="Nouveau_Développeur_?">Nouveau Développeur ?</span></h2> <h2><span id="S.27inscrire"></span><span class="mw-headline" id="S'inscrire">S'inscrire</span></h2> <ul><li>Créez-vous un compte sur <a href="http://tuxfamily.org/fr/subscribe" class="external text" rel="nofollow">TuxFmaily</a> et adhérez au projet gruntnetwork</li> <li>Créez-vous un compte sur le <a href="http://wiki.gruntnetwork.com/index.php5?title=Special:Connexion&type=signup&returnto=Nouveau_D%C3%A9veloppeur" class="external text" rel="nofollow">wiki</a></li> <li>Créez-vous un compte sur le <a href="http://tracker.gruntnetwork.com/index.php?do=register" class="external text" rel="nofollow">tracker</a></li></ul> <h2><span id=".C3.80_lire"></span><span class="mw-headline" id="À_lire">À lire</span></h2> <ul><li><a href="./Prérequis.html" title="Prérequis">Prérequis</a> : Un peu de lecture pour les vacances. Si vous ne savez rien sur les sujets listés dans cette page, vous risquez d'être à la traîne.</li> <li><a href="./Conventions.html" title="Conventions">Conventions</a> : À respecter, pour un code homogène. Si vous avez quoi que ce soit à redire dessus, faites-le vite, avant qu'on ait des centaines de lignes à reformater :)</li> <li><a href="./Environnement_de_programmation.html" title="Environnement de programmation">Environnement de programmation</a> : Avec quoi on travaille (Emacs ou Vim + gcc + qemu ou bochs).</li> <li><a href="http://tracker.gruntnetwork.com/roadmap" class="external text" rel="nofollow">Feuille de route</a> : Qui fait quoi, Quand, dans Quel ordre.</li> <li><a href="./Liens.html" title="Liens">Liens</a> : Quand vous ne saurez plus comment faire un truc en assembleur :)</li></ul> <p><a href="./Notes.html" title="Notes">notes</a> </p> </div> <div class="printfooter" data-nosnippet="">Récupérée de « <a href="http://localhost/mediawiki/index.php?title=Accueil&oldid=26" dir="ltr">http://localhost/mediawiki/index.php?title=Accueil&oldid=26</a> »</div></div> <div class="catlinks catlinks-allhidden" id="catlinks" data-mw="interface"></div> <div class="visualClear"></div> </div> </div> <div class="visualClear"></div> </div> <div id="column-one"> <div class="portlet" id="p-logo" role="banner"> <a href="./Accueil.html" class="mw-wiki-logo"></a> </div> <div id="sidebar"> <div class="portlet mw-portlet mw-portlet-navigation" id="p-navigation" role="navigation" aria-labelledby="p-navigation-label"> <h3 id="p-navigation-label">Navigation</h3> <div class="pBody"> <ul><li class="mw-list-item" id="n-mainpage-description"><a href="./Accueil.html" title="Accueil général [z]" accesskey="z">Accueil</a></li><li class="mw-list-item" id="n-randompage"><a title="Afficher une page au hasard [x]" accesskey="x">Page au hasard</a></li><li class="mw-list-item" id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">Aide concernant MediaWiki</a></li></ul> </div> </div> <div class="portlet mw-portlet mw-portlet-tb" id="p-tb" role="navigation" aria-labelledby="p-tb-label"> <h3 id="p-tb-label">Outils</h3> <div class="pBody"> <ul><li class="mw-list-item" id="t-allpages"><a href="./Toutes_les_pages.html" title="Toutes les pages [q]" accesskey="q" rel="alternate">Toutes les pages</a></li><li class="mw-list-item" id="t-print"><a href="javascript:print();" title="Version imprimable de cette page [p]" accesskey="p" rel="alternate">Version imprimable</a></li></ul> </div> </div> </div> <a href="#sidebar" class="menu-toggle" id="sidebar-toggle" title="Aller à la navigation"></a> </div> <div class="visualClear"></div> <div class="mw-footer" id="footer" role="contentinfo"> <div class="footer-icons" id="f-copyrightico"> <a href="https://creativecommons.org/publicdomain/zero/1.0/"><img alt="Creative Commons Zero (domaine public)" height="31" loading="lazy" src="./../I/cc-0.png" width="88"></a> </div> <div class="footer-icons" id="f-poweredbyico"> <a href="https://www.mediawiki.org/"><img alt="Powered by MediaWiki" height="31" loading="lazy" src="./../I/poweredby_mediawiki_88x31.png" width="88"></a> </div> <ul id="f-list"> <li id="lastmod"> La dernière modification de cette page a été faite le 21 juin 2011 à 12:25.</li><li id="copyright">Le contenu est disponible sous licence <a href="https://creativecommons.org/publicdomain/zero/1.0/" class="external" rel="nofollow">Creative Commons Zero (domaine public)</a> sauf mention contraire.</li> </ul> </div> </div> </body> <script id="random-script"> (function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); </script> </body></html> +\ No newline at end of file diff --git a/download-website-script/localhost/metadata.db b/download-website-script/localhost/metadata.db Binary files differ. diff --git a/download-website-script/stub.css b/download-website-script/stub.css @@ -0,0 +1,77 @@ +/* + * + * stub.css + * + */ +body#zim { + font-size: 100%; + width: inherit; + padding: inherit; + position: inherit; + margin: inherit; +/* background-image: none;*/ +} +#zim #content { +/* margin: 0px; + padding: 2px;*/ +} +#zim .mw-body-content { + line-height: 1.6; + font-size: 0.875em; +} +#zim .mw-body-content p { + line-height: inherit; + margin: 0.5em 0; +} +/* +#zim #toc, +#zim .article-status, +#zim .thumbcaption .magnify, +#zim .editsection, +#zim .mw-editsection +{ + display: none; +} +*/ +#zim table.wikitable, table.nicetable { + margin-right: 0; + margin-left: 0; +} + +/* for en.wikivoyage.org */ +/* supress Kartographer chartlet */ +/* +.thumbinner a[data-lon] { + display: none; +} +*/ +#zim #geoCoord { + top: -20px; +} +#geoCoord img { + display: none; +} +#zim #mw-customtoggle-mapToggle { + display: none; +} + +/* Wikia */ +body#zim .WikiaMainContent { + width: inherit; +} +body#zim .WikiaPageBackground { + width: inherit; + height: inherit; + position: inherit; + left: inherit; + top: inherit; + +} + +html body pre { + padding: 1em; + border: 1px dashed #2f6fab; + color: black; + background-color: #f9f9f9; + line-height: 1.1em; +} diff --git a/download-website-script/template.html b/download-website-script/template.html @@ -0,0 +1,44 @@ +<!doctype html> +<html dir="ltr" lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<title></title> +<link id="layout-css" rel="stylesheet" href="../-/zim.css"> +<!-- +<%B/<%title%>%> +--> +</head> +<body id="zim" class="WikiaPage no-js mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject skin-vector action-view"> +<!--<div id="zim-content" class="mw-body WikiaPageBackground" role="main">--> +<div id="bodyContent" class="mw-body-content"> +<!-- +<%A/<%title%>%> +--> +</div> +<!--</div>--> +<script id="random-script"> +(function() { + var pages = [ + 'Accueil', + 'Affichage_Graphique', + 'Conventions', + 'Drivers/mode_reel.h:int86', + 'Environnement_de_programmation', + 'GRUB', + 'Liens', + 'Langage', + 'Notes', + 'Nouveau_Développeur', + 'Prérequis', + 'Test_fonctionC', + ]; + var dd = ''; + for (var i = document.querySelector('head title').innerText.split('/').length - 1; i > 0; i--) { + dd += '../' + } + var rnd = Math.floor(Math.random() * pages.length); + document.querySelector('#n-randompage a').setAttribute('href', dd + pages[rnd] + '.html'); +})(); +</script> +</body> +</html> diff --git a/zimmer b/zimmer @@ -0,0 +1 @@ +Subproject commit bc54d8f2999ab27d908c64be1ee41e955afa430c