Changeset 84654 in spip-zone


Ignore:
Timestamp:
Sep 15, 2014, 6:22:50 AM (5 years ago)
Author:
cedric@…
Message:

Prise en charge des formules mathématiques : <math> était traité par echappe_html à tort et échappé depuis http://core.spip.org/projects/spip/repository/revisions/21273 alors que ce n'est qu'un activateur de l'interpreteur de formules TeX et pas un baliseur de blocs. Dans les <math>...</math> on doit traiter normalement les raccourcis SPIP ET en plus les formules TeX.
On prend donc en charge cette fonctionnalité dans spip.yaml, en tout premier traitement, avec un test fonctionnel associé.

Cela corrige et rétablit le fonctionnement de <math> tel que documenté, au détail près que les raccourcis de liens sont traités avant les formules mathématiques : si une formule mathématique contient une syntaxe qui s'apparente à un lien SPIP (ou une URL), elle sera corrompue par le traitement des raccourcis de liens.
A voir si cela peut effectivement arriver ou est totalement théorique.

Location:
_core_/plugins/textwheel
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/textwheel/paquet.xml

    r84612 r84654  
    22        prefix="tw"
    33        categorie="edition"
    4         version="0.9.20"
     4        version="0.9.21"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
  • _core_/plugins/textwheel/wheels/spip/spip.php

    r69949 r84654  
    99if (!defined('_ECRIRE_INC_VERSION')) return;
    1010
     11include_spip('inc/texte');
    1112
     13/**
     14 * Callback pour les <math></math>
     15 * Gestion du TeX
     16 *
     17 * @param string $t
     18 * @return string
     19 */
     20function replace_math($t) {
     21        if (!function_exists('traiter_math'))
     22                include_spip('inc/math');
    1223
    13 include_spip('inc/texte');
     24        $t = traiter_math($t, '');
     25        return $t;
     26}
    1427
    1528/**
  • _core_/plugins/textwheel/wheels/spip/spip.yaml

    r84591 r84654  
    22    #
    33    # Si on nomme une regle, elle devient surchargeable
     4
     5math:
     6  if_str: "<math>"
     7  type: all
     8  is_callback: y
     9  replace: "replace_math"
     10  priority: -50 # en tout premier : le contenu des formules math ne doit pas etre modifie
    411
    512traiter_retours_chariots_1:
Note: See TracChangeset for help on using the changeset viewer.