Cosas de Administradores

Problema con LaTex

 
Imagen de Pedro Alburquerque
Problema con LaTex
 

Hola,

He buscado en los foros y no he encontrado ninguna solución que me funcione.

El problema es que no se muestran las imágenes correspondientes a una ecuación introducida en notación "Tex". En su lugar aparece el texto introducido en el editor, pero sin los $$.

  • Uso Moodle 2.4.3.
  • Tengo activado el filtro TeX y la notación algebráica.
  • Estoy alojado en un hosting que no tiene instalado latex ni dvips ni convert. Ni se van a instalar. Sistema operativo del hosting: freeBSD
  • Los permisos del archivo mimetex.freebsd están colocados a 755
  • En la instalación de moodle se satisfacían todos los requisitos en cuanto a extensiones de PHP.
  • He activado, en moodle, las opciones de depuración al máximo nivel (desarrollador).
  • He seguido los pasos indicados por Iñaki, paso por paso, sin resultados útiles (al menos para mi). En la opción 3 de la página de depuración del filtro TeX (Show a graphic image of the algebraic expression rendered with mimetex) este es el resultado:

The shell command
".../moodle2/filter/tex/mimetex.freebsd" -e ".../mooddata/filter/tex/9608176195573c30c6beb3cf078fdf66.gif" -- '\Large f(x)=\int_{-\infty}^x~e^{-t^2}dt'
returned status =
File size of mimetex executable .../moodle2/filter/tex/mimetex.freebsd is 897250
The file permissions are: 100755
The md5 checksum of the file is b87f4eca6afdf691bf4b79724367a983
Image not found!

No text output available
  • Con la opción 5 de la página de depuración esto es lo que obtengo (lógicamente no encuentra los ejecutables, ya que no están instalados):

Checking executables

Error: latex executable () is not readable
Error: dvips executable () is not readable
Error: convert executable () is not readable

base filename for expression is '9608176195573c30c6beb3cf078fdf66'

Processing TeX expression:

f(x)=\int_{-\infty}^x~e^{-t^2}dt
$  --interaction=nonstopmode --halt-on-error .../mooddata/temp/latex/9608176195573c30c6beb3cf078fdf66.tex
OUTPUT: 
RETURN CODE: 
$  -E .../mooddata/temp/latex/9608176195573c30c6beb3cf078fdf66.dvi -o .../mooddata/temp/latex/9608176195573c30c6beb3cf078fdf66.ps
OUTPUT: 
RETURN CODE: 
$  -density 240 -trim .../mooddata/temp/latex/9608176195573c30c6beb3cf078fdf66.ps .../mooddata/temp/latex/9608176195573c30c6beb3cf078fdf66.gif 
OUTPUT: 
RETURN CODE: 

¿Cuáles son esas funciones "absolutamente esenciales" de PHP, a las que se refiere Iñaki, que han de estar habilitadas en el servidor para que funcione el filtro TeX? Creo que es lo único que me queda por comprobar.

¿Puedo intentar alguna otra cosa más?

Saludos y gracias.

 
Promedio de calificaciones: -
Cuetlachcoyotl o Lobo Mexicano
Re: Problema con LaTex
ModeradoresMoodlers de gran ayuda

Hola Pedro,

Yo pienso que el origen del problema pudiera estar en los permisos de las carpetas: "/mooddata/filter/tex/", o bien, "moodledata/temp/latex".

Si no recuerdo mal, Moodle crea una imagen por cada ecuación y la almacena en "moodledata/filter/tex".

Cuando alguien define una nueva ecuación, la plataforma ve si ya está creada la imagen respectiva y, de ser el caso, la despliega (osea ya no la crea, ahorrándose tiempo y recursos).

Quizá el problema esté en que tu plataforma no puede almacenar las imágenes.

¿Hay algún "gif" en /mooddata/filter/tex/?

Saludos

 
Promedio de calificaciones:Útil (1)
Imagen de Pedro Alburquerque
Re: Problema con LaTex
 

Hola David, muchas gracias por responder, ando un poco desesperado con el asunto Latex y es la primera respuesta que obtengo en un mes.

La carpeta "/mooddata/filter/text" tiene permisos 777 (los máximos posibles, cualquiera puede leer, escribir y ejecutar) y está vacía, ningún archivo en su interior.

La carpeta "/mooddata/temp/latex" tiene permisos 777 y tiene un archivo en su interior: 9608176195573c30c6beb3cf078fdf66.tex

El contenido de ese archivo es: 

\documentclass[12pt]{article}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\RequirePackage{amsmath,amssymb,latexsym}
\pagestyle{empty}
\begin{document}
$ f(x)=\int_{-\infty}^x~e^{-t^2}dt $
\end{document}

 

El contenido de este archivo parece ser (intuyo) datos de configuración del filtro Tex... pero no saco nada en claro de él.

¿Alguna otra idea?

 

Muchas gracias.

 
Promedio de calificaciones: -
Imagen de Juan Ezeiza
Er: Re: Problema con LaTex
 

Hola, Pedro:

Aunque no es la solución ideal, quizás emplear un filtro externo te saque del apuro.
Hace unos años tuve un problema parecido y lo resolví usando MathJax. En este enlace tienes documentación en inglés.
El proceso sería el siguiente:

1.- Deshabilitar el filtro LaTex de Moodle

2.- En el bloque "Ajustes" ir al menú "Apariencia\HTML adicional" y pegar esto en el cuadro "Dentro del encabezado":

<script type="text/javascript"
  src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>

3.- Guardar cambios

A partir de entonces, todo lo que escribas entre los símbolos $$ lo convertirá en imágenes un servidor externo. Teóricamente el proceso es un poco más lento, pero funciona.

¡Suerte!

 

 
Promedio de calificaciones:Útil (4)
Imagen de Pedro Alburquerque
Re: Er: Re: Problema con LaTex
 

Gracias Juan,

Me parece una buena solución, lástima que tengamos que salir fuera de moodle para implementarla.

Voy a esperar unos días más por si surge un rayo de luz divino (o similar)... pero me temo que voy a usar lo que me propones.

 

Un saludo.

¡Gracias de nuevo!

 
Promedio de calificaciones: -
Imagen de hector lara
Re: Er: Re: Problema con LaTex
 

Saludos a todos. Mi nombre es Héctor Gabriel Méndez Lara. Desde hace tiempo uso Moodle, no soy experto en varios aspectos y por eso mi comentario, el cual está pensado en aquellos usuarios que no son expertos en cuestiones más profundas en la administración de Moodle.

Uso los servicios online de gnomio (www.calculohgml.gnomio.com)  y utilizo con bastante regularidad la notación latex. Esta empresa trabajaba en una versión de Moodle 1.X y pasaron a un Moodle 2.X. Luego, las fórmulas matemáticas ya no se desplegaban y aparecía un icono que mandaba a un debug.

Como se puede ver, yo no puedo manipular mucho de las opciones de Moodle y los problemas asociados al hosting y las funcionalidades de system y/o exec no las puedo checar. Sin ser experto creo que esto es lo que origina el problema de nuestras fórmulas.

Probé la solución que propone Juan Ezeiza:

El proceso sería el siguiente:

1.- Deshabilitar el filtro LaTex de Moodle

2.- En el bloque "Ajustes" ir al menú "Apariencia\HTML adicional" y pegar esto en el cuadro "Dentro del encabezado":

<script type="text/javascript"
  src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>

3.- Guardar cambios

 

Con lo anterior, las fórmulas se pueden ver de nuevo.

Ojala los desarrolladores de Moodle arreglen este detallito para que personas como un servidor no estén perdiendo el tiempo en internet buscando soluciones de algo tan simple como ver una fórmula.  

 

 

 
Promedio de calificaciones: -
Imagen de Juan Ezeiza
Er: Re: Er: Re: Problema con LaTex
 

Hola, Héctor:

Me alegro de que te funcione la solución que propuse. De todos modos, en mi opinión solo debería ser un procedimiento provisional. Lo normal sería disponer de un servicio de hosting que garantice un buen funcionamiento de Moodle. Si el que tienes ahora no lo hace, creo que deberías cambiar a otro hosting más flexible. Utilizar Mathjax en un servidor externo es una alternativa si no tienes muchos alumnos o no quieres migrar a mitad de curso.

Saludos.

 
Promedio de calificaciones: -
Germán and temudgin
Re: Er: Re: Problema con LaTex
Desarrolladores de pluginsDocumentadoresMoodlers de gran ayudaTestersTraductores

Hola,

En la documentación está http://docs.moodle.org/26/en/Advanced_Maths_Tools , pendiente de traducir en http://docs.moodle.org/all/es/Herramientas_matem%C3%A1ticas_avanzadas.

Si alguien lee esta documentación y actualiza la página en español, será de mucha utilidad.

 
Promedio de calificaciones: -
Cuetlachcoyotl o Lobo Mexicano
Re: Problema con LaTex
ModeradoresMoodlers de gran ayuda

Hola Pedro,

Como entiendo el funcionamiento, cuando uno crea una ecuación vía el editor HMTL (Ej. directamente o junto con DragMath), Moodle genera un archivo en: moodledata/temp/latex

Digamos que en mi caso se ha generado uno llamado:

00abc95304bfc3d38fff2ad1510cdc76.tex

Dicho archivo contiene diversas cosas, incluyendo la ecuación (es un logaritmo que resalto con otro color):

\documentclass[12pt]{article}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\RequirePackage{amsmath,amssymb,latexsym}
\pagestyle{empty}
\begin{document}
$ \log x = y $
\end{document}

Si entro a /moodledata/filter/tex/, ahí encontraré el "gif" respectivo:

00abc95304bfc3d38fff2ad1510cdc76.gif

Como notarás, ambos archivos tienen el mismo nombre, aunque diferente extensión.

En cierto sentido, podríamos decir que por cada archivo"tex" debe existir uno "gif" (cada uno en su carpeta), con el mismo nombre.

Parece que esto no pasa en tu plataforma.

De lo que comentas, el problema está en la cuestión de la imagen (gif).

Esto valdría la pena comprobarlo, creando múltiples ecuaciones y viendo si se generan los "tex" correspondiente.

Bien, si todo esto es correcto, en mi opinión el problema podría estar en:

1) Los pemisos de /moodledata/filter/tex/

Dices que aquí tienes 777, por lo que debemos descartar esta opción.

2) Que tu servicio de hosting no tenga activadas las funcionalidades de system y/o exec.

Al respecto échale un vistazo a esto.

Estas son hipótesis, por lo que habría que comprobarlo activando el modo de depuración de Moodle y/o consultando los logs de error del servidor.

Saludos

***

PD es la primera respuesta que obtengo en un mes.

Es una pena esto, pero al menos de mi parte, el año pasado y este he tenido tanto trabajo, que he dejado de lado la participación en estos foros por semanas. Estaría genial que más gente se atreviera a apoyar a los demás, pues sólo así podremos seguir siendo una de las mejores comunidades de software libre sonrisa

 
Promedio de calificaciones:Útil (2)
Imagen de Iñaki Arenaza
Re: Problema con LaTex
DesarrolladoresDesarrolladores de pluginsDocumentadoresModeradoresMoodlers de gran ayuda

2) Que tu servicio de hosting no tenga activadas las funcionalidades de system y/o exec.

Mi sospecha va en esta dirección. En concreto esas son las condiciones esenciales a las que me refería en el mensaje original que cita Pedro al comienzo de esta discusión.

En su caso puede que estén desactivadas, o que tengan restricciones adicionales, o que el sistema en el que está instalado Moodle no pueda ejecutar correctamente el ejecutable de mimeTeX que le corresponde. Por los mensajes de depuración del filtro veo que Moodle se está ejecutando sobre FreeBSD. Suponiendo que no está deshabilitado system() y exec() en PHP, que el ejecutable está en un directorio que esté configurado como permitido en safe_mode_exec_dir (suponiendo que el proveedor haya habilitado safe_mode), habría que confirmar que el binario que viene con Moodle para FreeBSD se puede ejecutar sin problemas en su servidor.

Lo digo porque puede ocurrir que el binario que viene con Moodle sea para sistemas de FreeBSD 32 bits y el servidor sea de 64 bits y no tenga un modo de compatibilidad con 32 bits. O que necesite una biblioteca compartida (".so") para ejecutarse que no esté disponible en el servidor (esto es muy poco probable, porque en principio son binarios compilados de forma estática, pero aún así necesitan al menos la libc y la libm en el caso del binario para Linux).

O que aunque en PHP no hayan restringido las funciones system y exec, sin embargo a nivel de servidor web o sistema operativo impidan la ejecución de binarios proporcionados por el usuario (usando tecnologías equivalentes de FreeBSD a SELinux o AppArmor).

Vamos, que hay un montón de cosas diferentes que pueden estar interfiriendo, y habría que ir comprobando una por una con la ayuda del proveedor de servicios.

Saludos. Iñaki.

 
Promedio de calificaciones:Útil (3)
Imagen de Pedro Alburquerque
Re: Problema con LaTex
 

Efectivamente Iñaki, ahí está el problema, mi servidor, que es compartido, tiene deshabilitadas la funciones system() y exec(), según me comentan desde el servicio de alojamiento, por cuestiones de seguridad. Me sugieren que contrate un servidor dedicado.

Por lo tanto, enigma resuelto, tengo capado PHP en mi servidor.

He probado la solución de Juan, enlazando mi moodle con MathJax, y funciona perfectamente.

Muchas gracias a todos por vuestras respuestas, ya sé un poco más.

 
Promedio de calificaciones: -
Imagen de Nidia Bustos
Re: Problema con LaTex
 

Hola,


Hoy me tocó ver este tema, de enlazar mathJax con moodle (versión 2.6)

Copié el script, pero aún así veo las funciones con los símbolos de $$ en vez de la función como corresponde.


Alguien sabe el por qué puede suceder esto???

La librería de tex está deshabilitada.


Agradezco su ayuda.

Saludos.

 
Promedio de calificaciones: -
En la huerta escolar.
Re: Problema con LaTex
 

Cordial saludo

Luego de probar y probar todas las sugerenicas en Ubuntu para la Notación Tex, de instalar textlive y que nada me funcionará, probé desinstalar la Notación TEX desde el Gestor de Filtros, pero resultó que al buscarlo para instalarlo no había ningún filtro_tex en moodle.org, pero si latex2e https://moodle.org/plugins/filter_dfmtex me dió por instalarlo a pesar de que la versión es 2.2, y yo tengo 3.4 y funcionó, me devolvió el alma al cuerpo, ha vuelto a funcionar o mostrar los símbolos en el editor de ecuaciones, al igual que mostrar las preguntas con latex que había hecho en otro sitio moodle. Mil gracias por sus sugerencias. Feliz día.

 
Promedio de calificaciones:Útil (1)
En la huerta escolar.
Re: Problema con LaTex
 

Que vaina, sólo funciona si está conectado a internet.

 
Promedio de calificaciones: -
En la huerta escolar.
Re: Problema con LaTex
 

Luego de volver a probar, y al ir a purgar las caches, sin querer pude reinstalar el filtro Notación_Tex que había borrado, en sí ya estaba funcionando con el nuevo filtro que instalé, pero sólo si estaba conectado a internet, y en realidad era Mathjax el que hacía el trabajo, en fin, al reinstalar el filtro Notación Tex, instale también en ubuntu el mimetex

sudo apt-get update
sudo apt-get install mimetex
Luego de ello, habilite de nuevo el filtro Notación Tex, le dí también configurar y allí le agregué al cuadro vació del mimetex lo siguiente:

/usr/bin/mimetex

Recordar darle permisos a las carpetas de moodle y a mimetex,

sudo chmod -R 755 carpeta_que_necesito_darle_permisos

Cambié la densidad por 240, y por fín funcionó en local de nuevo el filtro tex (previamente había deshabilitado MathJax), tanta vuelta para algo tan sencillo, espero le sirva esta solución a alguien, igual espero volver a encontrar esta entrada en un futuro por si se me olvida. Gracias.

 
Promedio de calificaciones:Útil (1)