On ajoute cache-client sur le cache de ces fichiers. C'est presque suffisant, mais il faut aussi les recalculer lorsqu'un plugin qui modifie les fichiers
de porte-plume s'active ou se désactive. Du coup, on calcule un hash et un fond statique pour ces 2 fichiers, qui dépend du code variable de ces fichiers.
Bon du coup on peut éviter quelques hits sur le serveur, mais la contrepartie, c'est qu'il faut calculer ces hash, parfois inutilement j'imagine, au calcul d'une page.
À voir.
différents fix avec php-cs-fixers. Fixers appliqués ici :
'encoding', // utf8
'eof_ending', // un saut de ligne en fin de fichier
'elseif', // elseif plutôt que else if
'function_call_space', // espaces sur fonctions
'function_declaration', // espaces sur fonctions
'function_typehint_space', // espaces sur fonctions
'linefeed', // sauts de ligne \n uniquement
'lowercase_constants', // true, false, null en munuscule
'lowercase_keywords', // mots clés PHP en lowercase
'method_argument_space', // espaces sur appels de fonctions
'multiple_use', // use unique sur fonctions anonymes
'newline_after_open_tag', // ouverture de php… et c'est tout sur cette ligne
'operators_spaces', // espaces de part et d'autres des opérateurs binaires
'parenthesis', // pas d'espace juste après parenthèse ouvrante, ou avant parenthèse fermante
'php_closing_tag', // pas de fermeture de php
'short_tag', // tag PHP corrects
'trailing_spaces', // pas d'espace qui traîne en fin de ligne
'visibility', // déclarer 'public / private / protected' sur les méthodes
La structure foreach change de comportement et s'applique par défaut sur une copie du tableau passé.
Si on modifie le tableau dans le foreach… bien celui d'origine n'est pas affecté. Pour retrouver
le comportement d'avant dans ces cas là, il faut passer la valeur par référence.
cf.
https://wiki.php.net/rfc/php7_foreachhttp://php.net/manual/fr/migration70.incompatible.php
Quand un plugin fournit un chemin complet vers une image, l'utiliser telle quelle.
Si le find_in_path ne donne pas de resultat, ne pas inserer la regle CSS background:url() car cela provoque des chargements de page parasite dans certains navigateurs
Markitup prenant à peu près en charge les boutons multiligne, on se base maintenant dessus pour les notres : forceMultiline devient multiline dans la déclaration des boutons.
On change de technique pour ce qui est du calcul les sélections (sélectionner toute une ligne, tout un mot, au plus proche d'une sélection ou du curseur) : avec les dernières évolutions de Markitup, seul IE se permet des folies. On ne traite donc que le cas IE spécifiquement, et on laisse Markitup gérer les calculs de position du curseur. Du coup, il y a moins de modifications du code de Markitup.
On n'utilise plus la librairie XRegExp qui ne semble plus utile pour nos calculs d'expressions régulières.
Testé avec : FF6, IE8, Opera11.52, Chromium 12.0