[SeaMonkey] Copier-coller une URL avec caractères non-ASCII

Le
Olivier Miakinen
Bonjour,

Prenons comme exemple l'URL suivante :
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

Que ce soit dans Firefox 3.6.3 ou dans SeaMonkey 2.0.6 (sur Windows),
cette URL se retrouve décodée dans la zone de saisie :
http://fr.wikipedia.org/wiki/Hypoténuse

Si je fais un copier-coller depuis Firefox, par exemple pour l'écrire
dans un article sur usenet, je retrouve l'URL d'origine :
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

Mais avec SeaMonkey, il m'est impossible d'obtenir l'URL avec %C3%A9, je
n'obtiens que celle avec é, qui risque de poser des problèmes à mes
lecteurs, selon leur nouvelleur ou surtout leur navigateur. Est-ce que
c'est corrigeable par une config spécifique, ou bien dois-je attendre
une correction de bug dans SeaMonkey ?

Cordialement,
--
Olivier Miakinen
Vidéos High-Tech et Jeu Vidéo
  • Skype lance le partage de liens pour contacter ses amis ou sa famille n'ayant pas de ...
  • Capcom a diffusé de nouveaux extraits de son prochain survival horror à venir sur PC et ...
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Williamhoustra
Le #22539841
"Olivier Miakinen" de discussion : 4c8105b4$
Bonjour,

Prenons comme exemple l'URL suivante :
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

Que ce soit dans Firefox 3.6.3 ou dans SeaMonkey 2.0.6 (sur Windows),
cette URL se retrouve décodée dans la zone de saisie :
http://fr.wikipedia.org/wiki/Hypoténuse



Je ne sais pas pourquoi les navigateurs s'acharnent à mettre les
minuscules accentuées sous forme biscornouille alors que l'UTF8 est acceptée
(on peut même mettre une URL avec des caractères chinois). Pour ne pas
froisser de vieux routeurs Unix qui ne causent que le ricain en ASCII 7 bits
?
Olivier Miakinen
Le #22541221
Bonjour,

Le 04/09/2010 11:52, Williamhoustra m'a répondu :

Je ne sais pas pourquoi les navigateurs s'acharnent à mettre les
minuscules accentuées sous forme biscornouille alors que l'UTF8 est acceptée



Ah ? Dans quelle version de HTTP ?


HTTP/1.1 dit ceci :

3.2.1 General Syntax
URIs in HTTP can be represented in absolute form or relative to some
known base URI [...] For definitive information on
URL syntax and semantics, see "Uniform Resource Identifiers (URI):
Generic Syntax and Semantics," RFC 2396 [42]
</>


Quant au RFC 2396 :

2. URI Characters and Escape Sequences
[...]
Octets are either represented directly by a character (using the US-
ASCII character for that octet [ASCII]) or by an escape encoding.
</>


Et aussi :

2.4. Escape Sequences
Data must be escaped if it does not have a representation using an
unreserved character; this includes data that does not correspond to
a printable character of the US-ASCII coded character set, or that
corresponds to any US-ASCII character that is disallowed, as
explained below.
</>


Pour être complet, voici la liste des « unreserved » :

unreserved = alphanum | mark
alphanum = alpha | digit
alpha = lowalpha | upalpha
lowalpha = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" |
"j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" |
"s" | "t" | "u" | "v" | "w" | "x" | "y" | "z"
upalpha = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" |
"J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" |
"S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z"
digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" |
"8" | "9"
mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"


Soit, pour résumer :

unreserved "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" |
"j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" |
"s" | "t" | "u" | "v" | "w" | "x" | "y" | "z" |
"A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" |
"J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" |
"S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z" |
"0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" |
"8" | "9" |
"-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"


(on peut même mettre une URL avec des caractères chinois).



Oui, bien sûr, mais en l'encodant.

Pour ne pas
froisser de vieux routeurs Unix qui ne causent que le ricain en ASCII 7 bits
?



Troll mis à part, personne n'a la réponse à ma question ?


Cordialement,
--
Olivier Miakinen
rm
Le #22541291
Le vendredi 3 septembre 2010 à 16:27, Olivier Miakinen a écrit :

Bonjour,



Salut Olivier,

Prenons comme exemple l'URL suivante :
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

Que ce soit dans Firefox 3.6.3 ou dans SeaMonkey 2.0.6 (sur Windows),
cette URL se retrouve décodée dans la zone de saisie :
http://fr.wikipedia.org/wiki/Hypoténuse

Si je fais un copier-coller depuis Firefox, par exemple pour l'écrire
dans un article sur usenet, je retrouve l'URL d'origine :
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

Mais avec SeaMonkey, il m'est impossible d'obtenir l'URL avec %C3%A9, je
n'obtiens que celle avec é, qui risque de poser des problèmes à mes
lecteurs, selon leur nouvelleur ou surtout leur navigateur. Est-ce que
c'est corrigeable par une config spécifique, ou bien dois-je attendre
une correction de bug dans SeaMonkey ?



Opera réagit de la même manière que SeaMonkey. Mais il est possible
d'interdire l'encodage UTF-8 dans les URL en décochant l'option
opera:config#Network|UTF8EscapeURLs...
Je sais pas si cela t'aidera mais tu pourrais chercher "utf" par exemple
dans l'about:config de ton SeaMonkey et jouer avec les quelques entrées
trouvées pour voir si elles peuvent correspondre au comportement que tu
attends.

@+
--
rm
Olivier Miakinen
Le #22541521
Bonjour rm,

Le 04/09/2010 23:42, rm a écrit :

Opera réagit de la même manière que SeaMonkey. Mais il est possible
d'interdire l'encodage UTF-8 dans les URL en décochant l'option
opera:config#Network|UTF8EscapeURLs...
Je sais pas si cela t'aidera mais tu pourrais chercher "utf" par exemple
dans l'about:config de ton SeaMonkey et jouer avec les quelques entrées
trouvées pour voir si elles peuvent correspondre au comportement que tu
attends.



Je pense que ça va marcher, en effet, grâce à ton aide...

Là je suis sur Linux avec SeaMonkey 1.1.17, qui m'affiche au contraire
l'URL avec %C3%A9. Mais sur Firefox (3.6.8) j'arrive à reproduire le
comportement de mon SeaMonkey 2.0.6 Windows avec le paramètre suivant :

network.standard-url.escape-utf8 = true
http://fr.wikipedia.org/wiki/Hypot%C3%A9nuse

network.standard-url.escape-utf8 = false
http://fr.wikipedia.org/wiki/Hypoténuse

Je n'ai plus qu'à essayer ça lundi prochain sur le Windows. Merci !

--
Olivier Miakinen
Publicité
Poster une réponse
Anonyme