Forum Linux.debian/ubuntu [SVN]PB caractères accentués et commit mail SVN

Posté par  .
Étiquettes : aucune
0
15
nov.
2006
Salut,

Lorsque j'effectue un commit avec SVN, un mail est envoyé sur un alias pour prévenir d'une nouvelle version. Le problème est que les caractères accentués ne passent pas dans le mail comme l'exemple suivant:


Log:
?\195?\169

Modified: Nouveau Document texte.txt
===================================================================
--- Nouveau Document texte.txt 2006-11-15 15:31:40 UTC (rev 23)
+++ Nouveau Document texte.txt 2006-11-15 15:32:52 UTC (rev 24)
@@ -1,4 +1,4 @@
-hgf����@fsdfsd���������fdgfds
+gfhgf����@fsdfsd���������fdgfds
ggfdgfsfdsfsdghhgfhfhjgdgdfgplop
to@����
tr


Comment résoudre ce problème ?
  • # Problème de locales ?

    Posté par  . Évalué à 2.

    Il semblerait (je me garderai bien d'affirmer quoi que ce soit à propos d'une machine à laquelle je n'ai aucun accès), que ce soit un problème de locales, non ?
    Visiblement, tu reçois des mails encodés en utf-8 ou 16, ou autres, alors que tu les lis en ISO-8859-1 ou ISO-8859-15.
    Faudrait peut-être creuser de ce côté là, non ?
    Probablement quelque chose à changer dans le /etc/profile ou dans un des fichiers de conf du système.
    A faire confirmer par quelqu'un de plus expert que moi quand même !
    • [^] # Re: Problème de locales ?

      Posté par  . Évalué à 2.

      J'ai trouvé la panne !
      Ligne 459 dans le fichier commit-email.pl
      j'ai remplacé :
      push(@head, "Content-Type: text/plain; charset=UTF-8\n");
      par
      push(@head, "Content-Type: text/plain; charset=ISO8859-1\n");

      Ça semble fonctionner comme attendu.
      Bon patch !
      • [^] # Re: Problème de locales ?

        Posté par  . Évalué à 1.

        Merci le contenu des fichiers passe mieux mais les logs s'affichent mal encore :(.


        Modified:
        Nouveau Document texte.txt
        Log:
        ?\195?\169?\195?\160?\195?\167

        Modified: Nouveau Document texte.txt
        ===================================================================
        --- Nouveau Document texte.txt 2006-11-16 16:45:35 UTC (rev 27)
        +++ Nouveau Document texte.txt 2006-11-16 16:46:19 UTC (rev 28)
        @@ -1,4 +1,3 @@
        -ggfdgfsfdsfsdghhgfhfhjgdgdfgplop
        to@ééèç
        tr
        é@èç
        • [^] # Re: Problème de locales ?

          Posté par  . Évalué à 2.

          Peut-être est-ce parce que, comme décrit dans la doc de subversion, le shell nommé post-commit est exécuté dans un environnement vierge pour des raisons de sécurité.
          Par conséquent, pas de variables telles que $PATH, LC_ALL, LANG, etc.
          Pour ma part, j'ai placé dans ce script, juste avant l'appel à commit-email.pl cette ligne :
          LANG=fr_FR
          Voilà, en espérant que ça aide...
          P.S. : J'ai quand même la satisfaction de voir que ma première idée était la bonne : c'est bien un problème de locales !
          • [^] # Re: Problème de locales ?

            Posté par  . Évalué à 1.

            J'ai rajouté LANG=fr_FR dans le post-commit mais en vain. J'ai également testé LANG="fr_FR" mais le resultat est le même.
            J'ai même des caractères bizarres en guise d'accents dans le log (טח)

            Modified:
            Nouveau Document texte.txt
            Log:
            ?\195?\169?\195?\160

            Modified: Nouveau Document texte.txt
            ===================================================================
            --- Nouveau Document texte.txt 2006-11-17 18:33:49 UTC (rev 33)
            +++ Nouveau Document texte.txt 2006-11-17 18:34:54 UTC (rev 34)
            @@ -1,4 +1,4 @@
            -fdsfdsfsdfdserzggfdgdto@ייטח
            +fdssfdsfdsfsdfdserzggfdgdto@ייטח
            tr
            י@טח
            testgdfgdf23י"י

            • [^] # Re: Problème de locales ?

              Posté par  . Évalué à 1.

              UP
              • [^] # Re: Problème de locales ?

                Posté par  . Évalué à 2.

                Hello,
                désolé pour cette réponse tardive, mais je me suis *vraiment* penché sur la question, et j'ai trouvé ce qui clochait.
                Dans le script nommé commit-email.pl, j'ai effectué ces modifications :

                459 #push(@head, "Content-Type: text/plain; charset=UTF-8\n");
                460 push(@head, "Content-Type: text/plain;charset=iso-8859-15;\n");
                461 push(@head, "Content-Transfer-Encoding: 7bit\n");


                A gauche ce sont les n° de ligne...
                Enfin, dans le script post-commit, j'ai mis ça :

                export LANG=fr_FR

                Juste avant l'appel à commit-email.pl, et ça fonctionne du feu de dieu, avec tous les caractères accentués.
                Voilà, j'espère que ça t'aidera, et toutes mes excuses pour le retard avec lequel je réponds.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.