Wikini

ActionLaTeX

PagePrincipale :: DerniersChangements :: DerniersCommentaires :: ParametresUtilisateur :: Vous êtes ec2-18-223-196-59.us-east-2.compute.amazonaws.com

ActionLaTeX


L'action latex est inspirée de l'action WikiMath et permet de mettre des FormulesTeXDansWiKiNi.
Toutefois, contrairement à WikiMath c'est la syntaxe LaTeX qui est utilisée et non la synthaxe "calculatrice".
Cette action fait appel à MimeTeX : un script CGI qui renvoie une image d'une formule LaTeX.
Essayez par exemple de taper dans votre navigateur l'adresse suivante :

Il suffit donc d'insérer l'image ainsi dans le code html


<img src="http://www.forkosh.com/mimetex.cgi?\Large\frac1{\sqrt{x^2+y^2}}">


Plus d'informations sur MimeTeX

Voici le fichier latex.php à placer dans le répertoire actions

<?php
/* 
titre: Action LaTeX pour Wikini (mimetex)
Auteur: Sébastien Celles
License: GPL
*/

if (!defined("WIKINI_VERSION"))
 {
         die (
"accès direct interdit");
 }
 
$expression $this->GetParameter("expression");
$baseurl "http://www.forkosh.com/mimetex.cgi?";
$fullurl $baseurl rawurlencode($expression);

echo 
"<img src=\"$fullurl\" alt=\"expression math\" valign=\"middle\"/>";

?>



Il suffit alors de taper :


{{latex expression="\frac{x^2}{\sqrt(sin(x))}"}}


pour insérer la formule dans une page Wikini

la deuxième partie consisterait à modifier le moteur de wikini pour
que $\frac{x^2}{\sqrt(sin(x))}$ appelle cette action

Il faudra aussi envisager le cas de $$\frac{x^2}{\sqrt(sin(x))}$$
ainsi que \[........\] pour des formules hors-ligne (centrée et plus étalée en hauteur)



Il faut absolument éviter la syntaxe de SPIP qui consiste à entourer la formule
à la fois par la balise <math> et par $ car c'est beaucoup trop lourd !!!!

Pour cette seconde partie, je crois que c'est le fichier /wikini/formatters/wakka.php qu'il faut modifier pour ajouter le support de
formule en ligne : $...$ ou \(...\) ou \begin{math}...\end{math}
formule hors-ligne (ou hors-texte) : $$...$$ ou \[...\] ou \begin{displaymath}...\end{displaymath}



voir http://www.laas.fr/~matthieu/cours/latex2e/ Une courte (?) introduction à LaTeX 2e - chapitre Formules Mathématiques

PS : il parait que $$...$$ est déconseillé et qu'il est préférable d'utiliser \[...\]
voir http://www.tug.org/tex-archive/info/l2tabu/french/l2tabufr-heavy.pdf

PS2 : la solution MimeTeX permet aussi d'être utilisée dans un Intranet car MimeTeX est libre et peut donc être installé sur un serveur interne

-- SebCls?

salut je suis tres interressé par cette fonction qui me rendrait bien des services dans mon wiki
je débute en php mais je programme pas mal en c alors voila
si quelqu'un est toujours sur ce projet je serais assez interressé par une colaboration

--GulP?

Il te suffit de créer l'action latex.php et de la placer dans le répertoire actions de ton wiki.
Par contre il faut savoir que MimeTeX n'a pas tout à fait le rendu de LaTeX (c'est dommage)

Il existe d'ailleurs d'autres outils similaires à MimeTeX (pas utilisés ici)
http://www.fourmilab.ch/webtools/textogif/textogif.html
http://www.math.uio.no/~martingu/gladtex/
http://www.tug.org/interest.html#web
http://whyslopes.com/webmath/
http://www.mayer.dial.pipex.com/tex.htm#latexrender
Les images peuvent être traitées sur le serveur par ImageMagick??
http://www.imagemagick.org/

Par contre il reste à modifier le formatter.php pour éviter de taper
Action inconnue "latex"
mais taper simplement
$\frac{x^2}{\sqrt(sin(x))}$
Tu peux me contacter (mais en ce moment fin janvier / début février 2007) je ne suis pas trop dispo
Essaye d'abord sans modifier le formatter, une fois que l'action tourne, amuse toi à modifier le fichier formatters et donne nous des infos ici
(personnellement je n'ai pas réussi à modifier le formatter pour l'instant...)

On peut utiliser des scripts CGI sur un serveur pour ajouter pas mal de fonctionnalités à WiKiNi.
voir par exemple ActionGNUPlot

Je me pose toutefois une question :
Est-il possible d'appeller une action depuis un formatter ????

Il faut éviter de mettre deux accolades à la suite dans la partie LaTeX... Il faut par exemple séparer par un espace.
Cela permet d'éviter le problème évoqué sur la page FormulesTeXPhpPur.

Il faut aussi mettre en place un système de cache pour les images.
-- SebCls?

Nouvelle implémentation


Voila les nouvelles j'ai créé une action Math (découpé en deux fichiers math.php et fonction_math.php et un dossier d'image) celle ci ne génére pas d'image pour deux raisons


Tout est donc écrit en xhtml et css(tableau + image lorsque que cela est indispensable)
Par contre comme je ne connais aucune fonction en php sauf les plus courantes le code est assez lourd dans sa lecture


sur quelle partie il est important de mettre l'accent comme le respect absolu de la syntaxe latex ou le rendu esthétique.


je serais assez interressé par votre opinion a propos de l'idée de tout écrire en xhtml
merci

PS: je n'est pour l'instant pas modifier le formater la syntaxe est:Action inconnue "math"
toute les action sont faite de cette manière je ne sait pas s'il est judicieux de faire des exeptions ce n'est deja pas evident pour les gens qui ne manipule d'ordinateur.

PS2: j'ai besoinn d'un coup de pouce: Quelqu'un conaitrais un autre moyen que largeur et hauteur a 100% pour étendre une image dans la cellule d'un tableau(c'est la fusion de trois cellules) .de plus est ce qu'il est possible de la rétrécir? Voila merci



vous pouvez faire un test de cette fonction a cette page



GulP?


Je ne suis pas trop d'accord avec toi :


L'idée c'est de mettre le serveur d'image ailleurs que sur ton hébergeur, c'est la solution adoptée par Spip par exemple
Il y aurait un serveur math.wikini.net
Le deuxième problème, c'est que le placement des symboles est bien loin de LaTeX
Le troisième problème, c'est qu'il n'y a pas grand chose qui marche (pas frac sqrt ...)
Ton idée n'est pas de faire marcher LaTeX avec WikiNi... c'est de refaire LaTeX en PhP donc moi ça me semble illusoire...

Pour moi, il faut (si on veut un bon support de LaTeX) envisager soit


http://www.mayer.dial.pipex.com/linux.txt
http://www.mayer.dial.pipex.com/tex.htm

@+

SebCls?



Je trouve ca dommage d'utiliser un serveur externe cela rend wikini dépendant et cela l'empeche de fonctionner sur intranet.
Mais je ne veux pas faire une guerre d'idée je vais finir mon action mais je ne m'impose pas je l'ai creer par ce qu'il y avais un reel besoin pour mon wiki.Je la propose parce que je pense que d'un certain point de vue elle apporte une bonne solution etant donné son rendue en html.Je suis tout a fait daccord avec toi pour dire que MimeTeX et LaTeXrender? surtout auront toujours un meilleur rendue visuel.


D'autre part une action interne peut etre maintenue par la comunauté ce qui peut aussi etre un avantage .



ps : En plus avec une bonne feuille de style(ce qu'il n y a pas pour l'intant) les formules pourons etre agrandie suivant les parametres du navigateur ce qui est un avantage pour les mal voyants.

bye

GulP?

Il est vrai que le fait de pouvoir modifier la taille est une option intéressante, par contre que se passe-t-il si tu sélectionnes la formule.
Avec un système comme la génération d'image et les propriétés tag ou avec du MathML ( MathMLWikini ) il est possible de
copier une formule.



Personnellement je n'essaierais pas de placer les symboles "à la main" comme tu le fais.
Au pire je chercherais du côté d'un convertisseur LaTeX -> MathML si tu ne veux absolument pas d'image et je délèguerais ainsi
l'affichage de la formule tout en conservant une écriture des math humainement possible.
Je ne considère pas non plus que MimeTeX ou LaTeXrender? rende "dépendant" WikiNi.
Il y a deux solutions :


Une autre solution (beaucoup plus lourde) serait de reprendre le code de MimeTeX pour faire la même chose en PHP

@+

SebCls?

pour ta premiere slolution il faut que le serveur puisse supporter ces outils
je suis daccord avec la deuxieme
mimetex la c'est compliqué et comme il génére des image il faut aussi avoir le serveur qu'il faut


Sinon on pourrait étudier un mélange avec rendue html ou png

@+

GulP?
--GulP?

Je pense vraiment que le mieux est d'installer un VRAI LaTeX sur le seveur WikiNi.
En effet, cela permet de faire des choses vachement mieux comme par exemple
générer des graphiques avec PSTricks, utiliser des packages tous faits pour tel ou tel domaine (pst-circ, pst-opt...)
Par contre je n'administre pas le serveur WikiNi
J'ai posé la question de l'installation du serveur d'équations sur le forum de Spip


--SebCls?


ListeDesActionsWikini
ActionsEnCoursDeDiscussion



Commentaires [Cacher commentaires/formulaire]