Problème BBCode [size] et solution

[size=200]Problème :[/size]

Quand on imbrique n’importe quelle balise BBCode à l’intérieur d’un [ size ], les balises intérieures redéfinissent une taille “normale”.

Exemple simple :

[ size=150 ]Grande taille [ color=#FF0000 ]taille normale[ /color ][ /size ]
[size=150]Grande taille taille normale[/size]

Actuellement, on est obligé de bricoler en rajoutant des [ size ] le plus “profond” possible dans les balises :

[ size=150 ]Grande taille [ /size ][ color=#FF0000 ][ size=150 ]taille normale[ /size ][ /color ]
[size=150]Grande taille [/size][size=150]taille normale[/size]

C’est assez pénible pour les textes en grande taille (avertissements etc) où l’on veut mettre des choses en gras / souligné / couleur, inclure des liens etc.
Il n’y a qu’à voir à quoi ressemble le BBCode de l’avertissement de mon T&A Iceowl :

[ color=#C00000 ][ u ][ b ][ size=150 ]Attention :[ /size ][ /b ][ /u ][ size=150 ] ce T&A a été testé et validé avec [ /size ][ b ][ size=150 ]iceowl-extension 1.0~b1+dfsg-4[ /size ][ /b ][ size=150 ] et [ /size ][ b ][ size=150 ]icedove 3.0.4-1[ /size ][ /b ][ size=150 ] sur amd64/testing. Dans le principe ça devrait fonctionner avec d’autres versions et sur d’autres plate-formes, mais je ne peux pas garantir ce que je n’ai pas testé. Merci de faire part de vos retours d’expérience dans [ /size ][ url=http://forum.debian-fr.org/viewtopic.php?f=3&t=27336 ][ b ][ size=150 ]le fil de discussion prévu à cet effet[ /size ][ /b ][ /url ][ size=150 ].[ /size ][ /color ]
[size=150]Attention :[/size][size=150] ce T&A a été testé et validé avec [/size][size=150]iceowl-extension 1.0~b1+dfsg-4[/size][size=150] et [/size][size=150]icedove 3.0.4-1[/size][size=150] sur amd64/testing. Dans le principe ça devrait fonctionner avec d’autres versions et sur d’autres plate-formes, mais je ne peux pas garantir ce que je n’ai pas testé. Merci de faire part de vos retours d’expérience dans [/size][size=150]le fil de discussion prévu à cet effet[/size][size=150].[/size]

Alors que si tout fonctionnait normalement, on pourrait simplement mettre les basises [ size ] à l’extérieur :

[ size=150 ][ color=#C00000 ][ u ][ b ]Attention :[ /b ][ /u ] ce T&A a été testé et validé avec [ b ]iceowl-extension 1.0~b1+dfsg-4[ /b ] et [ b ]icedove 3.0.4-1[ /b ] sur amd64/testing. Dans le principe ça devrait fonctionner avec d’autres versions et sur d’autres plate-formes, mais je ne peux pas garantir ce que je n’ai pas testé. Merci de faire part de vos retours d’expérience dans [ url=http://forum.debian-fr.org/viewtopic.php?f=3&t=27336 ][ b ]le fil de discussion prévu à cet effet[ /b ][ /url ].[ /color ][ /size ]

[size=200]Solution :[/size]

Voir le .diff ci-joint, à appliquer à http://forum.debian-fr.org/styles/debianfr2/theme/stylesheet.css :
stylesheet.css.diff.tar.gz (428 Bytes)Vu les restrictions du forum sur les fichiers joints, j’ai été obligé de le compresser pour que ça passe.

Le problème était simplement que, pour définir une taille par défaut, la taille était appliquée à TOUS les éléments sans distinction (alors qu’il n’y en a pas besoin). J’ai simplement supprimé ce qui posait problème, et rajouté la règle html,body { font-size:… } qui va bien. L’aspect du forum ne change pas, mais la fonctionnalité [ size ] remarche comme il faut.
Testé et approuvé sur toutes les pages “normales” du forum (j’avoue, je n’ai pas testé le panneau de contrôle utilisateur, les messages privés etc mais au vu de ces pages il n’y a aucune raison que ça pose problème).

Salut,
Beaucoup plus pratique en effet !
As-tu envoyé un MP ou un mail à Ed pour lui proposer ? :slightly_smiling:

Salut,

Le mode d’emploi complet (la commande à passer) serait un plus pour les newbies :wink:

Ah, tu dis que je devrais ? Bon, soit… :mrgreen:

Je ne sais pas lequel de toi ou moi n’a pas compris l’autre, mais il y a probablement incompréhension vu que c’est une opération à faire sur le serveur lui-même (modifier le fichier CSS). :ugeek:
Il faut simplement que quelqu’un ayant accès aux fichiers du forum (probablement ed lui-même, à moins que vous les modos/admins n’y ayez accès également) applique le patch sur le bon fichier.

Mais bon, pour répondre tout de même à ta question :

  • extraire le .diff de l’archive jointe à mon premier message
  • télécharger le fichier .css et le mettre dans le même répertoire que le .diff
  • $ patch -i stylesheet.css.diff stylesheet.css
  • uploader le .css modifié à la place de l’ancien

Pour information (pour les non-programmeurs qui n’ont pas l’habitude), l’avantage du .diff est que l’on peut vérifier très facilement les modifications que je propose (lignes +/- dans le fichier). Si j’avais joint le fichier .css complet au lieu du .diff, la seule solution viable pour voir les différences aurait été de… faire un diff avec l’ancien .css. :laughing:

Bref, j’ai envoyé un MP à ed (je n’ai pas trouvé comment lui envoyer un mail directement). :stuck_out_tongue:

Salut,

[quote]

  • $ patch -i stylesheet.css.diff stylesheet.css[/quote]

Et tu crois vraiment que tous les participants connaissent ce genre de commande et la pratiquent tous les jours, même s’ils ont un petit phpBB :blush:

Désolé… j’ai peut-être présumé trop vite. :mrgreen: :blush:
C’est vrai que c’est plutôt un outil de programmeurs, même s’il est extrêmement utile au quotidien pour comparer deux fichiers très peu différents (du moment que c’est du texte). Par exemple pour comparer deux versions d’un fichier de config.

Du coup, autant expliquer comment faire un diff :

$ diff -u fichier-original nouveau-fichier

Ça donne quelque chose du style :

[code]— stylesheet.css 2010-04-26 18:04:14.536189649 +0200
+++ stylesheet.css 2010-04-26 18:05:33.764678043 +0200
@@ -18,11 +18,6 @@
/* Reset browsers default margin, padding and font sizes */
margin: 0;
padding: 0;

  • font-size: 14px;
    -}

-html {

  • font-size: 100%;
    }

body {
@@ -30,7 +25,10 @@
font-family: “Dejavu Sans”, Verdana, Helvetica, Arial, sans-serif;
color: black;
background-color: #C3C3C3;

  • font-size: 10px;
    +}

+html, body {

  • font-size: 14px;
    }

#wrapheader {[/code]

On peut voir directement les modifications : les lignes supprimées commencent par un moins, et les lignes rajoutées commencent par un plus. Autour des lignes modifiées, il y a quelques lignes de contexte (généralement trois) pour aider patch à s’y retrouver. Les lignes commençant par @@ indiquent les numéros des lignes concernées.
Dernier détail : les espaces en début de ligne sont importants pour ce type de fichier, c’est pourquoi je l’ai fourni en pièce jointe car le forum supprime automatiquement un ou deux espaces en début de ligne.

pas la peine de me donner le nom de la commande lol :slightly_smiling:

J’ai appliqué le patch, qui a bien raison.

Merci beaucoup

C’est pas moi m’sieu, c’est Gérard qu’a commencé ! :mrgreen:

Plus sérieusement : du coup j’ai commis ça sur le wiki. Gérard, vu que tu semblais ne pas connaître cette paire de commandes, je te conseille d’aller lire plus particulièrement la dernière section (exemple pratique pour gestion des fichiers de config lors des mises à jour) : personnellement je m’en sers pas mal dans ce cadre alors que je ne suis « que » en testing, alors toi qui es en sid (avec tous les changements rapides que ça implique) ça devrait t’être encore plus utile qu’à moi. :023

[quote=“ed”]J’ai appliqué le patch, qui a bien raison.
Merci beaucoup[/quote]
De rien, quand on peut aider hein…

Top moumoute !
Autant pour le forum que pour le Wiki !

Et vive la Catalogne :006

Salut,

Cette remarque n’était pas destinée aux vieux routiers ni à ceux qui lisent les pages de man, mais à tout ceux qui comptent sur nous pour le faire à leur place, fâchés avec le grand-breton ou encore plus flemmard que moi :005