<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>unicode — Forum de PluXml</title>
        <link>https://forum.pluxml.org/index.php?p=/</link>
        <pubDate>Mon, 06 Apr 2026 21:44:10 +0000</pubDate>
        <language>fr</language>
            <description>unicode — Forum de PluXml</description>
    <atom:link href="https://forum.pluxml.org/index.php?p=/discussions/tagged/unicode/feed.rss" rel="self" type="application/rss+xml"/>
    <item>
        <title>[plugin] PLX-cssBackSlash (pour l'edition des fichiers en backend)</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6960/plugin-plx-cssbackslash-pour-ledition-des-fichiers-en-backend</link>
        <pubDate>Fri, 09 Apr 2021 12:20:20 +0000</pubDate>
        <category>Vos créations</category>
        <dc:creator>gcyrillus-nomade</dc:creator>
        <guid isPermaLink="false">6960@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour aux utilisateurs de PluXml  <img src="https://forum.pluxml.org/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>

<p>En éditant les fichiers CSS du théme en cours , j'ai découvert que tout mes Unicode étaient nettoyé de leur backslash.</p>

<p>J'ai donc ajouté devant un caractère d’échappement pour les préservés, ce qui équivaut a transformé tout les "&#92;" en "&#92;&#92;". Aprés quelques éditions, c'est juste agaçant.</p>

<p>Ce petit plugin vous évite une prise de tête inutile. <a href="https://github.com/gcyrillus/PLX-cssBackSlash" rel="nofollow">https://github.com/gcyrillus/PLX-cssBackSlash</a></p>

<p>MAJ 02-22<br />
MAJ 10-23 voir la réponse suivante pour les détails qui ne concerne que le js. Adresse repo inchangé mais branche v2.0</p>

<p>js</p>

<pre><code>(function () {
    window.onload = function() {
        let txtA = document.querySelectorAll('[name="title"],[name="chapo"],[name="content"]');

        for (i=0;i&lt;txtA.length;i++){  
          if(txtA[i].tagName == 'INPUT'){
            let content = txtA[i].value;
            txtA[i].value=  escapeRegex(content); 
          }
          else {  let content = txtA[i].innerHTML;
            txtA[i].innerHTML=  escapeRegex(content); 
          }                 
        }
        function escapeRegex(string) {  
            return string.replace(/[\\]/g, '\\$&amp;');
        }
    }

})();

</code></pre>

<p>et les hooks utilisés (edition feuille de style, page statique et article )</p>

<pre><code>#Ajoute un caractére d'échappement devant chaque \ trouvé dans une feuille de style
public function AdminSettingsEdittplFoot() {
echo self::BEGIN_CODE;
?&gt;
$plgPlugin = $plxAdmin-&gt;plxPlugins-&gt;aPlugins['&lt;?= __CLASS__ ?&gt;'];
if(substr($tpl, strrpos($tpl, '.') + 1) =='css')    echo  '&lt;script src="'.PLX_PLUGINS . '&lt;?= __CLASS__ ?&gt;/js/&lt;?= __CLASS__ ?&gt;.js"&gt;&lt;/script&gt;';
&lt;?php
echo self::END_CODE;
 }

        #Ajoute un caractére d'échappement devant chaque \ trouvé dans une page static
        public function AdminStaticFoot() {
            echo self::BEGIN_CODE;
?&gt;
$plgPlugin = $plxAdmin-&gt;plxPlugins-&gt;aPlugins['&lt;?= __CLASS__ ?&gt;'];
echo  '&lt;script src="'.PLX_PLUGINS . '&lt;?= __CLASS__ ?&gt;/js/&lt;?= __CLASS__ ?&gt;.js"&gt;&lt;/script&gt;';
&lt;?php
            echo self::END_CODE;
        }

        #Ajoute un caractére d'échappement devant chaque \ trouvé dans une page article
        public function AdminArticleFoot() {
            echo self::BEGIN_CODE;
?&gt;
$plgPlugin = $plxAdmin-&gt;plxPlugins-&gt;aPlugins['&lt;?= __CLASS__ ?&gt;'];
echo  '&lt;script src="'.PLX_PLUGINS . '&lt;?= __CLASS__ ?&gt;/js/&lt;?= __CLASS__ ?&gt;.js"&gt;&lt;/script&gt;';
&lt;?php
            echo self::END_CODE;
        }
</code></pre>

<p>cdt,<br />
GC</p>
]]>
        </description>
    </item>
   </channel>
</rss>
