function construitListe(window) { var document = window.document; document.creeElement = document.createElement; var vrais_mots = [ {anglais: 'dangling pointer', francais: 'pointeur fou'}, {anglais: 'URL' , francais: 'adresse réticulaire'}, {anglais: 'GC' , francais: 'glaneur de cellule'}, {anglais: 'pipeline' , francais: 'bitoduc'}, {anglais: 'TL;DR (Too Long Didn\'t Read)' , francais: 'TLAL (Trop Long A Lire)'}, {anglais: 'framework', francais: 'cadriciel'}, {anglais: 'shareware', francais: 'partagiciel'}, {anglais: 'freeware', francais: 'gratuiciel'}, {anglais: 'spam', francais: 'polluriel, pourriel'}, {anglais: 'spammeur', francais: 'arroseur publicitaire'}, {anglais: 'CDROM', francais: 'cédérom'}, {anglais: 'e-mail', francais: 'courriel'}, {anglais: 'anti-pattern', francais: 'anti-patron'}, {anglais: 'callback function', francais: 'fonction de rappel'}, {anglais: 'stack overflow', francais: 'dépassement de pile'}, {anglais: 'flag', francais: 'fanion'}, {anglais: 'core dump', francais: 'vidage de mémoire'}, {anglais: 'spinlock', francais: 'tourniquet'}, {anglais: 'polling', francais: 'attente active'}, {anglais: 'debugger', francais: 'dévermineur'}, {anglais: 'god object', francais: 'objet omniscient'}, {anglais: 'flame', francais: 'propos inflammatoire'}, {anglais: 'angle brackets', francais: 'chevrons'}, {anglais: 'home row', francais: 'touche de repos'}, {anglais: 'number sign', francais: 'croisillon'}, {anglais: 'slash', francais: 'barre oblique'}, {anglais: 'backslash', francais: 'barre oblique inversée'}, {anglais: 'ampersand', francais: 'esperluette'}, {anglais: 'backport', francais: 'rétroportage'}, {anglais: 'rolling release', francais: 'publication continue'}, {anglais: 'checksum', francais: 'somme de contrôle'}, {anglais: 'repositery', francais: 'dépôt'}, {anglais: 'version control system', francais: 'logiciel de gestion de versions'}, {anglais: 'lazy evaluation', francais: 'évaluation paresseuse'}, {anglais: 'upload', francais: 'téléversement'}, {anglais: 'download', francais: 'téléchargement'}, {anglais: 'patch', francais: 'rustine logicielle'}, {anglais: 'endianness', francais: 'boutisme'}, {anglais: 'big-endian', francais: 'grand boutien'}, {anglais: 'little-endian', francais: 'petit boutien'}, {anglais: 'plugin', francais: 'greffon'}, {anglais: 'online chat', francais: 'clavardage'}, {anglais: 'webcam', francais: 'cybercaméra'}, {anglais: 'podcasting', francais: 'balladodiffusion'}, {anglais: 'phishing', francais: 'hameçonnage'}, {anglais: 'bloatware', francais: 'boufficiel'}, {anglais: 'spyware', francais: 'espiogiciel'}, {anglais: 'flood', francais: 'matraquage'}, {anglais: 'glue code', francais: 'code ciment'}, {anglais: 'proxy', francais: 'mandataire'}, {anglais: 'reverse proxy', francais: 'mandataire inverse'}, {anglais: 'tutorial', francais: 'didacticiel'}, {anglais: 'browser', francais: 'butineur'}, {anglais: 'BBS (Bulletin Board System)', francais: 'babillard électronique'}, {anglais: 'applet', francais: 'appliquette'}, {anglais: 'cloud computing', francais: 'infonuagique'}, {anglais: 'overclocking', francais: 'surcadençage'}, {anglais: 'double word', francais: 'trente-deuzet'}, {anglais: 'byte', francais: 'octet'}, {anglais: 'malware', francais: 'maliciel'}, {anglais: 'namespace', francais: 'espace de noms'}, {anglais: 'stylesheet (CSS)', francais: 'feuille de style'} ]; var faux_mots = [ {anglais: 'branch merging', francais: 'fusion de branches'}, {anglais: 'pull-request', francais: 'fusiodemande'}, {anglais: 'NIH (Not Invented Here)', francais: 'PII (Pas Inventé Ici)'}, {anglais: 'RTFM (Read The Fucking Manual)', francais: 'LPDM (Lis le Putain De Manuel)'}, {anglais: 'DRY (Don\'t Repeat Yourself)', francais: 'NTRP (Ne Te Répète Pas)'}, {anglais: 'hashtag', francais: 'mot-dièse (ou diestiquette)'}, {anglais: 'tweet', francais: 'gazouilli'} ]; function trouveElement(id) { return document.getElementById(id); } function cache(e) { e.style.visibility = 'hidden'; } function montre(e) { e.style.visibility = 'visible'; } var tous_les_mots = vrais_mots.concat(faux_mots); var i; var noeudFRversANG = trouveElement('francais_vers_anglais'); var noeudANGversFR = trouveElement('anglais_vers_francais'); var lettresFRversANG = new Array(26); var lettresANGversFR = new Array(26); var noeud; function enleveLesAccents(s) { s = s.replace("é", "e"); return s; } for (i = 0; i < 26; ++i) { var lettre = String.fromCharCode(65 + i); lettresFRversANG[i] = noeud = document.creeElement('div'); noeud.className = 'groupe-lettre'; noeud.enfants = 0; var titre = document.creeElement('h3'); titre.innerHTML = lettre; noeud.appendChild(titre); lettresANGversFR[i] = noeud = document.creeElement('div'); noeud.className = 'groupe-lettre'; noeud.enfants = 0; titre = document.creeElement('h3'); titre.innerHTML = lettre; noeud.appendChild(titre); } // renvoie un nombre entre 0 et 25 function indiceDeLaPremiereLettre(m) { var motSansAccent = enleveLesAccents(m); var motEnMinuscule = motSansAccent.toLowerCase(); var resultat = motEnMinuscule.charCodeAt(0) - "a".charCodeAt(0); return resultat; } for (i = 0; i < tous_les_mots.length; ++i) { var mot = tous_les_mots[i]; noeud = document.createElement('div'); noeud.className = 'definition'; noeud.innerHTML = '· ' + mot.anglais + ' : ' + '' + mot.francais + ""; var indice = indiceDeLaPremiereLettre(mot.anglais); lettresANGversFR[indice].appendChild(noeud); lettresANGversFR[indice].enfants++; noeud = document.createElement('div'); noeud.className = 'definition'; noeud.innerHTML = mot.francais + ' → ' + mot.anglais; noeud.innerHTML = '· ' + mot.francais + ' : ' + '' + mot.anglais + ' '; indice = indiceDeLaPremiereLettre(mot.francais); lettresFRversANG[indice].appendChild(noeud); lettresFRversANG[indice].enfants++; } for (i = 0; i < 26; ++i) { noeud = lettresFRversANG[i]; if (noeud.enfants > 1) noeudFRversANG.appendChild(noeud); noeud = lettresANGversFR[i]; if (noeud.enfants > 1) noeudANGversFR.appendChild(noeud); } }