Table des Matières

Ajoute des ancres en fonction des intertitres et fournit une balise pour afficher la « table des matières » d’un article - autrement dit un « sommaire » -.

Dans la même thématique, il existe aussi le plugin Sommaire automatique

Objectif

L’objectif de ce plugin est d’ajouter des ancres html calculées en fonction du texte de l’intertitre, et de fournir une balise pour afficher la « table des matières » d’un article (contenu de #TEXTE)

Fonctionnement

Les intertitres ( notés {{{intertitre}}} ) seront transformés en <h3 class="spip"><a name="intertitre"></a>intertitre <a href="tdm"><img ... /></a></h3>

Le contenu de l’attribut name est calculé selon une méthode approchant celle des urls propres de spip. Aussi un intertitre {{{ceci est un intertitre spécial}}} sera transforme en <h3 class="spip"><a name="ceci-est-un-intertitre-special"></a>ceci est un intertitre spécial</h3>

Chaque intertitre est mémorisé avec son ancre correspondante pour être reproduite dans la balise #TABLE_MATIERES

Installation

Télécharger l’archive ci-joint, puis décompresser le fichier. Copier ce répertoire tables_matieres dans le répertoire « plugins » de votre site spip. Alternativement, vous l’aurez trouvé dans l’interface de chargement automatique de SPIP, il se trouve alors dans plugins/auto

Table des Matières
(2.4.0)

Configuration

Le plugin dispose d’un menu de configuration qui permet de choisir :

  • si la table des matières doit s’insérer automatiquement ou via l’appel de la balise
    #TABLE_MATIERES
  • A partir de combien d’intertitres minimum, il faut générer la table des matières
  • Le format des ancres générées
  • ....

Utilisation

Les intertitres seront calculés automatiquement. Pour afficher la table des matières, ajouter la balise #TABLE_MATIERES dans votre squelette à l’intérieur d’une boucle ARTICLES.

#TABLE_MATIERES affichera les ancres de la manière suivante par défaut :

<div id="tdm" class="divers">
	<h2 class="menu-titre">Table des matières</h2>
	<ul>
		<li><a href="#intertitre-1">intertitre-1</a></li>
		<li><a href="#intertitre-2">intertitre-2</a></li>
		<li><a href="#intertitre-3">intertitre-3</a></li>
	</ul>
</div>

Ce qui est un modèle CSS connu puisque tout proche de celui des noisettes de la barre de navigation des squelettes par défaut de SPIP.

Notez la présence d’un noeud DOM #tdm pour permettre l’aller/retour entre la table et les intertitres par simple clic, personnaliser l’habillage en CSS ou jouer avec la table en jQuery.

Personnalisation

Il est possible de personnaliser le modèle fourni en surchargeant le fichier modeles/tables_matieres.html

Prérequis

Ce plugin nécessite une version de SPIP récente (révision minimum : 9738, introduction de la balise #FOREACH)

Discussion

24 discussions

  • Il est possible d’utiliser ce plugin en combinaison avec le plugin ancresdouces et bootstrap pour réaliser un menu basé sur les composant affix / scrollspy.

    Pour cela, il faut juste ajouter le modèle suivant dans votre squelette /modeles/table_matieres.html pour l’adapter au marquage HTML/CSS attendu par bootstrap :

    [<div id="tdm" class="divers">
    	<ul class="nav tdm-nav">
    		(#ENV*{code})
    	</ul>
    </div>]

    Répondre à ce message

  • 1

    Bonjour,
    avec TDM 2.2.4 comment surcharger l’image tdm.png pour respecter une charte graphique ?
    j’ai essayé de redéfinir dans mes_fonctions.php le find_in_path() dans le define défine('_RETOUR_TDM, ...) mais rien y fait, c’est toujours l’image du plugin qui semble prioritaire.
    Merci d’avance si vous avez une solution.
    cordialement

    • Bonjour,
      Arf ! il faut simplement placer son image tdm.png dans un répertoire /images/ soit dans /squelettes/images/ , soit dans /plugins/mon_plugin/images/ ou aussi dans /themes/mon_theme/images/.

    Répondre à ce message

  • Bonjour,

    est-ce que quelqu’un saurait comment faire en sorte que la TDM ne s’affiche pas dans les flux RSS des articles ?

    NB pour ceux que ça intéresserai : le fichier de CSS que j’ai placé dans /squelettes/css/style.css

    div.tdm, div#tdm {
      border-top-width: medium;
      border-right-width-value: medium;
      border-bottom-width: medium;
      border-left-width-value: medium;
      border-top-style: none;
      border-right-style-value: none;
      border-bottom-style: none;
      border-left-style-value: none;
      border-image-source: none;
      border-image-slice: 100% 100% 100% 100%;
      border-image-width: 1 1 1 1;
      border-image-outset: 0 0 0 0;
      border-image-repeat: stretch stretch;
      margin-top: 0px;
      margin-right: 18px;
      margin-bottom: 30px;
      margin-left: 18px;
      background-color: #ffffff;
      background-image: none;
      background-repeat: repeat;
      background-attachment: scroll;
      background-position: 0% 0%;
      background-clip: border-box;
      background-origin: padding-box;
      background-size: auto auto;
      padding-top: 5px;
      padding-right: 10px;
      padding-bottom: 5px;
      padding-left: 10px;
      border-top-left-radius: 5px;
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px;
      border-bottom-left-radius: 5px;
      box-shadow:2px 2px 10px gray; 
      -moz-box-shadow:2px 2px 10px gray;
      -webkit-box-shadow:2px 2px 10px gray;
    }
    
    
    div.tdm, div#tdm {
      width: 300px;
      float: right;
    }
    
    div.tdm ul li:before, div#tdm ul li:before {content: "→ ";}

    Répondre à ce message

  • 9

    Hello

    Suite à ce post sur seenthis http://www.seenthis.net/messages/135053 faisant référence à la table des matières flottante de engadget, j’ai codé un petit js pour voir si c’était faisable simplement avec SPIP/jQuery/Plugin Table des matières.

    Le résultat est visible là par exemple : https://technique.arscenic.org/commandes-linux-de-base/article/cron-gestion-des-taches-planifiees

    C’est peut être encore un peu buggué car fait en 2 heures mais si vous trouvez que ça a sa place dans le plugin avec une petite option de conf pour l’activer je peux essayer de rendre un chouilla plus générique ?

    Dites moi

    • t’es sûr que ça marche, je ne vois rien sur ton site ?

    • Oups... le plugin avait été désactivé par mégarde...

      Là c’est mieux ?

    • Sur Firefox oui, ailleurs (Chrome et Safari), apparemment pas

    • Salut,

      j’utilise ce plugin avec Ancres douces et j’ai des comportements bizarres :
      le défilement doux se fait bien lors du premier parcours de mes intertitres (3 en tout) mais, lorsque arrivé en bas, je veux remonter à l’intertitre précédent ou au 1er, je n’ai plus le défilement doux.
      Arrivé là, le défilement doux ne fonctionne plus dans un sens ni dans l’autre pour mes 2 premiers intertitres mais continue à fonctionner le troisième.
      Voir l’exemple par là : http://dev.cousumain.info/spip.php?article1

      En tout cas, merci pour ce plugin.

      jean marie

    • Bon je viens de refaire une grosse partie du js cf : http://zone.spip.org/trac/spip-zone/changeset/73533

      Dis moi si ça marche mieux.

      Chez moi ça semble fonctionner correctement là : https://technique.arscenic.org/monitoring/awstats/article/installation-et-configuration-de

    • Salut Kent1,

      merci pour ta réponse...
      Malheureusement, ça ne marche toujours pas.

      J’ai le même comportement sur ton site :
      En haut de page (Table des matières non flottante), quand je clique sur Configuration de Awstats lui-même ça défile bien (doux) jusqu’en bas.
      Une fois en bas (Table des matières flottante), si je clique sur Installation, je n’ai plus défilement doux et ça remonte d’un coup. A partir de là, ça ne défile plus du tout.
      Par contre, si je recharge la page (F5) avant de cliquer sur Installation, ça défile bien (doux).

      Pour info, je suis sous Win7 et j’ai testé sous Firefox 21, IE9, Chrome 27 et Safari 5.1 et c’est pareil :/

    • Avec http://zone.spip.org/trac/spip-zone/changeset/73537 ça devrait être un peu mieux (même page pour le test)

    • Effectivement, ça marche nickel... merci pour la rapidité !

      Par contre, il y a l’air d’avoir un souci sur le positionnement du contenu au scroll : l’intertitre ciblé se retrouve sous la table flottante...

      Et penses-tu que ce décalage puisse être configuré ?
      Je m’explique : j’aimerais que les entrées de la table soient toutes visible en permanence et présentées horizontalement lorsque la table est flottante (display:inline). Je trouve que c’est plus intuitif que de devoir cliquer sur l’intertitre de ce qu’on est en train de lire pour la déplier.
      J’ai un peu bidouillé dans le scripts... mais c’est pas terrible de bidouiller dans les scripts.
      Oui, je sais, on s’éloigne du fonctionnement original, tu as le droit de dire m..... enfin, non :)

    • Un truc qui serait bien aussi, c’est que dans la Table flottante, il y ait un lien Haut de page qui pointe sur #contenu pour remonter au niveau du titre.
      Sinon, il faut obligatoirement que le contenu commence par un intertitre et ça pose des problèmes si il y a un chapeau par exemple.

    Répondre à ce message

  • 4

    Bonjour,

    Il semblerait que les liens générés dans la table des matières ait un peu mal avec les urls arborescentes. Avec les urls standard tout fonctionne correctement :

    Exemple :

    Url correcte vers un paragraphe de l’article, générée par TDM, avec les urls standard :

    http://www.milly-la-foret.fr/spip.php?article2122#Vous-souhaitez-apprendre-a

    Lien vers le même paragraphe, généré automatiquement par le plugin TDM, mais avec les urls arbo activées :

    http://www.milly-la-foret.fr/#Vous-souhaitez-apprendre-a

    Alors que la bonne url vers ce paragraphe devrait être :

    http://www.milly-la-foret.fr/vivre-a-milly-3/action-sociale/article/seniors-personnes-agees#Vous-souhaitez-apprendre-a

    Du coup, les liens amènent vers une page 404.

    Pour info, ma config d’urls arborescentes :

    $GLOBALS['url_arbo_types']=array(
    	'rubrique'=>'',
    	'article'=>'',
    	'mot'=>'tags'
    );

    Avez-vous une idée pour résoudre ce problème de liens ?

    Merci par avance ;-)

    Répondre à ce message

  • Bonjour,

    Est-il possible de désactiver la table des matières au cas par cas par exemple avec une balise genre
    {table_matieres=non} dans le texte d’un article ?

    merci

    dd

    Répondre à ce message

  • 5

    Un grand merci pour ce plugin.

    J’ai un peu modifié son contenu car j’avais besoin d’une table des matières pour le #CHAPO.
    J’ai donc créé une balise #TABLE_MATIERES_CHAPO

    Pour cela j’ai ajouté les lignes suivants :
    1- Dans le fichier tdm_pipelines.php

    $interface['table_des_traitements']['TABLE_MATIERES_CHAPO'] = 'table_matieres(%s, \'tdm\')';

    2- dans le fichier table_matieres.php (à la racine du plugin)

    function balise_TABLE_MATIERES_CHAPO_dist($p) {
    	$b = $p->nom_boucle ? $p->nom_boucle : $p->descr['id_mere'];
    	if ($b === '') {
    		erreur_squelette(
    			_T('zbug_champ_hors_boucle',
    				array('champ' => '#TABLE_MATIERES')
    			), $p->id_boucle);
    		$p->code = "''";
    	} else {
    		$_chapo = champ_sql('chapo', $p);
    		$p->code = "$_chapo";
    	}
    	return $p;
    }

    Du coup, j’ai trouvé une erreur dans le code de la fonction « tdm_vider_intertitres » qui permet de vider le cache des intertitres trouvés.
    Toujours dans le fichier table_matieres.php ligne 227 il faut modifier...

    if($vider_table) return ($table = array());

    ...par

    if($vider) return ($table = array());
    • Peux-tu faire les corrections directement sur la zone ? merci

    • Ok. Je m’en occupe.

      Tant qu’a faire, j’ai une proposition. J’ai également sur ce site le plugin « Enluminures typographiques ». Les sous-interttires genre...

       {{{** sous-intertitre-niveau 2}}} 

      ...ne sont que partiellement pris en compte ce qui provoque un effet de bord indésirable.

      J’ai rajouté dans le fichier table_matieres.php (ligne 143) le code ci-dessous qui permet de shunter ces sous-intertitres et donc de rendre la coexistence de ces deux plugins compatibles.

      Avant...

      "/{{{(.*)}}}/UmsS" => 'tdm_remplacement_raccourcis_standard_callback'

      ....après

      "/{{{[^*](.*)}}}/UmsS" => 'tdm_remplacement_raccourcis_standard_callback'

      ...et ça marche bien.

      Je commit le bug et cet ajout, où juste le bug ?

    • Il n’est pas nécessaire de demander la permission :)
      Surtout si ça marche mieux

    • D’abord, merci pour ce plugin qui permet de structurer proprement des documents longs simplement et efficacement.

      @peetdu

      merci pour le tips, curieusement chez moi en spip 3.0.1, avec Enluminures c’est plus sans (.*) :

      ce qui donne
      "/{{{[^*]}}}/UmsS" => 'tdm_remplacement_raccourcis_standard_callback'

    • Non rectification, ça me bouffe le premier caractère de tous les titres de la table si il n’y a pas d’espace après la dernière astérixsme * {{{** Titre }}} qui est bizarre car les boutons ne crée pas les raccourcis ainsi dans le porte plume :/

    Répondre à ce message

  • 3

    J’ai SPIP 2.1.12 avec la dernière version de ce plugin. Il y a un article sur lequel je ne parviens pas à faire apparaître la table des matières dans la partie publique. Elle se crée pourtant bien dans la partie privée. Je ne comprends pas ! Je ne vois aucune différence entre les deux articles qui pourrait causer cette bizarrerie.
    Une idée ???
    Merci

    • Pour plus de précision, j’ajoute que j’utilise le squelette AHUNTSIC.

    • J’ai trouvé d’où venait le problème et une solution qui marche (sans malheureusement totalement corriger le plugin lui même)

      Il faut éditer le fichier « table_matieres.php » (celui qui se trouve à la racine du plugin) et ligne 289 à 290 il faut remplacer ...

      $_table = inserer_attribut('<div class="encart"></div>',
      			'rel', $_table)

      ..par

      $_table =  $_table
    • Ce code sert à insérer la TDM en javascript ; si tu le neutralises (tu peux mettre un # pour passer la ligne en question en commentaire), ta TDM est insérée en HTML. Il faudrait donc comprendre pourquoi l’insertion en javascript ne se fait pas dans ton cas.

    Répondre à ce message

  • En Spip 2.1.12, table des matières 2.0.2 [54334], la table des matières générée automatiquement fonctionne bien mais le texte de l’article n’est pas traité si on place soi-même la balise #TABLE_MATIERES dans le squelette (cfg : « La table des matières est-elle générée automatiquement ? » : non).

    Pour y remédier rapidement, j’ai passé les filtres |table_matiere{texte}|propre à la balise #TEXTE* :

    [(#TEXTE*|table_matieres{texte}|propre)]

    Mais j’imagine que le plugin devrait tester la variable de configuration : si _AUTO_ANCRE est oui, on applique le filtre table_matieres au texte ; sinon on l’applique tout de même, avec le paramètre ’texte’ (le filtre ne retourne alors que le texte traité, donc, avec les ancres).

    Dans tdm_pipelines.php, remplacer :

    	if (_AUTO_ANCRE == 'oui') {
    		$traitements_actuels =
    			isset($interface['table_des_traitements']['TEXTE']['articles'])
    				? $interface['table_des_traitements']['TEXTE']['articles']
    				: $interface['table_des_traitements']['TEXTE'][0];
    				
    		// completer les traitements actuels, mais le sommaire automatique passe en preum's
    		$interface['table_des_traitements']['TEXTE']['articles'] =
    			str_replace('%s', 'table_matieres(%s)', $traitements_actuels);
    	}

    par :

    	// traiter les articles
    	$traitements_actuels =
    		isset($interface['table_des_traitements']['TEXTE']['articles'])
    			? $interface['table_des_traitements']['TEXTE']['articles']
    			: $interface['table_des_traitements']['TEXTE'][0];
    	//si le sommaire automatique est actif, on ajoute la table des matières et les ancres
    	if (_AUTO_ANCRE == 'oui') $filtre_tdm = 'table_matieres(%s)';
    	// sinon, que les ancres
    	else $filtre_tdm = 'table_matieres(%s,\'texte\')';
    
    	// completer les traitements actuels, mais le sommaire automatique passe en preum's
    	$interface['table_des_traitements']['TEXTE']['articles'] =
    		str_replace('%s', $filtre_tdm, $traitements_actuels);

    Répondre à ce message

  • Pour ma part, j’ai un comportement bizarre sous SPIP 2.1.8 :
    La balise #TABLE_MATIERE me renvoit un code qui est échappé, genre :

    <div class="encart" rel='&lt;div id=&quot;tdm&quot; class=&quot;divers&quot;&gt; &lt;h2 class=&quot;menu-titre&quot;&gt;Table des matières&lt;/h2&gt; &lt;ul&gt; &lt;li &gt;&lt;a href=&#39;

    Je suis obligé de passer par un filtre maison en PHP qui me fait :
    $tdm = htmlspecialchars_decode($tdm, ENT_QUOTES) ;
    $tdm = str_replace(« rel=’ », ’>’, $tdm) ;
    $tdm = str_replace("

    ’>

    ", ’

    ’, $tdm) ;
    return $tdm ;

    Et là ça marche...

    Je ne pense pas que ce soit normal. Quelqu’un s’est-il déjà frotté à ce problème ?

    Autre problème, si je ne spécifie pas l’option « La table des matières est-elle générée automatiquement ? » à Oui, le plugin ne met pas les ancres dans le #TEXTE.
    J’ai dû aller retoucher le code du plugin pour ne pas afficher 2 fois la TDM.
    Ca pourrait être une histoire de version de SPIP ??
    Camille

    Répondre à ce message

  • 1

    Bizarre, mais :
    -  soit le sommaire est « généré automatiquement » et alors il y a bien les ancres sur les h3 mais la table des matières n’apparaît pas
    -  soit le sommaire est généré et placé avec #TABLE_MATIERE et alors il n’y a plus d’ancres sur les h3 ! (par contre la tdm apparait bien)...

    ...sur uune spip 2.1.2

    • j’ai finalement trouvé une config ’automatique’ qui donne tdm et liens,... mais la tdm n’est pas à l’endroit souhaité.

      C’est peut être que TDM et #TEXTE ne sont pas dans la même noisette.

    Répondre à ce message

  • 1

    Hello !

    Super plugin que j’utilise de manière assez généralisée à dire vrai seulement j’ai quand même un petit soucis avec lui, c’est la génération forcée de titre h3.spip

    En effet, j’utilise la BTE de porte plume et j’avais, suivant quelques recommandations d’accessibilité, arbitrairement décrété que dans mon site, les {{{titre}}} me génèreraient du <h2 class="h2">titre</h2>

    Ya t’il un moyen d’intervenir sur cette génération de manière à ce qu’elle ne rentre pas en conflit avec la BTE ? J’ai regardé un peu le code mais je ne trouve pas à quel endroit jouer du bigniou pour que ca marche à peu près comme je veux... :-x

    Merci pour tout retour ;)

    • Ça me génère avec :

      $GLOBALS['debut_intertitre'] = '<h2 class="spip">';
      $GLOBALS['fin_intertitre'] = '</h2>';

      Des :

      <h2 class="h3 spip"> ... </h2>

      Ça semble correct (avec Zpip)

    Répondre à ce message

  • Je viens d’effectuer quelques modifications du plugin (version 1.1)

    • correction pour (re)prendre en compte le nombre minimal d’intertitre
    • éviter le fichier options en utilisant un pipeline prévu par SPIP 2 (nécéssite donc maintenant SPIP 2.0) (La version 1.0 précédente utilisable en 1.9.2 est tagguée ici : http://zone.spip.org/trac/spip-zone/browser/tags/table_matieres-1.0 , un zip sera créé également)

    Répondre à ce message

  • 1

    Bonjour,

    Cette magnifique contrib comporte 2 bugs (SPIP 2.1.1) :

    1. la table des matières apparaît en double, générée deux fois ;
    2. le nombre mini d’intertitres pour que la table des matières apparaisse (configurable via CFG) n’est pas pris en compte : dès qu’un intertitre est présent, la table des matières est générée.

    C’est vraiment dommage car cette contrib est la plus aboutie dans sa catégorie !

    • Matthieu Moy

      Pour l’affichage en double, j’ai pareil, mais en fait, c’est que contrairement à ce que dit l’article, même si on n’a pas de #TABLE_MATIERE, la table est générée en début d’article. Si je met un #TABLE_MATIERE dans mon squelette, j’en ai deux !

    Répondre à ce message

  • 2

    Bonjour

    En version SPIP 2.0, la noisette des matieres est chargée automatiquement dans toutes boucles artciles faisant appel à #TEXTE

    Comment peux ton le desactiver au cas par cas ?

    Cas d’utilisation, une page sommaire qui liste afficher les X derniers articles.

    Répondre à ce message

  • j’ai voulu désactiver table des matières, car à l’usage, ca ne me semblait pas pertinent sur un site aux articles courts, et malgré mon paramétrage à 4 titres, il continue à se déclencher pour 1 seul titre..

    surprise, en désactivant, j’ai plein d’erreur d’affichage bizarres..

    y-a-t-il une procédure particulière pour le faire ???

    pam

    Répondre à ce message

  • 2

    Je viens de remarquer que l’activation de la TDM provoque l’apparition dans le portfolio de tous les documents de l’article, qui n’y figurent pas sans la TDM. Les {doublons} ont donc sauté...

    • le texte est traité par propre() deux fois. Est-ce que ça peux venir de là ?

    • Je viens de rétablir les doublons, en insérant plus finement le code de la TDM dans les traitements. Toutefois ça marche en local ... mais pas en ligne, il reste donc un peu de boulot pour s’assurer que c’est bien compatible partout.

    Répondre à ce message

  • 2

    je l’utilise sur http://blog.mondediplo.net/2007-11-...

    est-il possible de faire que ça fonctionne si on ne démarre pas par un {{{intertitre}}} ? ça permettrait d’éviter de répéter le titre de l’article

    • J’imagine que oui, sans doute. C’est déjà conditionné par le nombre d’intertitres présent dans le texte, nombre qui est paramétrable.

      il faudrait que le #TEXTE ne commence pas par {{{ ?

    • Ahhh, c’est ça ! J’avais mal compris : comme j’avais remarqué la disparition de la TDM quand j’enlevais le premier intertitre, je croyais que c’était parce qu’il fallait commencer par un inter ; mais en fait c’est parce qu’il n’en restait plus que deux. Donc ça répond à ma question :)

    Répondre à ce message

  • 4

    S’lt

    J’essaye d’utiliser TDM (recupéré ce jour sur http://files.spip.org/spip-zone/) sur une SPIP 1.9.2a [8878]

    Or je n’ai pas encore mis de #TABLE_MATIERES dans mon squelette et pourtant je constate des coté affichage public :

    Table des matières
    {TDM}

    Dans mon cas, je souhaite compliquer le truc en passant par un modele article_tdm.html. Ceci pour que les redacteurs puissent choisir les articles à TDMisé.
    Et pareil j’obtiens le meme affichage bizarre.

    • Salut,

      En bas de l’article, je précise les prérequis pour utiliser cette contrib (version de developpement, revision minimum, utilisation de la balise #FOREACH) :)

    • S’lt

      Merci pour l’info, en fait c’est au moins SPIP 192c (soit svn 10268).
      Toujours le pb des correspondances entre svn et version officielle :)

    • Non, c’est pas dans la branche 1.9.2. c’est pour une version de développement (1.9.3 svn quoi, si tu préfères)

    • Bizarre, je ne suis qu’en versions « officielles », et je suis sur de l’avoir utilisée sur une 1.9.2(a ou b).
      Et aujourd’hui : impossible d’avoir l’affichage correct : juste le TDM !

      Pourtant je n’avais pas modifié les squelettes (pas de balise #TABLE_MATIERE ), et j’ai vérifié qu’il n’y a aucune modif du source « table-des-matières » depuis le 6 IX 2007.

      Encore un « mystere de l’informatique » je suppose..
      Yx

    Répondre à ce message

  • 7

    Je note ceci pour ne pas oublier car je n’aurais pas le temps de creuser le problème dans les jours à venir.

    Je ne suis pas sur que « tables des matières » soit en cause (car j’ai pu avoir touché à d’autres choses aussi), mais disons que de manière concomitante avec sa mise en service il est apparu sur SPIP-Contrib :

    -  un doublement des notes de bas de page

    -  un comportement curieux du flux rss du site, à savoir que le texte du dernier article publié, ou plus précisément tout ce qui est après des ancres de table des matières, se substitue aux textes de tous les articles précédents dans le flux rss (après les ancres des TdM) ... du moins tel que je le lis chez moi. Ce qui est avant ces ancres n’est pas touché.

    @+ NicolasR

    • Gloups :/

      Pour les notes, je ne pense pas que ce soit lié à ce plugin, mais sait-on jamais, je ferai une passe de vérification.

      Par contre, pour le second soucis, c’est bien possible que la table soit en cause. J’essaie d’économiser les ressources du serveur, et il se peut que parfois, ce soit trop.

      Comme toi, je n’ai pas des masses de temps pour les jours à venir, mais je vais tenter de regarder ça ce Week-End

    • Bon, a priori, je ne reproduis pas le bug des notes de bas de page. Et ni sur mes sites de tests ni sur spip-contrib, je ne constate d’erreur d’affichage dans les flux rss.

      Tiens moi au courant en cas de besoin pour trouver l’orgine de ces bugs-là :)

    • Salut James
      il est possible (mais pas certain) que le problème soit lié à la configuration particulière de SPIP-Contrib. Pour ce qui est de l’erreur de flux rss moi je le vois bien ... peut-il y avoir aussi une influence du lecteur RSS utilisé ?

      Quoiqu’il en soit, pour test, j’ai désactivé tdm, vidé le cache, et les problêmes que je cite disparaissent vus depuis chez moi .... il y a donc bien un lien avec la présence de tdm, mais sans qu’il soit sur qu’il soit seul en cause : des interactions avec autre chose ? mystère

      @+ NicolasR

    • bon :/

      Je vais reprendre ça, j’ai du raté quelquechose.
      Je te tiens au courant

    • Bien j’ai mis en service la 14611 du 15 août, vidé le cache de site au cas ou, compte-rendu de ce que je vois chez moi

      Les mieux :
      -  plus de doublon des notes de bas de page
      -  le backend de chaque article semble respecté

      Les moins :
      -  une table des matières apparait en force « dans » le texte, en plus de celle que l’on à défini avec la balise (et de manière étonnante en reprenant des éléments de styles mais en plus petit)
      -  cette tdm parasite apparait aussi dans le flux rss, avec un détail très raffiné, à savoir qu’elle copile la tdm de plusieusr articles .. la classe quoi ;-)

      @+ NicolasR

    • heu !! ... j’ai l’impression qu’en plus dorénavant le portfolio des documents présents dans le corps de l’article apparait, alors que normalement il ne devrait pas (du moins je n’ai pas souvenir qu’il apparaissait avant sur SPIP-Contrib)

      @+ NicolasR

    • rhaaaaaaaaaa

    Répondre à ce message

  • 2

    Ok avec la 1.9.3 ca fonctionne, mais dès qu’on met du Latex, ca plante ....
    La table des matières est opérationnelle mais le tex est déterioré ....
    En voici le Code

    {{{Bug Majeur}}}
    <math>
    $$
    \begin{array}{ccl}
    |x_n-x_*|&=&|g(x_{n-1})-g(x_*)|=|g'(\xi_{n-1})||x_{n-1}-x_*|\leq\tau|x_{n-1}-x_*|\\
    |x_n-x_*|&\leq&\tau|x_{n-1}-x_*|\leq\tau^2|x_{n-2}-x_*|\leq\ldots\leq\tau^n|x_{0}-x_*|
    \end{array}
    $$
    </math>

    Sans le plugin activé le tex est nickel, avec le tex est détérioré ...

    Cordialement

    • J’ai une parade, mais...

      dans le fichier table_matieres.php, ligne 45, si je mets '(code|cadre|math', ça retabli effectivement le tex... mais si on met du texte avec des accolades dans la balise <math>, ça ne comptera pas dans la table des matières.

      Je met ça pour le moment, en attendant de trouver, si c’est utile, un truc meilleur.

    • C’est corrigé avec la révision 14401 du plugin. Merci de me confirmer le fonctionnement attendu.

    Répondre à ce message

  • 2

    Cette contrib’ me rappelle beaucoup « Génération automatique de numérotation, table des matières et références » de Mortimer et Chtitux...

    Serait-il possible d’améliorer cette nouvelle « table des matières » en lui faisant gérer, comme l’ancienne, des niveaux de titres (et donc introduire des raccourcis typo, à cette occasion...) ?

    Répondre à ce message

  • 3

    j’ai installé le plugin et j’ai mis la balise

    #TABLE_MATIERES

    dans une boucle
    ARTICLE
    Les ancres sont opérationnelles mais la table des matières n’est pas produite
    j’obtient en lieu et place de la table ce qui suit :

    Table des matières
    
          {TDM} 
    
     
    • La version utilisée : SPIP 1.9.2a [8878]
      Le plugin : le dernier ... télécharger aujourdhui

    • idem

      je ne vois qur #tdm au lieu et palce de la table des matières

      1.9.2 b

      alors que les intertitres fonctionnent bien !

      .????????????????

    • c’est la version 1.9.3 (9738) qu’il faut avoir...pas la 1.9.2

    Répondre à ce message

  • Juste pour dire que la table des matieres vient d’être très facilement installée sur SPIP-Contrib (1.9.3 SVN 9813). Apparemment ça marche ;-)

    Peut-être faudrait-il mieux expliquer dans l’article quel est le style employé, et comment le modifier s’il y a lieu.

    @+ NicolasR

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom