Probleme ini et couleurs

Résolu
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008
-
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
-
bonjour,
j'apprend juste à utiliser les fichier ini avec mIrc mais voila j'ai un bleme...

voila une section de mon fichier

[1]
debut = �2;�3;4,4********�3;5,5****�3;8,5

le probleme c'est que lorsque que je veux afficher ce qu'il ya dans "debut" et bien les premiers caracteres de couleurs disparaissent ..

%debut = $readini topic.ini $2 debut
/msg # %debut

ça me donne 4,4********�3;5,5****�3;8,5

alors que je veux TOUT :)

j'espere m'etre fais comprendre...

merci de votre aide

14 réponses

Messages postés
281
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
14 avril 2008

T'as qu'a utiliser les chars $chr(). Pour t'en servir, prends la valeur ascii d'un caractère, par exemple, la valeur ascii du caractère qui sert à faire du gras est 2 (pour obtenir la valeur ascii utilise $asc(le_caractère)), ensuite t'u fais $chr(2) qui te retournera le caractère qui sert à faire du gras, donc pour ton exemple t'aura qu'à utiliser un $replace() pour remplacer les caractères (gras,souligne,couleur,...) par leurs chars
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Quel version de mirc utilises-tu ?
J'ai testé sur 6.2 et effectivement dans le fichier.ini il n'y a pas les couleurs.
je ne sais pas si c'est normal ou si c'est un bug :)
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008

desolé pour le formatage
les saut de lignes ne passent pas :s
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Euh j'crois que tu t'es mal expliqué :var %début %debut $readini topic.ini $2
msg # %début

Tu dis que dans ton readini ya ca : 4,4********�3;5,5****�3;8,5
les * c du text ?
et tu dis que %debut te sors ca : 4,4********�3;5,5****�3;8,5
ou est le pb ?
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008

les * c'est du texte.
le pb c'est que dans mon .ini j'ai �2;�3;4,4********�3;5,5****
et lorsque que j'affecte ça a %debut et l'affiche j'ai les caracteres �2; et �3; qui disparaissent (les premiers)
%debut me donne : 4,4********�3;5,5****
Messages postés
281
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
14 avril 2008

Moi perso je crois que c'est normal, je sais pas si vous avez déjà essayer de un faire un caractère qui utilise le Ctrl (ctrl+k,ctrl+b,...) dans un bloc note mais ça ne fonctionne pas (:
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008

j'ai la version 6.16

la méthode à panthouffle pourrais marcher mais ya un autre bleme qui apparait ... je peux remplacer le caractere du gras mais pas celui de la couleur parcequ'ensuite il faut "coller" le 4,4 à chr(3)
la concatenation est pas possible a cause de la virgule du 4,4 :s
Messages postés
281
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
14 avril 2008

Mouarf au pire tu remplace aussi les virgule par des points :'(
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008

ça y est j'ai réussi en fesant le chr de la virgule et en concatenant

$chr(2) $+($+($chr(3),4),$+($chr(44),4)) ********�3;5,5****

c'est pas beau mais au moins ça marche :p

merci beaucoup pour votre aide :)
Messages postés
281
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
14 avril 2008

Tu pourrais épargner un $+() en mettant tout dans le même non ? $+($chr(3),4,$chr(44),4)
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Rien avoir avec le blocnote, si tu ouvre le fichier.ini avec le notepad c'est ton choix mais a la base :
alias wi {
  writeini Ga.ini GaSection Gaitem $+($chr(3),4) Gavaleur $+($chr(3),5) Gavaleur!
  echo -a $readini(Ga.ini,GaSection,Gaitem)
}
il n'y aura pas de couleur
 ni avec le blocnote ni avec aucun autre programme étant donné que il remplace les codes couleurs par espaces.Apres reste a voir si c'est un bug ou si c'est normal :)
Messages postés
281
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
14 avril 2008

Wims je disais ça car je crois que ses caractères n'existes que sur mIRC, donc normal qu'aucun programme de traitement de texte repère ses caractères
Messages postés
29
Date d'inscription
lundi 9 février 2004
Statut
Membre
Dernière intervention
17 juin 2008

les caracteres s'affiche sur notepad2 mais en s'appelant "etx" "stx" ;)

je savais pas qu'on pouvais tout concatener d'un coup merci :)
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
La meilleure soluce est d'utiliser un encoding/decoding réversible quand même..
A priori, les .ini n'acceptent en effet pas les char de controle, mais aucune importance, il suffit de quelques $replace pour faire ce que tu veux...

Au plus simple (en se faisant des aliases bien sûr..)
$replace($readini(fichier,section,item),<>,$chr(2),<<k>>,$chr(3) ,<<r>>,$chr(22),<>,$chr(31),<<o>>,$chr(15))
/writeini fichier section item $replace(blablabla, $chr(2),<>,$chr(3) ,<<k>>,$chr(22),<<r>>,$chr(31),<>,$chr(15),<<o>>)

Evidemment ca n'est pas réversible, mais en se creusant la tête (en utilisant par exemple un truc équivalent à urlencode() en php, j'ai posé un snippet sur sdb.org pour montrer) ca va nickel, si besoin d'un truc plus poussé..

PaDa