Ceci est une ancienne révision du document !
Documentation accessible
Pour une documentation technique accessible à tous
Une documentation — à fortiori publiée sur Internet — se doit d’être accessible à tous.
Que signifie ce « tous » ? Tout le monde n'a-t-il pas potentiellement accès à Internet, la maîtrise des outils mise à part ?
On serait tenté de répondre « oui » et de passer rapidement à autre chose, mais rien n'est simple en ce bas monde !
Qu'est-ce que la fracture numérique ?
On nomme « fracture numérique » cette limite qui traverse les populations de continents, de pays, de régions et de conditions économiques diverses qui favorise ou entrave par différents facteurs aggravants l'accès au réseau mondial.
Quels peuvent en être les facteurs déclenchants ou aggravants
Si le handicap de la dyslexie ou celui de la dysorthographie ont été abordés, dans la page « Correction Orthographique » celui de la cécité dans un monde essentiellement constitué d’images et de sons est rarement pris en compte dans un médium axé prioritairement sur la vision.
Quels sont les outils et les stratégies de compensation des différents handicaps ?
Qu'est-ce que la norme Accessiweb ?
Bien que la dysorthographie soit un handicap qui explique l'existence même de la page « Correction Orthographique », la norme Accessiweb promue par l'association BrailleNet n’intègre pas cette notion dans les besoins d'accessibilité à l'Internet sans doute parce que l'existence de correcteurs orthographiques est aussi vieille que la conception des traitements de texte elle-même.
La norme Accessiweb tente de définir les règles de développement, programmation des outils permettant à des personnes malvoyantes, aveugles ou encore sourdes, malentendantes d'accéder — avec l'aide de périphériques spécifiques et d'instructions incluses dans les pages — à la fabuleuse bibliothèque de ressources mondiale que représente aujourd'hui Internet.
Quels sont les outils de compensation des différents handicaps ?
- Le décodeur CEEFAX et le sous-titrage télétexte1) des émissions télévisées, films et vidéos également diffusés sur le net.
- Le clavier-transcripteur qui décrypte le texte d'une page Web puis le transmet à un synthétiseur vocal.
Afin qu'une personne aveugle puisse accéder à l’information textuelle, mais aussi visuelle contenue dans le code des pages sous forme de balises de code.
Où se trouvent ces balises de code dans cette documentation ?
De telles balises sont dites « descriptives » car elles informent donc tactilement et/ou vocalement l'internaute sur la nature des images, la nature des liens internet disponibles sur la page et susceptibles de faciliter l'accès à l'information.
Par exemple, le lien internet http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224 pointant vers la discussion du forum consacré au logiciel Linux MakeMKV sera épelé tel quel à l'internaute ; le moins que l'on puisse dire c'est que ce dernier aura toutes les peines du monde à comprendre ce qui se cache derrière cette adresse Internet pour le moins hermétique !
Le travail de conformation Accessiweb consistera alors — j'allais dire tout simplement — à inclure une balise descriptive à la fin des liens iconographiques ou des liens vers d'autres pages.
Plutôt que d'écrire :
[[http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224]] { pointant vers la discussion du forum consacré au logiciel Linux MakeMKV }
— le rédacteur de la page omettra la plupart du temps de décrire son lien — ce qui, soit dit en passant, pénalisera tout le monde !
Ce qui se traduit à l'écran par :
http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224 {…}
On préférera écrire ;
[[http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224|discussion du forum consacré au logiciel Linux MakeMKV]] (ne pas oublier la barre verticale « | » obtenue grâce à la combinaison de touches <Alt-Gr>-<6>) ;
celle-ci vient s'insérer entre la fin de l’adresse internet et le début du texte de description.
Ce qui se traduit par le texte suivant dans la page :
discussion du forum consacré au logiciel Linux MakeMKV.
Force est de constater que cette méthode est plus claire qu'un ici ou un là en description !
Comment compenser le handicap induit par des problèmes de lecture à l'écran pour les malvoyants ?
La norme Accessiweb définit et encourage l'utilisation des feuilles de styles CSS — Cascaded Style Sheets { feuilles de styles en cascade } — pour la création de pages accessibles aux personnes malvoyantes.
Les feuilles de styles, semblables à celles des traitements de textes récents, définissent — entre-autres — le choix de la taille de la police d'affichage du texte ainsi que le choix de différents modèles de couleurs afin d'ajuster le contraste entre différents éléments de la page afin de faciliter la lecture rapide.
Les contraintes de formatage d'une documentation Wiki
Le formatage Wiki ne contient pas de feuilles de styles CSS. Ce qui interdit de changer la taille même du texte, obligeant à structurer visuellement les idées développées dans la page.
Une documentation technique contenant par exemple un ou plusieurs champs de code multi-lignes — listage d'un renvoi de commande à l'écran — au texte noir sur fond gris pose des problèmes de contraste ; ce dernier limitant gravement la lecture.
Quels peuvent-être les stratégies de compensation du handicap appliquées à cette documentation ?
Le formatage de la page et du texte
1- On favorisera le saut de ligne forcé (deux barres obliques arrière suivies d'un espace, obtenues par la combinaison de touches <Alt-Gr>-<8>) afin de créer de courts paragraphes de texte sans saut de ligne, facilitant la lecture transversale rapide du contenu, donc le repérage des idées directrices accessoirement soulignées.
2- Une autre façon d'aérer le texte consiste à utiliser les listes de puces afin de décomposer les différentes étapes d'un processus le plus souvent technique.
3- On gardera à l'esprit l'adage suivant : « Une idée claire s'énonce clairement » ;
autrement dit si vous pondez un texte de procédure d'un seul bloc sans en démarquer visuellement les points importants, votre explication ne donnera pas entière satisfaction.
Personne n'a envie de se coltiner 30 lignes de texte et de code en un ou deux blocs indigestes parce que le rédacteur à un poil dans la main ou bien qu'il considère qu'il appartient à la personne malvoyante de déchiffrer son message.
Comment traiter le problème du contraste en termes de formatage du contenu
1- Le typage du code :
les balises <code> et <file> peuvent être typées en leur ajoutant un argument déclaratif du type de code. S'agissant majoritairement de code Bash, on notera donc <code bash> ou bien <file bash>.
Il existe une longue liste d'arguments décrivant le plus souvent le type de langage utilisé pour coder2).
2- Le formatage du contenu des champs <code> et <file> non typés :
- Le rendu visuel du champs <file> ne pose — à priori — aucun problème question affichage à l'écran, le contenu étant affiché « fonte noire » sur « page blanche ».
exemple de ligne de code entre des balises <file>
- Le rendu visuel du champs <code> pose — par contre — des problèmes de contraste très gênants lorsqu'il s'agira de symboliser par exemple le contenu multi-lignes de ce que renvoie une commande spécifique.
exemple de ligne de code entre des balises <code>
3- Une solution consisterait — par exemple — à replacer la balise <code> par la combinaison <box><file> { lignes de commandes formatées } </file><box> pour les pages de code plus longues.
Une illustration du principe est préférable à un long discours. Ci-dessous, sont symbolisés les renvois de commandes :
- à l'aide de la balise <code> non typée :
La commandelinuxlogo -L list
Available Built-in Logos: Num Type Ascii Name Description 1 Classic Yes aix AIX Logo 2 Classic Yes bsd FreeBSD Logo 3 Banner Yes bsd_banner FreeBSD Logo 4 Classic Yes irix Irix Logo 5 Classic Yes openbsd OpenBSD Logo 6 Banner Yes openbsd_banner OpenBSD Logo 7 Banner Yes solaris The Default Banner Logos 8 Banner Yes banner-simp Simplified Banner Logo 9 Banner Yes banner The Default Banner Logo 10 Classic Yes classic-nodots The Classic Logo, No Periods 11 Classic Yes classic-simp Classic No Dots Or Letters 12 Classic Yes classic The Default Classic Logo 13 Classic Yes core Core Linux Logo 14 Banner Yes debian_banner_2 Debian Banner 2 15 Banner Yes debian_banner Debian Banner (white) 16 Classic Yes debian_old Debian Old Penguin Logos 17 Classic Yes debian Debian Swirl Logos 18 Classic Yes gnu_linux Classic GNU/Linux 19 Banner Yes mandrake_banner Mandrake™ Linux Banner 20 Banner Yes mandrake Mandrakelinux™ Banner 21 Banner Yes mandriva Mandriva™ Linux Banner 22 Banner Yes pld PLD Linux banner 23 Classic Yes raspi An ASCII Raspberry Pi logo 24 Banner Yes redhat RedHat Banner (white) 25 Banner Yes slackware Slackware Logo 26 Banner Yes sme SME Server Banner Logo 27 Banner Yes sourcemage_ban Source Mage GNU/Linux banner 28 Banner Yes sourcemage Source Mage GNU/Linux large 29 Banner Yes suse SUSE Logo 30 Banner Yes ubuntu Ubuntu Logo
- à l'aide de la combinaison <box><file> { lignes de commandes formatées } </file><box>.
commande linuxlogo -L list
Available Built-in Logos: Num Type Ascii Name Description 1 Classic Yes aix AIX Logo 2 Classic Yes bsd FreeBSD Logo 3 Banner Yes bsd_banner FreeBSD Logo 4 Classic Yes irix Irix Logo 5 Classic Yes openbsd OpenBSD Logo 6 Banner Yes openbsd_banner OpenBSD Logo 7 Banner Yes solaris The Default Banner Logos 8 Banner Yes banner-simp Simplified Banner Logo 9 Banner Yes banner The Default Banner Logo 10 Classic Yes classic-nodots The Classic Logo, No Periods 11 Classic Yes classic-simp Classic No Dots Or Letters 12 Classic Yes classic The Default Classic Logo 13 Classic Yes core Core Linux Logo 14 Banner Yes debian_banner_2 Debian Banner 2 15 Banner Yes debian_banner Debian Banner (white) 16 Classic Yes debian_old Debian Old Penguin Logos 17 Classic Yes debian Debian Swirl Logos 18 Classic Yes gnu_linux Classic GNU/Linux 19 Banner Yes mandrake_banner Mandrake™ Linux Banner 20 Banner Yes mandrake Mandrakelinux™ Banner 21 Banner Yes mandriva Mandriva™ Linux Banner 22 Banner Yes pld PLD Linux banner 23 Classic Yes raspi An ASCII Raspberry Pi logo 24 Banner Yes redhat RedHat Banner (white) 25 Banner Yes slackware Slackware Logo 26 Banner Yes sme SME Server Banner Logo 27 Banner Yes sourcemage_ban Source Mage GNU/Linux banner 28 Banner Yes sourcemage Source Mage GNU/Linux large 29 Banner Yes suse SUSE Logo 30 Banner Yes ubuntu Ubuntu Logo
Terminal
L'affichage ci dessus est obtenu à l'aide du code Wiki <box orange 60%|commande linuxlogo -L list><file> { lignes de commandes formatées } </file></box |Terminal>
- d'augmenter le contraste du contenu et
- symbolise l'affichage du Terminal en y ajoutant un cadre orange.
Le rappel de la commande bash dont il est question améliore la compréhension pour une personne aveugle utilisant un transcripteur Braille.
Cette solution améliorant pourtant grandement la lisibilité pour les personnes malvoyantes n'a pas été retenue par les administrateurs de cette documentation.
Il est pourtant rappelé que :
Pages connexes
La page dédiée à l'accessibilité : L’accessibilité est comprise ici dans le sens d'interface et de logiciels facilitant l'ergonomie et l'accessibilité des personnes à mobilité réduite.
La correction orthographique : qui traite plus spécifiquement de la dyslexie et de la dysorthographie
Date de création : 11 novembre 2017
Auteur : eagle08.
Autres contributeurs :
Il utilise le Generic Syntax Highlighter GeSHi – par conséquent, n'importe quel langage reconnu par GeSHi est supporté.
La syntaxe est la même que dans le bloc de code dans la section précédente, mais cette fois, le nom du langage utilisé est insérée dans la balise. Ex :
<code java>
. Les identificateurs de langage suivants sont actuellement reconnus :
Liste exhaustive des code de surlignage de la synthaxe
Forth; noté : 4cs, abap, actionscript-french, actionscript, actionscript3, ada, apache, applescript **, Assembleur; code : asm, Active Server Pages; noté : asp*, AutoHotkey; noté : autohotkey*, AutoIt; noté : autoit*, AviSynth; noté : avisynth*, awk, bash, Basic4GL; noté basic4gl, Brainfuck noté : bf, BibTeX; noté : bibtex, Blitz Basic; noté : blitzbasic*, Forme de Backus-Naur; noté : bnf, boo, C (langage); noté : c, CMAC; noté : c_mac, CAD DCL; noté : caddcl, AutoLISP ou CADLISP; noté : cadlisp, Grammaire non contextuelle; noté : cfdg, ColdFusion Markup Language; noté : cfm, Common Intermediate Language; noté : cil*, clojure, cmake, cobol, C++; noté : cpp, Cute C++; noté : cpp-qt, C#; noté: csharp*, Feuilles de style en cascade; noté : css, .cue; noté : cuesheet, D (langage); noté : d, Digital Combat Simulator; noté : dcs, Delphi (langage); noté : delphi, diff, Hypertext Markup Language; noté : div, DOS; noté : dos, DOT (langage); noté : dot, Eiffel (langage); noté : eiffel, MJML (language); noté : email, Erlang (langage); noté : erlang, XSL-FO; noté : fo, fortran, freebasic, F Sharp (programming language); noté : fsharp, gambas, 4GL; noté : genero, GNU Debugger; noté : gdb, OpenGL Shading Language; noté : glsl, gml, gnuplot, groovy, GNU gettext; noté : gettext, haskell, HQ9+; noté : hq9plus, html, idl, Fichier INI; noté : ini, Inno Setup; noté : inno, intercal, Io (langage); noté : io, java5, java, javascript, jquery, KiXtart; noté : kixtart, Klone C; noté : klonec, Klone C++; noté : klonecpp, latex, lisp, Locomotive BASIC; noté : locobasic, logtalk, lolcode, Lotus Formula Language; noté : lotusformulas, lotusscript, Lazy initialization; noté : lscript, Linden Scripting Language; noté : lsl2, lua, Motorola 68000; noté : m68k, make, mapbasic, Matrix Lab; noté : matlab, MIRC Script Language; noté : mirc, Modula-3; noté : modula3, Compilateur MMIX; noté : mmix, MPLAB; noté : mpasm, Macromedia XML; noté : mxml, MySQL; noté : mysql, newLISP; noté : newlisp, Nullsoft Scriptable Install System; noté : nsis, oberon2, Objective-C; noté : objc, Objective CameL; noté : ocaml-brief, Objective CameL; noté : ocaml, StarOffice Basic; noté : oobas, Oracle Database; noté : oracle8, oracle11, pascal, perl, perl6, per, php-brief, php, pike, Microcontroleurs Pic; noté : pic16, Adobe Pixel Bender; noté : pixelbender, PL/SQL; noté : plsql, POV-Ray; noté : povray, powerbuilder, powershell, progress, prolog, properties, providex, purebasic, python, qbasic, rails, rebol, reg, robots, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xml, xorg_conf, Microsoft Dynamics AX; X++ noté : xpp*, Zilog Z80; noté : z80
* : logiciel Windows™.
** : logiciel Apple™