Journal Comment ...

Posté par  .
Étiquettes : aucune
0
27
fév.
2004
... les bloggers arrivent à faire ce genre de chose: lien-vers-un-site {la langue}.

Je m'explique je voudrais moi aussi sur mon site pouvoir afficher la langue utilisée sur la page pointée par un lien mais je n'arrive pas à savoir si il faut le faire à la mimine ou si c'est fait automatiquement.

Des idées ?
  • # Re: Comment ...

    Posté par  (site web personnel) . Évalué à 2.

    A là mimine
  • # Re: Comment ...

    Posté par  (site web personnel) . Évalué à 2.

    Dans la balise 'a' ils utilisent le paramétre 'lang' et ils l'affichent avec une règle css.
    • [^] # Re: Comment ...

      Posté par  . Évalué à 4.

      Exactement. Demo sur standblog.com

      Un lien vers mozilla europe est présenté comme ceci:

      [a href="http://plop.org(...)" hreflang="fr"] PLOP [/a]

      (NB: les caracteres inferieurs et superieurs ont ete changés en crochet pour passer dans le commentaire)

      et la magie s'opère grâce à cette partie du .css :

      a[hreflang]:after {
      color: gray;
      font-weight: bold;
      content: "\0000a0[" attr(hreflang) "]";
      }
      • [^] # Re: Comment ...

        Posté par  . Évalué à 2.

        C'est le mauvais exemple: PLOP est l'archétype du langage universel. Il s'écrit et se prononce invariablement de la même façon dans tous les pays :-) Plop pow4h !
        • [^] # Re: Comment ...

          Posté par  . Évalué à 7.

          négatif. les anglais diront "PLAUP", les allemands "PLÖPEUH", les italiens "PLOPéé", et les windowsiens "Cette application a rencontré une erreur fatale et va se terminer. Veuillez contacter votre revendeur."
      • [^] # Re: Comment ...

        Posté par  . Évalué à 0.

        Encore faut-il que le navigateur supporte le "content" en css, je ne connais que (les versions récentes de) mozilla qui le supporte.
        Dommage, car cette solution est superbe :-)

        Sinon il doit être possible de faire un truc avec du javascript, mais moins pratique à utiliser que ça.
  • # drapeaux css

    Posté par  (site web personnel) . Évalué à 2.

  • # Re: Comment ...

    Posté par  . Évalué à 1.

    Ok j'ai bien compris mais n'éxiste-t-il pas un moyen simple de détecter la langue automatiquement et donc remplir le fameux flag hreflang ??
    • [^] # Re: Comment ...

      Posté par  . Évalué à 1.

      Non ! A moins d'avoir une indication claire dans la page cible (on doit peut-être pouvoir spécifier la langue dans le header, ou dans le métas de la page HTML)

      Mais la détection automatique et fiable de la langue d'un document, ça n'existe pas (a ma connaissance, bien sûr).

      (
      A priori les techniques les plus fiables sont :
      - regardage de caractères spécifique à un langage ("ç" pour le français par exemple)
      - comparaison de mots du texte dans un dictionnaire électronique de la langue en question (a faire tant qu'on a pas trouvé la bonne langue)
      - regardage de n-grammes (groupes de n caractères contigus) spécifiques de certaines langues, avec n= 2 ou 3 généralement
      - Statistiques sur les lettres utilisées (ou les n-grammes, etc.)

      [J'ai pu en oublier ;), mais l'idée c'est que c'est assez lourd / complexe et jamais fiable à 100%]
      )
    • [^] # Re: Comment ...

      Posté par  (site web personnel) . Évalué à 1.

      Un classificateur bayésien (comme pour le spam) pourra faire le boulot de manière assez sûre. Chez Logilab, ils ont une implémentation en python qui reconnait la langue d'une page web.
    • [^] # Re: Comment ...

      Posté par  . Évalué à 0.

      Moi j'ai fait une petite fonction php :

      <?

      function locales() {
      $languages = split(';', getenv('HTTP_ACCEPT_LANGUAGE'));
      $languages = split(',', $languages[0]);
      return $languages;
      }

      $languages = locales();

      ?>

      la variable locale contiendra les langue sélectionnées par l'utilisateur, dans un ordre préférentiel, depuis mon galeon $languages renvoie une array :

      ('fr', 'en', 'es')

      j'ai interfacé ça avec une autre fonction et une base mysql qui contient le texte i18n, aussi une fonction qui revoie le texte syntaxé wiki en html dans la bonne langue, si ça t'intéresse... C'est une sorte de gettext à syntaxe wiki via base de données.
      • [^] # Re: Comment ...

        Posté par  . Évalué à 1.

        Je ne suis pas sûr d'avoir compris ce que fait ta fonction (je suis pas un pro du PHP) mais il me semble qu'elle ne répond pas vraiment à ma question.

        TU pourrais m'expliquer ce que ça fait exactement ?
        • [^] # Re: Comment ...

          Posté par  . Évalué à 1.

          Oui j'ai effectivement un peu répondu à côté mais ce n'est pas complètement hors sujet. Lorsque tu paramètres ton navigateur tu choisis les langues que tu souhaite avoir par défaut, analogue à LANG=fr_FR sous linux, sauf que là tu peux en mettre plusieurs par odre de préférence. Ma fonction ne fait que renvoyer ces variables dans l'ordre spécifé par le client sous forme de tableau.

          Par exemple http://www.debian.org(...) s'affiche chez moi en français car mes variable dans galeon sont fr,en,es, si je met es,fr,en http://www.debian.org(...) s'affiche en espagnol. ensuite tu peux interfacer cette fonction avec une autre qui renvoie le contenu des pages (dans une bdd) en fonction de la langue utilisateur, si ça t'intéresse je l'ai fait. En ce qui concerne CSS c'est vrai qu'il peut lui aussi afficher le contenu et les liens dans la langue utilisateur mais ça implique d'envoyer TOUTES les langues dans le corps de la page, méga relou en bande passante, quand on sait que la BP est un des chevaux de bataille de CSS...
  • # Re: Comment ...

    Posté par  . Évalué à 1.

    Dans la même veine, existe-t-il une ressource (en fr si possible) expliquant clairement ce que sont les permalink, permanent anchors, automatic link back, les trackback, ... ?
    • [^] # Re: Comment ...

      Posté par  . Évalué à 1.

      Permalink : permanent link ; c'est une url qui ne changera pas (voir Cool links don't change http://www.w3.org/Provider/Style/URI.html(...) .

      Permanent anchor : l'équivalent pour les ancres dans les documents, j'imagine.

      Automatic link back : aucune idée.

      Trackback : c'est un mécanisme dont la spec est décrite ici : http://www.movabletype.org/docs/mttrackback.html(...) et dont je suis en train de peaufiner une implémentation en PHP (http://ludicre.net/TrackBack/(...) ).
      En gros, cela permet de notifier à une application (qui implémente ce mécanisme) qu'un commentaire a été posté à propos d'une ressource particulière (ici, un message dans un blog). Je ne sais pas si ce que je dis est assez clair...?
      • [^] # Re: Comment ...

        Posté par  . Évalué à 1.

        Un grand merci !

        J'y vois plus clair maintenant ;)

Suivre le flux des commentaires

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