Bonjour,
Je viens de demander à Marijn Haverbeke s'il possédait les images
http://books.lifeleaks.com/eloquentjavascript/img/html.png et
http://books.lifeleaks.com/eloquentjavascript/img/tree.png dans un format vectoriel pour les franciser (et conserver un rendu de qualité).
Malheureusement il n'a plus ces images et me conseille de contacter l'auteur de "Smooth CoffeeScript" qui a refait ces images, cf
https://github.com/autotelicum/Smooth-CoffeeScript/tree/master/img qu'en pensez-vous ?
D'autre part, j'ai avancé la traduction du jeu de Sokoban au chap13. Je viens de m'apercevoir que les classes Point et Dictionnary, aussi que
les surcharges du type Object (Object.prototype.inherit,
etc...) définies au chap 8 sont incluses dans la console Javascript du chap 13, et utilisées
(au moins en partie) dans le Sokoban.
Il faut donc, pour rétablir la cohérence entre ces 2 chapitres,
remettre les méthodes de la classe Point du chap 8 en anglais, et
propager les modifs dans ce chapitre 8 (la simulation de terrarium).
Pandark n'ayant pas le temps de commenter ma todo-list avec mes interrogations, je remets ici une version actualisée. Désolé, c'est un peu brouillon, mais je n'ai pas non plus tout le temps que je voudrais pour rédiger.
Toutes les remarques sur cette liste et sur les commits (
https://github.com/Pandark/Eloquent-Javascript-translation/commits/master ) sont les bienvenues, même si vous n'avez pas le temps de corriger vous-même !
Maxime
Tous les chapitres
* Quand on conserve un nom de fonction en anglais, traduit-on les noms
de ses paramètres et son corps ? c'est le cas de "require" au ch9 et de
"clone" au ch8
* Images PNG contenant du texte en anglais :
modifier le PNG, refaire l'image, demander à l'auteur de "Smooth CoffeeScript" ?
* ch8 et ch13, utilise "construct" par convention
pour désigner le constructeur d'une classe, ce constructeur étant appelé
par Object.prototype.create défini au ch8,
ne pas traduire
1. Introduction
* code francisé en totalité
2. Les bases du JavaScript : valeurs, variables et structures de contrôle
* "de type nombre (number)" ... pourquoi number entre parenthèses ?
à enlever
* catch22 en exemple de nom de variable,
traduire en attrape22 ? * "var answer"
à traduire * exemple et explications autour de "peutEtreNull" pas clair,
comparer avec original
3. Fonctions
* code francisé en totalité
* déclaration d'une fonction "ajouter"
(traduire "add" dans les chapitres suivants) 4. Structures de données : objets et tableaux
* "var set"
traduire ? * "var words"
à traduire * "function startsWith"
à traduire
* "function addToSet", "function removeFromSet"
à traduire * "function between"
à traduire * fonction sum alors qu'il est faite allusion à une fonction somme en ch1, "print(sum(serie(1, 10)));"
à traduire
* "var array = ["Ciel", "Terre", "Homme"];"
traduire "var tableau=" * "Né le "/"Mort le" → "Est né le"/"Décédé le" (uniformisation cadrage)
modifier dans le code et reporter dans le premier paragraphe du chapitre.
5. Gestion des erreurs
* fonction between (introduite en ch4)
à traduire * "Sasquatch" : nom d'un "monstre" américain
éventuellement remplacer par un autre nom de "monstre"
6. Programmation fonctionnelle
* function printArray
ne pas traduire * function forEach
ne pas traduire https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach
* function sum
à traduire * function negate
ne pas traduire * function reduce
ne pas traduire * function add
à traduire
* function countZeroes
traduire * function count
ne pas traduire * function equals
ne pas traduire * function map
ne pas traduire
* function tag
ne pas traduire * function op
ne pas traduire * function asArray
ne pas traduire * function partial
ne pas traduire
* function square
à traduire * function compose
ne pas traduire 7. Recherche
* function member
ne pas traduire * var Break
ne pas traduire
* function forEach
ne pas traduire * function any
ne pas traduire * function every
ne pas traduire * function flatten
ne pas traduire * function filter
ne pas traduire
* function minimise
ne pas traduire * function getProperty
ne pas traduire * function identity
ne pas traduire * var heap
??? 8. Programmation orientée objet
* function forEachIn
ne pas traduire * "var objet = {foo: "bar"};"
traduire foo et bar * "function Dictionary" et ses méthodes : store, lookup, contains et each
NE PAS TRADUIRE car repris dans la console du ch13
* Grille.prototype.each
ne pas traduire * Terrarium.prototype.toString :
ne pas traduire * function bind :
ne pas traduire * function method :
ne pas traduire
* Terrarium.prototype.step :
ne pas traduire * Point.prototype.toString :
ne pas traduire * Terrarium.prototype.start :
ne pas traduire * var printHere
ne pas traduire ?
* function clone :
ne pas traduire (le corps est traduit,
traduire le paramètre "object")
* Object.prototype.inherit
ne pas traduire * Object.prototype.method
ne pas traduire
* Object.prototype.create
ne pas traduire, cf
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Object/create
cependant ne fonctionne pas pareil qu'en ES5 (le Object.create en ES5 ressemble à la fonction clone du livre)
* Object.prototype.extend
ne pas traduire * var Produit, var ProduitDetaille, var PetitProduit, var Monstre, var MonstreDetaille, var paresseuxGeant,
methodes non traduites : construct, inspect, kick, take :
traduire, sauf "construct" faire attention car repris dans la console du chap13 * var lantern
traduire * var pencil
traduire
* Object.prototype.hasPrototype
ne pas traduire
* function mixInto
ne pas traduire * var deadMouse
traduire *
remettre en anglais les méthodes de la classe Point car repris dans la console du chap13
9. Modularité
* function require (paramètres et corps traduit)
* function provide
ne pas traduire
* dans "var HTML" ...
mettre "balise" au lieu de "tag" (uniformiser avec ch6 qui utilise "tag")
* function defaultTo
ne pas traduire 10. Expressions régulières
* code francisé en totalité
11. Programmation Web : un cours condensé
* "var encodé" :
enlever l'accent,
fait 12. Le modèle d'objet-document
* traduire la première image ?
* function isTextNode
* function isImage
* function asHTML
* var secondHeader
* var secondTitle
* var newImage
* function setNodeAttribute
* function dom
* var newParagraph
* var link
* function removeElement
* function makeTable
* Les chaines "Outer size: " et "Inner size: "
traduire,
fait
13. Évènements du navigateur
* function registerEventHandler
* function unregisterEventHandler
* function showEvent
* function reportClick,
chaines dans la fonction à traduire,
fait * function printKeyCode(event),
chaines dans la fonction à traduire,
fait
* function printCharacter,
chaines dans la fonction à traduire,
fait * function normaliseEvent
* function addHandler
* function removeHandler
* var blockQ
traduire
* jeu de sokoban traduit (y compris arrowKeyCode)
vérifier le bon fonctionnement du jeu, relire les explications traitant du jeu * var jsObject
traduire 14. Requêtes HTTP
* function makeHttpObject
* var request
??? * var catalog
traduire
* function evalJSON
* function serializeJSON
* function serializeArray
* function serializeObject
* function serializeString
* function simpleHttpRequest
appendice 1. Plus de structures de contrôle (obscures)
* code francisé en totalité
appendice 2. Tas binaires
* traduire la première image ? (root→racine)
* fonction binaryHeap et ses méthodes entièrement en anglais (commentaires en français)