Forum CMS Made Simple FR
WebApps : un site avec du code + coloration syntaxique - Version imprimable

+- Forum CMS Made Simple FR (https://www.cmsmadesimple.fr/forum)
+-- Forum : Général (https://www.cmsmadesimple.fr/forum/forum-3.html)
+--- Forum : Vous, vos sites ... (https://www.cmsmadesimple.fr/forum/forum-7.html)
+--- Sujet : WebApps : un site avec du code + coloration syntaxique (/thread-3103.html)



WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

Bonjour à tous,

après avoir goûté typo3, je viens de (re)découvrir CMS Made Simple qui est, il me semble, lui aussi plein de possibilités, ... avec la SIMPLICITÉ en plus.
Alors voila, je viens de faire un premier essai avec ce site dont le but est de proposer du code source :

webapps.ceck.org/index.php

et je ne compte pas m'arrêter là...

Juste pour info.
Bonne journée et @ bientôt

PS : je ne suis pas autorisé à mettre un lien - désolé.


WebApps : un site avec du code + coloration syntaxique - Jean le Chauve - 03/02/2014

Je te mets le lien (privilège des anciens Wink) webapps.ceck.org/index.php
Content de voir que tu apprécies la simplicité de l'outil.
N'hésite pas à poster dans trucs et astuces si tu as des codes qui pourraient intéresser la communauté.

Es-tu sur le même serveur que http://www.ceck.org/ car cmsms est nettement plus rapide à s'afficher que le typo3 ?


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

Oui je suis sur le meme serveur.
Avec un hébergement chez o2switch.
Effectivement, mon site ceck.org (qui tourne avec typo3) est souvent très lent,
alors que webapps (avec CMS Made Simple) est nettement plus rapide à s'afficher.

Encourageant !
Encore merci pour vos tutoriels grâce auxquels j'ai pu retravailler mon gabarit pour les pages de codes (avec onglet supplémentaire).

OK pour les trucs et astuces, je vais essayer de m'en rappeler.


WebApps : un site avec du code + coloration syntaxique - Jean le Chauve - 03/02/2014

Tu devrais lire ce post : http://www.cmsmadesimple.fr/forum/viewtopic.php?id=5259 concernant l'intégration de code source dans ta page http://www.webapps.ceck.org/sgc-cms/cms-made-simple/aide-gabarits-cmsms


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

Oui, intéressant, il faut échapper certains caractères pour qu'ils ne soient pas interprétés par CMSMS.
Remplacer les < par &lt; - ainsi que les > par &gt;
les accolades ouvrantes { par { - ainsi que les accolades fermantes } par }

C'est bizarre, dans une page avec un script PHP, il ne me donne que les n° de ligne 0 à 2.
Même en échappant le dollar, ça ne change rien...


WebApps : un site avec du code + coloration syntaxique - Jean le Chauve - 03/02/2014

En fait, tu n'as pas à échapper les caractères spéciaux, il te suffit d'écrire {literal} code {/literal} pour que le code ne soit pas interprété par le moteur smarty. Il n'y a que dans certains cas que tu dois échapper : si le code lance une function JS, ou que le code comprend {literal} à ne pas interpréter...


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

Je viens d'essayer avec {literal}{/literal} mais ça ne marche pas Sad


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

En fait, il faut que je remplace les < > { } par leur équivalents ASCII ou &xx;
et la ça marche :

Code :
[== Indéfini ==]
<pre class="line-numbers" data-start="0"><code class="language-php">
&lt;?php
/* Tirage du loto */
$num1 = mt_rand(1, 49);
time_nanosleep(0, $num1 * 1000) ;
$num2 = 0 ;
while (($num2 == $num1) or ($num2 == 0)) {
    $num2 = mt_rand(1, 49);
}
time_nanosleep(0, $num2 * 1000) ;
$num3 = 0 ;
while (($num3 == $num1) or ($num3 == 0) or ($num3 == $num2)) {
    $num3 = mt_rand(1, 49);
}
time_nanosleep(0, $num3 * 1000) ;
$num4 = 0 ;
while (($num4 == $num1) or ($num4 == 0) or ($num4 == $num2) or ($num4 == $num3)) {
    $num4 = mt_rand(1, 49);
}
time_nanosleep(0, $num4 * 1000) ;
$num5 = 0 ;
while (($num5 == $num1) or ($num5 == 0) or ($num5 == $num2) or ($num5 == $num3) or ($num5 == $num4)) {
    $num5 = mt_rand(1, 49);
}
time_nanosleep(0, ($num5 + 24.5) * 1000) ;
$numC = mt_rand(1, 10);
$num_img = mt_rand(1, 12);
if ($num_img < 10) $img = "0".$num_img ;
else $img = $num_img ;
?&gt;
</code></pre>



WebApps : un site avec du code + coloration syntaxique - Jean le Chauve - 03/02/2014

Je crois que tu as placé le {literal} après les commentaires de début : <!--?php car on peut voir que le code (avec literal) n'est pas affiché car il est en commentaires sur ta page.


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

Voilà un copié-collé du bloc de code que j'ai mis dans la page "jeu-de-loto" (avec literal) :

Code :
[== Indéfini ==]
<pre class="line-numbers" data-start="0"><code class="language-">
{literal}
<?php
// Tirage du loto
$num1 = mt_rand(1, 49);
time_nanosleep(0, $num1 * 1000) ;
$num2 = 0 ;
while (($num2 == $num1) or ($num2 == 0)) {
    $num2 = mt_rand(1, 49);
}
time_nanosleep(0, $num2 * 1000) ;
$num3 = 0 ;
while (($num3 == $num1) or ($num3 == 0) or ($num3 == $num2)) {
    $num3 = mt_rand(1, 49);
}
time_nanosleep(0, $num3 * 1000) ;
$num4 = 0 ;
while (($num4 == $num1) or ($num4 == 0) or ($num4 == $num2) or ($num4 == $num3)) {
    $num4 = mt_rand(1, 49);
}
time_nanosleep(0, $num4 * 1000) ;
$num5 = 0 ;
while (($num5 == $num1) or ($num5 == 0) or ($num5 == $num2) or ($num5 == $num3) or ($num5 == $num4)) {
    $num5 = mt_rand(1, 49);
}
time_nanosleep(0, ($num5 + 24.5) * 1000) ;
$numC = mt_rand(1, 10);
$num_img = mt_rand(1, 12);
if ($num_img < 10) $img = "0".$num_img ;
else $img = $num_img ;
?>
{/literal}
</code></pre>

Les balises pre et code sont indispensables pour que prism fonctionne.

Sinon, bon appêtit, y'a ma femme qui m'appelle pour manger...


WebApps : un site avec du code + coloration syntaxique - Jean le Chauve - 03/02/2014

Quand je regarde le code source de ta page, je vois le php en commentaires :
Code :
[== Indéfini ==]
<h2>avec literal</h2>
        <pre class="line-numbers" data-start="0"><code class="language-">

<!--?php
// Tirage du loto
$num1 = mt_rand(1, 49);
time_nanosleep(0, $num1 * 1000) ;
$num2 = 0 ;
while (($num2 == $num1) or ($num2 == 0)) {
    $num2 = mt_rand(1, 49);
}
time_nanosleep(0, $num2 * 1000) ;
$num3 = 0 ;
while (($num3 == $num1) or ($num3 == 0) or ($num3 == $num2)) {
    $num3 = mt_rand(1, 49);
}
time_nanosleep(0, $num3 * 1000) ;
$num4 = 0 ;
while (($num4 == $num1) or ($num4 == 0) or ($num4 == $num2) or ($num4 == $num3)) {
    $num4 = mt_rand(1, 49);
}
time_nanosleep(0, $num4 * 1000) ;
$num5 = 0 ;
while (($num5 == $num1) or ($num5 == 0) or ($num5 == $num2) or ($num5 == $num3) or ($num5 == $num4)) {
    $num5 = mt_rand(1, 49);
}
time_nanosleep(0, ($num5 + 24.5) * 1000) ;
$numC = mt_rand(1, 10);
$num_img = mt_rand(1, 12);
if ($num_img < 10) $img = "0".$num_img ;
else $img = $num_img ;
?-->

</code></pre>
Si tu ne vois pas de difficulté à transformer < > { }, continue avec ce qui marche. Dans le cas contraire, tu devrais peut-être regarder le module que Jissey a proposé : http://dev.cmsmadesimple.org/projects/uphyperlight au lieu de prism.


WebApps : un site avec du code + coloration syntaxique - ceck - 03/02/2014

OK Jean, et merci pour ces liens intéressants. Je reviendrai sur le blog si je rencontre un probleme. Maintenant je dois me remettre sur un autre projet.

Merci pour ton intervention et bonne continuation.

Christian