SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 229 visiteurs en ce moment

Accueil > Interactivité, échanges > Jeux > Echecs dynamiques PGN > Echec Dynamique PGN(Plugin) > Affichage de document PGN contenant des parties d’échecs

Affichage de document PGN contenant des parties d’échecs

11 juin 2008 – par yazul – 17 commentaires

7 votes

Afficher des fichiers PGN sous forme de diagramme et suite de coups.

Fonctionnalité

Le plugin permet d’afficher des parties d’échecs.
Les parties sont des documents de type « PGN » placés dans un article.

Le rédacteur prépare son article et y télécharge un ou plusieurs documents de type « pgn ». Ce type de fichier est simple à produire pour un joueur d’échecs depuis n’importe quel logiciel (de préférence GPL, bien sur). Le mot clé PGN est associé à l’article ... et c’est fini !

Donc, aucune préparation n’est nécessaire, il suffit de produire un fichier PGN et l’installer dans l’article.

Rédacteur

L’objectif est de faire simple pour les rédacteurs :
-  créer un article avec un texte d’introduction.
-  ajouter un ou plusieurs documents de type « pgn ». Chaque document peut contenir une ou plusieurs parties (voir la description du format PGN).
-  associer un mot-clé à l’article (pour activer un squelette particulier grace au plugin « squelette par mot-clé »).

Donc : aucune préparation (PALVIEW), pas d’applet, simplement un article et des documents attachés.

Remarque : en pratique il ne faut pas dépasser un total de quelques parties (moins de 10) sinon le temps d’analyse et chargement des documents devient trop long. Il est préférable de créer d’autres articles pour y placer les autres parties.

Administrateur / informaticien

Outre l’installation du plugin (qui nécessite CFG), l’administrateur devra utiliser de nouvelles balises, de préférence dans un squelette dédié. Le plus simple est alors d’utiliser le plugin « squelette par mot-clé » qui permet de définir un squelette particulier pour un article selon la présence d’un mot clé.

Les nouvelles balises :
-  #PGN_ECHIQUIER : échiquier, boutons de navigation, sélecteur de partie.
-  #PGN_COUPS : coups de la partie avec commentaires, variantes.
-  #PGN_TAGS : tags provenant du fichier PGN.
-  #PGN_DOCUMENTS : demande le chargement des documents PGN.

L’utilisation normale du plugin est de placer l’échiquier dans un bloc fixe à l’écran tandis que la partie elle-même peut défiler. Le plugin fait alors automatiquement défiler la partie pour que le coup joué soit toujours visible à l’écran (ça fonctionne très bien avec Firefox et assez correctement avec IE).

Visiteur : Affichage de l’article

L’affichage peut contenir les éléments suivants :

  • un diagramme d’échecs
    • l’échiquier avec les pièces
    • des bouton de navigation (coup précedent, suivant, début, fin)
    • un sélecteur de partie (si plusieurs parties sont présentes dans les documents chargés).
  • la liste des coups joués avec les variantes, commentaires
  • la liste des « tags » (informations générales sur la partie)

Le visiteur peut utiliser les boutons de navigation ou cliquer sur un coup dans la liste.
L’échiquier est mis à jour tandis que le coup est affiché en surbrillance.

Comment ça marche ? (un peu de technique)

Le principe de base est de s’appuyer sur un script JAVASCRIPT qui est appelé par les différentes balises. Le chargement des fichiers PGN est délégué à un script PHP ce qui garantit un bon fonctionnement et une performance correcte.

Les inconvénients majeurs de JAVASCRIPT sont :
-  le risque de dysfonctionnement selon le navigateur ou le système d’exploitation
-  un temps de traitement trop important pour des documents PGN un peu conséquent.

J’ai pu constater ces 2 problèmes...

Donc, le PHP est utilisé pour lire un document PGN, analyser les parties et envoyer une information directement exploitable au JAVASCRIPT qui est chargé de l’affichage dans le navigateur.

Note : il serait possible d’utiliser AJAX pour dialoguer entre JAVASCRIPT et PHP, en pratique le protocole est assez simple pour être directement implémenté.

PGN : qu’est ce que c’est ?

-  Une description en français.

La difficulté d’utilisation d’un fichier PGN réside dans le fait que la syntaxe est souple et minimaliste. En clair, il faut une « intelligence » qui suive l’état de l’échiquier pour pouvoir comprendre le prochain coup. L’analyse nécessite donc un peu de temps.

Version 1.3

-  compatibilité SPIP 2.1 : OK.

Version 1.2

-  Quelques corrections internes (paramètres mal gérés).
-  test compatibilité SPIP 2.0 : OK mais le plugin « Squelette par mots clé » ne fonctionne plus, il faut donc trouver une autre astuce pour choisir un affichage spécial.

Modifications à venir

Amélioration des performances :
-  Ne pas charger la totalité des parties mais seulement la liste. Ne réaliser l’analyse et le chargement que lors de l’appel de chaque partie.
-  gérer un cache des parties analysées à la manière de SPIP. Ce cache devra être alimenté lors de l’analyse d’un document et vidé lors de la modification d’un document. (complexe)
-  remplacer les images des pièces par les caractères unicode correspondants.

Voir en ligne : Genas Echecs

Dernière modification de cette page le 12 septembre 2011

Retour en haut de la page

Vos commentaires

  • Le 29 juin 2008 à 16:11, par Philippe En réponse à : Affichage de document PGN contenant des parties d’échecs

    Il va falloir que je teste cela sur Chessnaute

    • Le 1er juillet 2008 à 14:50, par yazul En réponse à : Affichage de document PGN contenant des parties d’échecs

      Joli site, attention à ce plugin qui n’apprécie pas les « gros » fichiers PGN (contrairement à l’applet utilisée sur Chessnaute).
      Le plugin est adapté pour afficher quelques parties dans beaucoup d’articles (et non pas un article contenant une archive monstrueuse).

    • Le 1er juillet 2008 à 15:27, par ? En réponse à : Affichage de document PGN contenant des parties d’échecs

      merci de votre réponse rapide
      -  Hélas j’ai un gros fichier (avec un arbre de plus de 400 variantes) d’un jeu que j’ai mis au point avec mon fils, le jeu du loooup. Il ne s’agit pas de jouer contre un joueur mais de présenter un arbre de variante. S’il ne passe pas, je le scinderai. La position de départ s’obtient après une série de coups à partir de la position initiale qui éliminent les pièces dont on n’a pas besoin en ne laissant que les fous sur les cases blanches et les rois sur les cases noires.

      -  idem pour le fairy chess le final féerique du roi ligoté.

      • Quant aux deux autres créations sur échiquier, flibuuuste la bataille navale et roooque ils sont jouables sur échiquier mais il faudrait pouvoir modifier le logiciel de déplacement des pièces ce qui est hord de ma portée.
        J’attends vos consignes
    • Le 14 juillet 2008 à 17:07, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Lorsque je clique sur CFG, il n y’a rien de proposé pour configurer le plugin pgn_affiche.
      Etrange, non ?

      Perso je souhaiterais ne pas utiliser le plugin de squelettes, donc j’ai créé un squelette particulier en y plaçant les balises, cependant rien ne s’affiche (et pourtant le code source de la page m’annonce la présence de certains éléments, le chemin vers le fichier .pgn par exemple)

      Pour l’instant je teste en local sous Easyphp

    • Le 21 juillet 2008 à 17:03, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Je suis passé en test sur Chessnaute, et cela ne fonctionne pas pour l’instant (un gros trait orange est affiché,ainsi que les liens de navigation et comme pour le message précédent)
      Le fichier PGN ne contient qu’une partie.

      A suivre

    • Le 27 juillet 2008 à 10:09, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Il me manquait #INSERT_HEAD dans le squelette.
      Mais maintenant il y a un problème avec le script
      ==> StringTokenizer.prototype.nextToken et
      return this.lastStr ;

      Argghh, on avance

      Chessnaute-Struppi

    • Le 27 juillet 2008 à 11:55, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Dans la série on avance, pour supprimer le message précédent il faut allez dans le formulaire « pgn_documents.html » et supprimer /SPIP dans la ligne « initPgn(’#URL_SITE/SPIP/plugins/pgn_affiche’) »
      si comme moi Spip est installé à la racine du site

    • Le 27 juillet 2008 à 15:55, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Il faut également modifier le fichier d’affichage de l’échiquier pour faire apparaître les boutons (par défaut le chemin des images fait référence à autre chose).

      Si comme moi vous avez utilisé Fritz pour analyser la partie, il vous faudra enlever [Annotator « Fritz 11 (40s) »] au début du fichier pgn, sinon point d’affichage.
      Il faut également faire attention à certaines annotations propres à Fritz (par exemple l’icône de « meilleur est » affiche unknown NAG 142 !?)

      Donc merci pour ce plugin qui me permet enfin d’afficher une partie commentée

    • Le 28 juillet 2008 à 13:51, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      Dernière étape, il m’a fallu mettre les caches à 0 pour pouvoir afficher tous les éléments comme je le souhaitais

    • Le 30 juillet 2008 à 11:30, par yazul En réponse à : Affichage de document PGN contenant des parties d’échecs

      Bonjour chessnaute,
      je rentre de vacances (océan, ...) pour lire toutes tes remarques.
      Je pense que la plupart des problèmes rencontrés peuvent être traités directement dans le plugin. L’objectif est que l’utilisateur ne fasse aucune manipulation préalable !

      -  configuration du plugin : comme il est précisé dans la configuration depuis CFG : « Aucune configuration nécessaire à ce jour. » ; la gestion par CFG est prête mais vide, c’est normal.
      -  pgn_documents.html : les formulaires ne devraient pas être modifiés, je vais étudier la possibilité de récupérer automatiquement les URL du plugin (peut-être une configuration du plugin depuis CFG).
      -  TAG « Annotator » de Fritz : il ne devrait pas bloquer l’affichage, je debogue.
      -  je ne connais pas toutes les annotations utilisées (NAG), je vais rechercher les autres codes et effectuer un décodage correct.

      Pour les caches, ça semble normal : les manipulations de squelettes imposent d’effacer les caches ou au minimum

      Encore une fois, l’objectif est d’obtenir un affichage sans intervention du rédacteur !

    • Le 30 juillet 2008 à 11:42, par yazul En réponse à : Affichage de document PGN contenant des parties d’échecs

      Je viens de voir ton site et la partie en ligne.
      Il y a un problème d’affichage : le scroll vertical ne s’effectue pas correctement. L’échiquier devrait toujours être visible et la partie doit défiler pour afficher le dernier coup joué.

      Je regarde ce qui manque pour obtenir cet effet.

    • Le 30 juillet 2008 à 16:23, par Chessnaute En réponse à : Affichage de document PGN contenant des parties d’échecs

      -  TAG « Annotator » de Fritz : il ne devrait pas bloquer l’affichage, je debogue ==> j’ai découvert cela en publiant une partie de genas, qui elle fonctionnait, et la différence était à ce niveau
      -  je ne connais pas toutes les annotations utilisées (NAG), je vais rechercher les autres codes et effectuer un décodage correct.==> si j’en crois wikipédia, ce NAG n’existe pas, donc doit être propre à Fritz

      En tout cas c’est cool

    Répondre à ce message

  • Le 24 juin 2008 à 09:47, par merle blanc En réponse à : Affichage de document PGN contenant des parties d’échecs

    bravo pour votre site que je viens de découvrir.
    je voudrais installer votre plugin sur mon site spip : http://www.maison-de-rabaine.eu pour présenter mes créations de jeux sur échiquier
    1. http://groups.google.com/group/loooup?hl=fr
    2. http://groups.google.com/group/roooque_fr?hl=fr
    3. http://groups.google.com/group/fairy-chess?hl=fr
    4.http://groups.google.com/group/flibuuuste?hl=fr
    5. http://groups.google.com/group/echeeecs?hl=fr

    J’ai été pdt du club Echiquier d’Aquitaine (Bordeaux ... ce qui ne m’a fait gagner aucune partie es-qualité !). Je suis nul en japonais et je comprends vite (si on m’explique, mais parfois il faut m’expliquer longtemps !(par exemple je viens de comprendre comment configurer mon plugin blip, et d’installer le moteur de recherche interne google sur mon jeune site , créé le 12.2006)
    Bref si vous voulez me donner un coup de main ce n’est pas de refus.
    merle blanc (avec les blancs !). your move ?

    • Le 24 juin 2008 à 12:01, par yazul En réponse à : Affichage de document PGN contenant des parties d’échecs

      Bonjour,
      OK pour de l’aide... sauf en japonais où j’ai encore quelques faiblesses.

      l’installation du plugin suppose :
      -  l’installation du plugin « squelette par mots clés »
      -  l’attribution d’un mot clé spécial (par exemple PGN) aux articles contenant des fichiers PGN.
      -  création d’un squelette article pour le cas PGN (et paramétrage du plugin « squelette par mots-clés »).

      Donc il faut mettre un peu les mains dans le cambouis, ensuite c’est simple pour les rédacteurs.

      Dis-moi ce qui n’est pas clair, je pourrais détailler (je compléterai ma doc en conséquence).

    • Le 30 juin 2008 à 14:18, par ? En réponse à : Affichage de document PGN contenant des parties d’échecs

      J’ai de biens jolis squelettes du XIIè dans la généalogie, mais je ne peux que chanter avec Villon que ce mot clef : si pitié de nous autres avez ... Notez toutefois qu’il m’arrive de comprendre si on m’explique, et si je comprends vite il faut m’expliquer parfois longtemps. Bref le mieux serait que je vous donne un code d’admin dans mon site et ensuite via crossloop en partage d’écran et avec votre aide on line je pourrais mater votre programme à l’arme blanche. Donc je ne peux guère faire plus qu’installer un plugin et le configurer comme d’hab. à la rigueur éditer un code htm si on me dit quoi et où.. bref je suis un Nul de chez Nul.
      le chevalier à la blanche main (qui avait les mains pures parce qu’il ne mettait pas les mains dans le cambouis... mais qui n’avait pas de main non plus ...)

      jeanpascal.blanc@gmail.com

    • Le 1er juillet 2008 à 14:52, par yazul En réponse à : Affichage de document PGN contenant des parties d’échecs

      Le plugin nécessite un niveau « confirmé », il faut être capable de créer et/ou modifier des squelettes.

      Je vous contacte en direct (mail) et on voit ça. Si nécessaire, je placerai ici le compte-rendu de mon intervention à titre didactique.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là