Eléphant du PHP |
422 Messages
05 nov. 2008, 18:34
@Zeus,
Ca tourne au pinaillage.
Oui, certains logiciels sous Windows lisent des fichiers textes avec juste un LF alors que ce n'est pas le standard Windows. Comme de la même manière, certains logiciels sous Unix lisent des fichiers textes avec CR/LF alors que ce n'est pas le standard Unix (c.a.d sans rajouter de ligne vide).
D'autre part il n'y a pas de jugement de valeur à avoir, en particulier sur la "bêtise" supposée d'un éditeur et sur la pré-supposition (fausse) qu'il est le seul à respecter le standard. Ce n'est pas toi qui a sorti l'exemple du textarea, mais le coup de "il n'y a que IE..." suivi de "je n'ai pas testé les autres browers", je trouve ça un peu léger.
A ce propos, je confesse un mea culpa
le comportement de Safari est un peu plus compliqué :
au départ vous avez 0 caractères
A) vous tapez retour-chariot : il ajoute 2 caractères LF LF
B) vous supprimez le retour-chariot : il reste 1 caractère LF
C) vous appuyez sur 'A' : il y a 1 caractère A (où est passé le LF ?)
D) vous appuyez sur retour-chariot : il y a 3 caractères (A LF LF)
E) vous supprimez le retour-chariot : il y a 2 caractères (A LF)
F) vous appuyez sur 'A' : il y a deux caractères (A A)
G) vous supprimez les deux A : il reste 0 caractère
H) vous tapez retour-chariot : il y a un seul caractère LF
Donc la situation A et la situation H similaires (un textarea vide) avec un compte de caractères à 0 amènent à deux situations différentes après avoir tapé sur la touche Retour : 1 ou 2 caractères LF insérés.
Il n'y a peut-être que Notepad qui suive scrupuleusement ce standard, mais comme c'est l'éditeur de texte installé par défaut, il est peut-être bon de le prendre en compte, non ? Je ne vois donc pas pourquoi il est nécessaire d'introduire dans le débat des outils inconnus par la plupart des utilisateurs non-informaticiens.
Le seul sens de mon intervention était que si on doit générer un texte pour un utilisateur sous Windows, il est nécessaire de prévoir un CR/LF pour les passages à la ligne.