Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
J'ai mis en oeuvre un module Latex sous le forum punbb avec un système de cache.
Comment faire du Latex sous les forums PUNBB à l'aide de mimetex.
Cordialement.
Hors ligne
interessant 
Hors ligne
C'est classe pour un forum de scientifiques, mais ça me donne des boutons ces grosses formules de maths 
Hors ligne
héhé,
ca meriterait de packager ca et le mettre dans le forum "mods et plugins"
http://www.foxmask.info
HaveFnuBB! le seul forum produit avec le framework PHP5 Jelix
(dé)pot de miel
Membre de la CoreTeam Jelix
Hors ligne
Salut foxmask, je pense que pour un mod il faudrait imposer le chemin des répertoires et c'est cela tout le probleme, car a la compilation de mimetex pour générer le latex.cgi, on fait comme suit:
gcc -static -DAA -DREFERER=\"mondomaine\" -DCACHEPATH=\"../latex/pictures/\" mimetex.c gifsave.c -lm -o latex.cgilors de cette compilation je spécifie, qu'il faudra placer les images dans ../latex/pictures/ sachant que latex.cgi lui est placé dans cgi-bin/ donc ../latex/pictures/ ca signifie je remonte d'un cran et je vais dans latex/pictures/ . Ce qui impose la structure ... Je peux générer pour tous un latex.cgi sans l'option -DREFERER=\"mondomaine\" mais on doit alors imposer une hiérarchie des répertoires en l'occurence il faut que latex et cgi-bin ait la meme profondeur au sein d'une arborescence. On peut encore imposer cgi-bin et mettre le répertoire pictures dans cgi-bin, enfin je pense que tu as compris !!!
Si tu as des idées, ou une proposition on peut packager cela ensemble et comme cela je met a dispo un latex.cgi pour tous.
Cordialement
Hors ligne
Ouhahou ! C'est assez... Impressionant ! 
Chapeau !!
Je voulais essayer de concevoir un truc comme ça, mais là, c'est encore mieux que ce que j'imaginais ! Chouette^^
Hors ligne
Salut foxmask
[...]
Si tu as des idées, ou une proposition on peut packager cela ensemble et comme cela je met a dispo un latex.cgi pour tous.Cordialement
je pensais pas packager la creation du cgi.
pour moi/nous, packager un mod/plugins c'est fournir un fichier INSTALL décrivant ce q'uil faut faire pour disposer de telle ou telle fonctionnalité, avec la plupart du temps, des scripts PHP propres à ce mod.
Dans ton cas, produire un fichier install avec le contenu de
http://www.math-linux.com/spip.php?article39
devrait suffir pour en faire un mod.
@+
http://www.foxmask.info
HaveFnuBB! le seul forum produit avec le framework PHP5 Jelix
(dé)pot de miel
Membre de la CoreTeam Jelix
Hors ligne
PhpMathPublisher le fait sans avoir à compiler quoi que ce soit apparament :
http://www.punres.org/viewtopic.php?id=1047
http://www.punres.org/desc.php?pid=164
oui c'est exact, ca ne fait qu'utiliser la lib GD.
http://www.foxmask.info
HaveFnuBB! le seul forum produit avec le framework PHP5 Jelix
(dé)pot de miel
Membre de la CoreTeam Jelix
Hors ligne
cyrilg38 a écrit :PhpMathPublisher le fait sans avoir à compiler quoi que ce soit apparament :
http://www.punres.org/viewtopic.php?id=1047
http://www.punres.org/desc.php?pid=164oui c'est exact, ca ne fait qu'utiliser la lib GD.
Euh... Je voudrais pas polémiquer mais c'est loins d' être du LaTeX looooooool
Suffit de mater left, right et comment est agencée leur fonction sum ...
Hors ligne
foxmask a écrit :cyrilg38 a écrit :PhpMathPublisher le fait sans avoir à compiler quoi que ce soit apparament :
http://www.punres.org/viewtopic.php?id=1047
http://www.punres.org/desc.php?pid=164oui c'est exact, ca ne fait qu'utiliser la lib GD.
Euh... Je voudrais pas polémiquer mais c'est loins d' être du LaTeX looooooool
Suffit de mater left, right et comment est agencée leur fonction sum ...
je ne denigre pas LateX ni ton travail je dis "oui phpmathpublisher permet d'affiche des formules avec des images via la lib GD" c'est tout 
http://www.foxmask.info
HaveFnuBB! le seul forum produit avec le framework PHP5 Jelix
(dé)pot de miel
Membre de la CoreTeam Jelix
Hors ligne
J'ai testé le mod "PhpMathPublisher", voilà ce que ça donne http://la-bnbox.info/baranougat/viewtop … pid=55#p55
Bon l'image qui va pas sur le fond orange on s'en balance (suffit de rajouter un fond blanc à l'image) par contre, contrairement à ce que j'ai compris de ton script Tucks (pas réussit à l'installer, snif... tu entends quoi par "compiler" ? J'me suis penché qu'un tout petit peu sur le C et je croyais savoir, mais en ouvrant le fichier mimetex.c j'ai plus compris^^) éh bien ça ne fonctionne pas comme un BBcode ! Si vous testez sur mon forum (les invités peuvent écrire sur ce topic) vous verrez qu'il faut passer par un mode spécial qui créé l'image et ensuite il faut afficher le lien de l'image... ce qui est un peu plus compliqué (quoi qu'aussi utile) et je ne sais si ce serait très compréhensible pour le monsieur "lambda" venant sur un forum... (ç se confirme en voyant le forum de test du mod : http://tungchao.free.fr/forum/viewtopic.php?id=1&p=2 )
Donc visiblement le script de Tucks alors... mieux^^ mais il faut être plus malin pour l'installer 
Hors ligne
Non t'inquiète je reprends ce qu'a dit cyrilg38PhpMathPublisher le fait sans avoir à compiler quoi que ce soit apparament :
PhpMathPublisher c'est pas du Latex 
Hors ligne
Salut BN pas mal ton avatar lol
Compiler ...
mimetex.c est un fichier en Langage C, il te faut donc le compilateur gcc. Personnellement je suis sous Linux, donc je l'ai compilé sous Linux. Sur le site de mimetex il y a disposition des fichiers mimetex.cgi (que tu devras renommé en latex.cgi) déja précompilé, le problème
de ce dernier c'est qu'il n'y a pas de gestion du cache, à chaque fois qu'une personne visualisera ton forum, le cgi sera appelé pour chaque formule, imagine que 10 personnes soient sur un même forum, ca crée un traffic monstre, c'est pour cela que je le compile moi meme ! c'est pour avoir l'option -DCACHEPATH
Pour pousser le débat en haute altitude, tu peux utiliser le fichier cgi du site mimetex, en modifiant un peu mon script tu peux mettre en oeuvre un systeme de cache. Mais il subsiste un problème: il faut pouvoir un utiliser la commande system() et à moins d'être en serveur dédié, je ne pense pas que tu disposes de ce droit ce qui est a fortiori restrictif.
Dernière modification par Tucks (12-06-2006 14:34:18)
Hors ligne
MDR Si t'appelles cela un mod ....
Plonge toi dans le code du mec, je connais ce mod ...
Démonstration: voila un bout de son code tu vas peut etre comprendre:
[c] case 'latex':
exec("cd ".PUN_ROOT.$path."; latex f$prefix.tex");
exec("dvips -fqR ".
PUN_ROOT.$path."f$prefix.dvi > ".
PUN_ROOT.$path."f$prefix.ps");
exec("convert -transparent white -trim -antialias ".
PUN_ROOT.$path."f$prefix.ps ".
PUN_ROOT.$path.$prefix.".png");
exec("rm ".PUN_ROOT.$path."f$prefix*");
break;
case 'dvipng':
exec("cd ".PUN_ROOT.$path."; latex f$prefix.tex");
exec("dvipng -T tight -bg Transparent ".
PUN_ROOT.$path."f$prefix.dvi -o ".
PUN_ROOT.$path."$prefix.png");
exec("rm ".PUN_ROOT.$path."f$prefix*");
case 'latex2html':[/c]
Premier point, il utilise la commande exec() si tu n'es pas en serveur dédié ca me semble un peu mort puisque la plupart des hébergeurs du moins en serveur mutualisé interdisent ces commandes... Donc bonne chance !
Second point tu vois qu'il utilise des outils Latex Classique tels que dvips, Latex2png ce qui impose que ton hébergeur possède ces utilitaires, je te défie d'avoir un serveur mutualisé dans lequel ces utilitaires soient installés ...
Si un mod convenable existait je me serait pas pris la tête à le faire, je suis pas informaticien à l'origine je suis mathématicien ...
Néanmoins sa solution est convenable si l'on fait tourner un serveur apache chez soi ou un serveur dédié ...
Cordialement.
Dernière modification par Tucks (12-06-2006 14:52:06)
Hors ligne
Tu as parfaitement raison pour la compilation ... C'est rebutant !!!
Il y a l'autre solution sans le cache mais entre nous c'est pas très propre !!!
En tout cas je suis content que tu exposes tes idées, je ne pensais pas que ma contribution pouvait lancer un tel débat. Merci pour tes interventions !:)
Dernière modification par Tucks (12-06-2006 15:02:28)
Hors ligne
BN alors tu l'as installé ?
Hors ligne
Hum, non... J'ai toujours pas trouvé ce que voulait dire "compiler mimtex" et vu que je n'ai pas exessivement le temps de chercher...
Hors ligne
pour compiler, il faut que tu ais un accès admin à ton serveur, et que tu ouvres une console Linux pour taper la ligne de commande que Tucks a posté au début du sujet
Ah ouais... J'ai bien trouver un truc "Contrôle de scripts CGI" sur le truc d'admin de mon serveur, mais je n'ai jamais vu d'accès à une console style linux. (ou invités de commande windows, je suppose que c'est pareil ?) Logiquement j'ai certains droits administrateurs sur mon serveur (je suis sur l'offre de 1&1, vous avez du en entendre parler...) mais accèder à une console Linux, ça j'ai jamais fait^^ Mais peut-être que je ne sais tout simplement pas faire !
Mais merci quand même cyrilg38
J'vais essayer de chercher encore...
En tout cas je pense que pour une "mise en mod" de tout ça, il faudrait légérement expliciter ce passage là. Disons pour que cela soit plus accessible à tout un chacun^^
Hors ligne
j'voudrais pas dire de bétise mais il me semble que le cgi vous pouvez (devez?) le compiler en local, il suffit d'une distrib linux et de l'outil adéquat et c'est réglé
Hors ligne
Tu compiles en local, il te suffit chez toi d'avoir un OS Linux, perso c'est ce que j'ai fait. Cordialement.
Hors ligne
Mouais c'est pas si violent de compiler un programme ... Mais je peux comprendre que ca rebute des gens. cyrilg38, j'ai un projet en vue mais pour un serveur dédié, je pense pas que ca interesse grand monde, puisqu'on est tous en mutualisé sauf certains peut etre!
Qui plus est je l'ai dit et je le répète si vous utiliser le cgi du site mimetex
mon code fonctionne, mais vous aurez pas le système de cache.
Compilation=systeme de cache Pas de compilation= script cgi lancé a la volée
C'est un choix a vous de le faire 
Hors ligne
j'pense effectivement que les personnes suceptible d'utiliser ce genre de script ont les capaciter pour compiler ça 
Hors ligne
A ce moment la je peux proposer une version en obligeant l'utilisateur
d'avoir un répertoire cgi-bin et moi meme d'imposer le répertoire contenant les images. Le seul inconvénient on ne spécifie pas le site pour lequel le cgi va fonctionner ... Des gens malintentionnés peuvent utiliser le votre ...
Hors ligne
Le risque c'est la surcharge de ton serveur si qqun utilise ton script ...
Hors ligne
il te suffit chez toi d'avoir un OS Linux
J'aime bien le "il te suffit".
Bon raison de plus pour que j'me mettes à Linux^^
En fait les utilisateurs de PunBB y ont des connaissances en languages de site web en règle général. (c'est à dire HTML ou mieux XHTML/CSS, PHP et un peu de JS) Or tout ce qui est compilation, ça touche des languages plus bas level (ou plus haut je sais jamais) style C. Enfin à ma connaissance^^ (j'ai jamais fait de compilation en PHP, c'est pour ça
)
Mais à la rigueur s'il faut juste avoir accès à une console style Linux, c'est pas la mère abouard ! Mais faudrait l'dire 
Mais l'idée de cyrilg38 me semble tout de même être une super idée !! 
Hors ligne