SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Multilinguisme

Développer un site Web arabe

mercredi 22 janvier 2003, par George. Dernier ajout mercredi 2 mars 2005



Les trois attributs qui permettent l’internationalisation du HTML sont :
- « lang » (language) ;
- « dir » (direction) ;
- « charset » (character set).

Ces trois attributs prennent une importance considérable quand il s’agit de développer des sites en arabe. En effet, si par exemple l’attribut « dir » n’est pas utilisé dans les sites qui utilisent des langues s’écrivant de gauche à droite (cette direction étant par défaut), il est en revanche indispensable pour les sites en arabe (et toute autre langue qui s’écrit de droite à gauche comme le persan ou l’hébreu).

« lang »

L’attribut s’écrit : lang = "language-code"
L’attribut défini la langue de base des valeurs des attributs d’un élément et le texte que cet élément contient.
Dans le cas de l’arabe l’attribut s’écrit lang="ar".

Il faut faire la différence entre deux situations d’utilisation de l’attribut :
- Si la langue primaire de la page (ou la langue par défaut) est l’arabe, l’attribut est ajouté à la balise <html> du document : <html lang="ar"> ;
- Si la langue primaire de la page n’est pas l’arabe, l’attribut s’ajoute à la balise qui défini le contenu arabe, par exemple : <p lang="ar">.

En ce qui concerne l’héritage, un élément prend le code langue de l’attribut « lang » de cet élément ou de son parent le plus proche.

« dir »

L’attribut s’écrit : dir = "ltr | rtl" (left to right- valeur par défaut - ou right to left).

L’attribut défini la direction de base d’un texte à direction neutre (c’est-à-dire un texte qui n’a pas de définition de direction inhérente comme définie par UNICODE - voir The Bidirectional Algorithm) dans le contenu d’un élément.

Cet attribut permet aux langues qui s’écrivent de droite à gauche comme l’arabe d’apparaître dans le navigateur effectivement de droite à gauche.

Comme pour l’attribut « lang », il existe deux cas de figure :
- La direction par défaut de la page est de droite à gauche, et l’attribut s’ajoute à la balise <html> : <html dir="rtl">.
- La direction de la page est de gauche à droite, et l’attribut s’ajoute aux valeurs des attributs de l’élément qui contient le texte de droite à gauche : <p dir="rtl">.

En général, et en ce qui concerne l’arabe, les deux attributs « lang » et « dir » sont utilisés de concert : <html lang="ar" dir="rtl"> ou <p lang="ar" dir="rtl">.

« charset »

Contrairement à d’autres langues, la langue arabe n’a pas eu beaucoup de chance avec l’informatique. Et bien qu’il y ait eu un standard ISO (ISO-8859-6) pour adresser le jeu de caractères arabes, pratiquement chaque compagnie de matériel ou de logiciel a « inventé » son jeu à elle (IBM, Microsoft, Apple, Linotype...). De tous ces jeux de caractères propriétaires il ne reste plus effectivement en utilisation que deux : Mac arabe et Windows arabe. Le résultat est que si on produit un texte arabe sur Mac, ce texte n’est pas lisible sur Windows ou sur Unix-Linux, sauf dans le cas particulier où une application supporte les deux jeux de caractères (même la version arabe de Microsoft Word a besoin d’une extension non fournie en standard pour lire les textes en Mac arabe).

On aurait pu croire que le standard ISO réglerait le problème, mais les applications qui sauvegardent le texte en arabe ISO se comptent sur les doigts d’une seule main.

Avec l’arrivée de UNICODE (UTF8), le problème semblait se résoudre car les deux systèmes (Mac et Windows) supportent ce standard. Tout cela influence évidemment le choix du codage des sites arabes. Si on s’en tient à une vision étroite et non professionnelle des choses, on sait que la grande majorité des utilisateurs arabes du web utilisent Internet Explorer sous Windows et donc que le plus simple est de choisir le codage Windows pour les textes arabes (Windows-1256).

Mais le problème devient un peu plus compliqué quand on décide de travailler avec logique car le plus grand facteur reste la version du navigateur que le visiteur utilise.
- Si le visiteur utilise une vieille version de Internet Explorer (jusqu’à 4) sous Windows, il ne peut voir que le codage Windows-1256 (quoique la version 4 supporte plus ou moins ISO-8859-6).
- Si le visiteur utilise une vieille version de Navigator (jusqu’à 4.x) sous Windows ou sous Macintosh il lui faut passer par les préférences de l’application et utiliser le codage « User Defined » pour avoir une chance d’entr’apercevoir de l’arabe x-mac-arabic sur Mac ou Windows-1256 sur Windows.
- Par contre, si le visiteur utilise une nouvelle version de Navigator ou Mozilla, sous Mac ou Windows ou Linux, tous ses problèmes seront réglés car ces applications supportent correctement pratiquement tous les codages arabes même x-mac-arabic et IBM-864 qui n’est pratiquement pas utilisé, et plus spécialement ISO-8859-6 et UTF8. Il faut signaler, toutefois, que les versions Mac ont tendance à perdre un peu du formatage des textes.
- En revanche, et en ce qui concerne Internet Explorer, les nouvelles versions sous Windows supportent Windows-1256, ISO-8859-6 et UTF8. Mais les versions pour Mac ne supportent rien du tout, ce qui fait que si on veut visiter des sites arabes à partir d’un Mac il faut avoir Navigator 6 ou Mozilla.
- Quant à Opera, il supporte UTF8 et, théoriquement, ISO-8859-6 et UTF8, mais ces deux derniers formats ne marchent pas sur Mac, en plus Opera a tendance à ne pas supporter la direction de droite à gauche.

Ces observations supposent que le système du visiteur comporte des polices de caractères arabes pour permettre au navigateur d’afficher correctement les pages arabes, sauf dans le cas de Internet Explorer sous Windows qui installe lui-même des polices arabes lors de son installation ce qui permet de voir des pages arabes sans avoir nécessairement un système qui supporte l’arabe.

Je n’ai pas testé d’autres navigateurs mais les commentaires sont les bienvenus.

En conclusion, le développeur doit toujours faire un choix en fonction de son public et des versions des navigateurs que ce public utilise. Mais ce choix est, à mon avis très momentané car il y a de moins en moins de vieilles versions en circulation ce qui lui laisse le choix de coder soit en ISO-8859-6 soit eb UTF8 sauf cas bien particuliers (intranet par exemple). Et donc, il aura à utiliser l’attribut « charset » de la façon suivante :

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-6">
ou <meta http-equiv="Content-Type" content="text/html; charset= UTF8 ">
dans les balises "meta" de ses pages.

Finalement, la condition minimum pour la création d’un site arabe est d’utiliser les trois attributs « lang », « dir » et « charset », par exemple :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">
<HTML lang="ar" dir="rtl">
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<TITLE>Un document bilingue</TITLE>
</HEAD>
<BODY>

... يظهر بالعربية...

<P lang="fr" dir="ltr">... Interprété en français... </P>

<P>

... يظهر بالعربية مجدداً...

</P> <P>

...نص عربي يتداخل فيه<EM lang="fr">du français </EM> يعود العربي مرة اخرى هنا...

</BODY>
</HTML>

Des sites arabes avec SPIP

Qu’on veuille développer un site arabe ordinaire ou un site basé sur un système de publication comme SPIP, on utilise toujours les trois attributs précédents.

La nouvelle fonctionnalité que la version 1.5 de SPIP a introduite (jeu de caractères du site dans les fonctions avancées de l’administration du site) facilite grandement la création de sites arabes. En effet, cette fonction est venue épargner à l’utilisateur la peine d’éditer directement la base de données pour introduire le jeu de caractères à utiliser dans le site d’un coté, et d’un autre coté, ajouter un nouvel attribut #CHARSET aux squelettes lui épargnant aussi l’ajout de cet attribut manuellement.

En effet, il suffit, avant de commencer la création du site de spécifier le jeu de caractères à utiliser dans les fonctions avancées de l’administration du site (dans notre cas, cocher « alphabet universel (utf-8) » ou le choix « jeu de caractères personnalisé » pour choisir ISO-8859-6). Ce choix apparaîtra dans les squelettes du sites dans la balise :

<meta http-equiv="Content-Type" content="text/html; charset=#CHARSET">

si on utilise les squelettes livrés avec SPIP évidemment, sinon il faut la créer dans les squelettes.

Comme SPIP a réglé l’affaire de l’attribut « charset », il reste les deux autres qu’il faut introduire dans les squelettes, ce qui redevient un problème de création de pages ordinaire, puisque ces attributs ne relèvent en rien du code de SPIP.

Dans la version de SPIP 1.5.1 par exemple, les balises <html> des squelettes fournis par défaut ont toutes un attribut lang= "fr". Si le site à développer est français mais doit contenir de l’arabe localement, il ne faut pas toucher à l’attribut de cette balise mais ajouter lang= "ar" aux valeurs d’attributs des éléments qui vont contenir de l’arabe. Par contre si le site doit être en arabe, il faut remplacer « fr » par « ar » dans les attributs « lang » des balises <html> des squelettes et appliquer lang= "fr" localement si le site contient du français.

Quant à l’attribut dir="rtl" , il n’est pas intégré dans les squelettes de SPIP et donc il faut l’ajouter à la balise <html> si la langue principale du site est l’arabe et localement sinon.

Quelques questions pratiques

Le problème des sites arabes dans la partie privée apparaît quand on veut créer un nouvel article (ou brève) ou le modifier. En effet les navigateurs n’afficheront pas le texte de l’article de droite à gauche pendant l’édition pour la simple raison que la direction de la partie privée est de gauche à droite. Seul Internet Explorer sous Windows peut afficher les fenêtres des textes de droite à gauche quand on clique par exemple dans la fenêtre du texte et qu’on appuie sur Ctrl + Maj droit.

Dans les autres situations, il faut soit se contenter d’éditer le texte en le regardant de gauche à droite ce qui est énervant soit éditer le texte dans une autre application et le copier dans la fenêtre de SPIP... soit attendre la version arabe de la partie privée.

P.-S.

Pour voir un site en arabe développé avec SPIP, visiter : Diwan al Arab


Répondre à cet article

  • Développer un site Web arabe

    3 février 2006 00:17, par pseudomenace

    bonjour,

    je suis entrain de créer un site sous spip bilingue français et arabe (en réalité seulement une rubrique-secteur est en arabe !)

    j’ai d’abord écris des articles en français puis en arabe (3 seulement !), comme l’encodage était en iso-8859-1 (latin) je n’ai eu aucun problème avecles textes en français mais ceux en arabe :

    - un article s’est totalement affiché ! - les 2 autres ont donnés des signes bizarres !

    j’ai donc fouiné ici et là et j’ai trouvé qu’il fallait utilisé UTF-8 pour tout reconnaitre !

    heureusement que j’ai utilisé le script du : http://www.spip-contrib.net/Comment... pour passer ma base en utf-8 !

    et ça a marché !

    mais pour l’arabe j’ai eu des surprises : - un article totalement illisible ! (pas le même qu’avant !!) - 2 articles ainsi que des éléments de langue (local_ar.php) affichent des caractères certes en arabe mais pas liés (c’est pas lisibles en phrase ou même en mots !)

    j’utilise pour visualiser le site : - opera 8.50 (quelques soucis persistent sous utf-8 mêm e nfrançais !) - firefox 1.5 et internet explorer 6 (ok pour le français !)

    je suis sous windows xp pro.

    Merci de mieux m’orienter !

    ps:faudrait-il passer les articles en arabe (windows-1256) vers utf-8 mais alors comment faire ???

    merci

    Répondre à ce message

    • Développer un site Web arabe 4 février 2006 11:16, par George

      Il faut passer les textes arabes en UTF8.

      La moulinette de Fil doit pouvoir le faire. Mais il faut auparavant activer le charset windows-1256 dans le fichier changer_charset.php3.

      S’il y a des probleme, il faudrait peut etre en parler a Fil sur le forum de son article a l’adresse suivante

      Voir en ligne : Comment passer son site en utf-8

      Répondre à ce message

    Retour au début des forums

  • une partie (secteur) seulement en arabe !

    3 février 2006 00:13, par pseudomenace

    bonjour,

    je suis entrain de créer un site sous spip bilingue français et arabe (en réalité seulement une rubrique-secteur est en arabe !)

    j’ai d’abord écris des articles en français puis en arabe (3 seulement !), comme l’encodage était en iso-8859-1 (latin) je n’ai eu aucun problème avecles textes en français mais ceux en arabe :

    - un article s’est totalement affiché ! - les 2 autres ont donnés des signes bizarres !

    j’ai donc fouiné ici et là et j’ai trouvé qu’il fallait utilisé UTF-8 pour tout reconnaitre !

    heureusement que j’ai utilisé le script du : http://www.spip-contrib.net/Comment... pour passer ma base en utf-8 !

    et ça a marché !

    mais pour l’arabe j’ai eu des surprises : - un article totalement illisible ! (pas le même qu’avant !!) - 2 articles ainsi que des éléments de langue (local_ar.php) affichent des caractères certes en arabe mais pas liés (c’est pas lisibles en phrase ou même en mots !)

    j’utilise pour visualiser le site : - opera 8.50 (quelques soucis persistent sous utf-8 mêm e nfrançais !) - firefox 1.5 et internet explorer 6 (ok pour le français !)

    je suis sous windows xp pro.

    Merci de mieux m’orienter !

    ps:faudrait-il passer les articles en arabe (windows-1256) vers utf-8 mais alors comment faire ???

    merci

    Répondre à ce message

    Retour au début des forums

  • Développer un site Web arabe

    30 septembre 2005 18:39, par Mlle aya

    Mr je veux installer un logiciel arab sur mon ordinateure par internet merci

    Répondre à ce message

    Retour au début des forums

  • Definir la langue et la direction

    31 mai 2005 15:56, par erational

    Depuis la rédaction de cette article, SPIP a fait des progrès notamment sur les attributs dir et lang. On les définir de façon dynamique pour permettre une gestion de site multilingue

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="#LANG">

    <head>
      ...
     <meta http-equiv="Content-Type" content="text/html; charset=#CHARSET" />
    </head>

    <html lang="#LANG">
    <body dir="#LANG_DIR">
    ...
    </body>
    </html>

    Voir en ligne : SPIP - realiser site multilingue

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    25 juin 2003 11:55, par f bonnassies

    a airbus j’ai un utilisateur qui fait de la deco avion, il lui manque la police font Arabic Transparent bold , merci de me l’envoyer Cordialement

    Répondre à ce message

    • > Développer un site Web arabe 10 novembre 2003 08:38

      j’ai cette font mais j’ai besoin de ton email. le mien c "nmehdi@lycos.com" fait moi signe si tu as toujours besoin du caractere arabic transparent bold

      Répondre à ce message

      • > Développer un site Web arabe 30 avril 2005 14:45, par mizpiansite

        Bonjour ! J’ai besoin du font arabic transparent cold!j arrive pas à imprimer des pages .. Si tu l’as ,jte pass mon msn ça srait sympa si tu mlenvoies ! mizpianiste@msn.com
        - Zakia- merci encore

        Répondre à ce message

    • > Développer un site Web arabe 22 novembre 2003 12:11, par naima

      مرحبا أنا طالبة في الثانوية العامة و أريد أن أقول أن موقع schoolarabia موقع رائع جدا ومن خلاله يمكن لأي شخص معرفة أية معلومة دراسية يريدها .

      اود ان اشكركم على هذا الموقع الجميل الممتاز لجميع الطلاب وجميع الاعمار والذي يوضح للطالب ما لم يتوضح له مسبقا . أنا اعجبت به وسَهّل علي فهم الكثير والحصول على عدد كبير من الابحاث المدرسية والتقارير. شفيق عموص / عتيل _ طولكرم ـ فلسطين / طالب مدرسي

      أهنئكم وبشدة على هذا الموقع المتميز من بين المواقع العلمية العربية ، فهو يعينني بشدة في دراستي الحالية ، لما يحويه من أسئلة ذات مستوى عالٍ .

      محمد علي

      Répondre à ce message

    Retour au début des forums

  • Le #FORMULAIRE_ECRIRE_AUTEUR en arabe

    26 avril 2005 18:02, par JKE

    Bonjour,

    J’ai fait un site trilingue EN, FR et AR (www.ideo-cairo.org) et j’ai une petite question pour l’envoi de mail grâce au formulaire si pratique #FORMULAIRE_ECRIRE_AUTEUR :

    Quand j’envoie un mail à partir du form en langue arabe, il se passe 2 choses :

    1) Alors que l’interface d’envoi du mail est bien en AR, la page de confirmation repasse en français !! Et celle d’après -qui dit message envoyé- est aussi en français.

    2) Plus grave (mais sans doute relié au point 1) : le mail que l’on reçoit alors est codé en windows occidental, et l’encodage ne peut pas être modifié ! Du coup le mail est illisible !

    Savez-vous comment il est possible de passer une variable de langue après l’envoi du mail ? Je cherche ainsi à obtenir une page de demande de confirmation puis de confirmation en arabe (tout comme la première interface de saisie du mail qui s’affiche bien grâce à la variable lang=ar passée à la main dans l’URL).

    Merci !!!

    Voir en ligne : Institut dominicain d’Etudes Orientales

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    7 avril 2005 22:51

    السيد جورج أشكرك على المجهود القيم الذي تبذلون أود أن أعمل موقع متعدد اللغة لكن أجد صعوبة مثلا عندما أستخدم تكون ليست في محلها

    مثلا إذا أردت قلب صفحة من اليمين إلى اليسار او العكس تتغير وضعية الصور المشكل للتصميم ما أفكر فيه هو كيف يمكنني ان أضع عدةصور لتصميم لتكون صورة اللغة العربية تأتي مع اللغة العربية

    Répondre à ce message

    • > Développer un site Web arabe 24 avril 2005 16:58

      هل لك ان توضح اكثر او ان تعطني عنوان يمكن ان ارى فيه ما تفعل؟

      Répondre à ce message

    • > Développer un site Web arabe 26 avril 2005 13:23, par KARIM JAMOUSSI

      JE VEUX VISITER UN SITE WEB ARABE POUR FAIRE DES RECHERCHES DES ARTICLES DES ANIMAUX _DES PERSONNAGES QUI ONT FAIT DES CONTES EN ARABES_DES IMAGES POUR éCRIRE DES CONTES_... JE M’APPELLE KARIM JAMOUSSI .JE SUIUS UN ENFANT TUNISIEN DE 12 ANS J’éTUDE EN 7 ANNéE PRIMèRE JE T’ENVOIS APPARE LA SOCIéTé IDERYET DE MON PèRE APPAR SON PC MOMIROS DE TéLéFONE FIXE DE NOTRE MAISON EST +21674244416 SI TU VA ME ENVOIé UN L’E-MAIL DE MON PéRE TU éCRIT AVANT TOUT:DE ..... à KARIM JAMOUSSI L’ADRESSE E-MAIL EST : JAM.IDERYET@GNET.TN D’APRéS UN NOUVEAUX PRTIT AMIS KARIM JAMOUSSI TUNISIE SFAX ADRESSE:32 RUE ABOU ELKASEM ELCHABI 3000 SFAX IDERYER TUNISIE BYE

      Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    21 septembre 2004 17:25

    Merci à tous pour ces conseils sur la création d’un site web en arabe !

    Cependant, je reste coincé sur le problème suivant :

    Les textes affichés avec l’attribut alt des images (img) ou des liens (href) ne s’affichent pas dans le bon sens ! Est-il possible, à l’aide d’une feuille de style CSS ou un truc du style dir="rtl", de corriger cela ?

    Neurone

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    13 mai 2003 15:36

    et ben... je vais devoir bientôt le concevoir, mon site en arabe.. à première vue, y a pas l’air d’avoir trop de problèmes.

    Ceci dit, tu es un peu le seul à t’être interessé à la question.

    merci de ton aide.

    ps : avec google, tu est le premier devant des milliards de sites porno. Et moi qui croyait les arabes bien moins vicieux que les blancs :-) à plus certainement

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    28 mars 2004 19:14, par Cameleon

    Salut tout le monde... je suis entrain de developper un site arabe dynamique avec JSP et une Base de Données mySQL et une connexion JDBC ; Mon probléme c qu’on j’insere des données dans mySQL ca marche mais quand je veux les recuperer sur ma page JSP ca me donne des trucs comme "?" ...

    Merci d’avance...

    Répondre à ce message

    Retour au début des forums

  • > Squelette site Web arabe

    29 mars 2004 09:09, par Karim Belkacem

    Salut, J’ai mis en place une astuce de mot clé et CSS simple, je vous joint l’url si cela vous tente et si quelqu’un développe un site en arabe, persan ou hebreux, qu’il utilise l’astuce merci pour le retour d’utilisation (bien, pas bien, peu mieux faire :)

    Nota : l’astuce est en contrib, mais pas encore validée

    Voir en ligne : Glums.com

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    4 décembre 2003 13:11, par ice

    Bonjour j’ai bien suivis les précieux conseils. et j’arrive enfin a faire un site en arabe mais.... voila mon probleme : dans dreamweaver tout le texte en arabe est completement écrasé, sur internet c’est impeccable mais pas sous dreamweaver. c’est comme si je devais augmenter la largeur de police mais dans dreamweaver je ne vois pas ou c’est. et comme mon texte est tout écrasé je ne peux pas mettre de lien sur un mot précisemment, vous me direz :- oui mais tupeux mettrele lien dans le script ? et bien non lol c’est pas évident depuis que j’ai modifié la Méta le script est tout bizarre. j’arrive plus a me repérer dedans. alors si vous pouviez m’aider, merci d’avance :)

    Répondre à ce message

    Retour au début des forums

  • > Développer un site Web arabe

    5 novembre 2003 21:15, par kerphi

    Bonjour,

    Est-il possible que l’ecriture dans un champ soit forcée pour s’écrire de droite à gauche ?

    Merci

    Répondre à ce message

    Retour au début des forums

0 | 25



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et fonctionnement SPIP-Contrib | SPIP | L'autre.net