mostrar markmin sintético

20 views
Skip to first unread message

Alan Etkin

unread,
May 5, 2012, 11:09:02 AM5/5/12
to web2py-...@googlegroups.com
Tengo una tabla que almacena markmin y quiero mostrar el texto procesado pero en una versión compacta, por ejemplo para una tabla tipo SQLTABLE. Es decir, quiero que si tiene un link que esté resaltado, si es un título que le ponga negrita, etc. La idea es que no se vea la sintaxis markmin pero que a la vez se pueda mostrar, en un campo reducido a una o un par de líneas, una sección sintetizada de la información; creo que el ayudante markmin no tiene algo automatizado para este caso; está el argumento flatten, pero devuelve todo como un string (sin el html).

¿Debería modificar el html devuelto por markmin con alguna función personalizada o hay otra forma mejor?

Luis Díaz

unread,
May 7, 2012, 10:53:10 AM5/7/12
to web2py-...@googlegroups.com
yo tomaria lo que arroja el argumento flatten y lo trabajaria en la
vista con jquery

Díaz Luis
Analista Programador Facultad de Odontología UC
http://www.about.me/diazluis
User Linux 532223

Alan Etkin

unread,
May 7, 2012, 1:08:40 PM5/7/12
to web2py-...@googlegroups.com
> yo tomaria lo que arroja el argumento flatten y lo trabajaria en la
> vista con jquery

Gracias Luiz, parece lo más apropiado. De todos modos creo que se podría pensar en una mejora de MARKMIN que te permita comprimir la salida para un formato determinado (cantidad de líneas, altura máxima tipográfica, etc.)

nicolás rosbaco

unread,
May 7, 2012, 1:25:13 PM5/7/12
to web2py-...@googlegroups.com
una pregunta.... ¿qué es lo que tira flatten? yo también ando con algunas pelas con markmin.... y eso puede ser de utilidad.... tiren un centro ahí.

gracias desde ya
--
"En un país colonial las oligarquías son las dueñas de los diccionarios" (John William Cooke)

Alan Etkin

unread,
May 8, 2012, 11:30:03 AM5/8/12
to web2py-...@googlegroups.com
return the text stored by the MARKMIN object rendered by the render function

No es muy claro, pero supuestamente devuelve un string sin equiquetas html, con el texto que contenga la sintaxis markmin que se le pase al ayudante.

nicolás rosbaco

unread,
May 8, 2012, 12:45:26 PM5/8/12
to web2py-...@googlegroups.com

Ok.
Pásame por favor un ejemplo de esa función pa probarlo
Gracias

_______________
desde celu y posiblemente apurado. sepa disculpar errores de edición.

El may 8, 2012 3:30 p.m., "Alan Etkin" <spam...@gmail.com> escribió:

return the text stored by the MARKMIN object rendered by the render function

No es muy claro, pero supuestamente devuelve un string sin equiquetas html, con el texto que contenga la sintaxis markmin que se le pase al ayudante.



On Monday, May 7, 2012 2:25:13 PM UTC-3, nicolás rosbaco wrote:
>

> una pregunta.... ¿qué es lo qu...

Javier Pepe

unread,
May 8, 2012, 1:00:48 PM5/8/12
to web2py-...@googlegroups.com
Alan

Podrías modificar la funcion markmin2html y dejar solo los tags que queres mostrar, y al resto lo reemplazas por blancos o simplemente nada.
De esta manera tendrías un html reducido, solo con negritas y links.


2012/5/8 nicolás rosbaco <anti...@gmail.com>

nicolás rosbaco

unread,
May 8, 2012, 1:29:24 PM5/8/12
to web2py-...@googlegroups.com
hola.... me meto: donde esta esta función markmin2html?
de hecho estoy revisando mi aplicación y no encuentro donde está el código de markmin...
si están los archivos estáticos en static, pero no veo código de funciones ni controlarores....

bueno gracias desde ya

Javier Pepe

unread,
May 8, 2012, 1:34:34 PM5/8/12
to web2py-...@googlegroups.com
Nicolas

web2py/gluon/contrib/markmin/markmin2html.py

Para la conversión tiene un monto de regex, a las cuales se las puede modificar quitar los tags de markmin y no poner ninguno y dejar solo los tag que interesan.


2012/5/8 nicolás rosbaco <anti...@gmail.com>

nicolás rosbaco

unread,
May 8, 2012, 1:52:41 PM5/8/12
to web2py-...@googlegroups.com
okkkkkkk.
mil gracias

Alan Etkin

unread,
May 9, 2012, 8:46:24 AM5/9/12
to web2py-...@googlegroups.com
Sería mejor alguna modificación o propuesta de agregado de la librería, para no tener una versión especial del framework. Lo de .flatten() lo estuve probando y no era lo que pensaba. Cuando hacés .flatten() de la salida de MARKMIN(), lo que produce es un string con la sintaxis markmin de entrada:

>>> print MARKMIN("# Mi primer markmin\n\nHola markmin\n\n### Fin del texto").flatten()
# Mi primer markmin

Hola markmin

### Fin del texto

Javier Pepe

unread,
May 9, 2012, 9:03:16 AM5/9/12
to web2py-...@googlegroups.com
Podemos modificar el markmin2html para pasarle un parametro, y con ese parametro modificamos los tags que si quieran dejar, o mejor pasar un dict con los tags a dejar, el resto no.
Y de esa manere es mas sencillo
Ej:

 print MARKMIN("# Mi primer markmin\n\nHola markmin\n\n### Fin del texto",tags=['#'])
<h1>Mi primer markmin</h1>Hola markmin Fin del texto

Algo asi

Luis Díaz

unread,
May 9, 2012, 9:52:42 AM5/9/12
to web2py-...@googlegroups.com
alan podrías imprimir un ejemplo real de lo que necesitas?

yo usaría la salida sencilla de texto de flatten y enviaría todo en
json.. y como te dije desde el cliente trabajaria con jquery


Díaz Luis
Analista Programador Facultad de Odontología UC
http://www.about.me/diazluis
User Linux 532223



Alan Etkin

unread,
May 10, 2012, 8:00:43 AM5/10/12
to web2py-usuarios
No tengo un ejemplo real, es una idea para una app en desarrollo. Lo
que quiero hacer es lo que mostraba Javier. Para un doc hecho con
markmin determinado, por ejemplo:

# Un documento realmente simple

[[link #myanchor]]

- ítem
- ítem
- ítem

Me interesa reducir la salida html que genera el parseador para por
ejemplo ponerla en un campo de una tabla, a modo de vista previa. Si
dejás el markmin como está, Te va a deformar la tabla con títulos H1 y
otros elementos similares. Además me interesa hacer un truncado del
contenido. No quiero que ponga en una campo TD un documento de 5
páginas.

Al parecer cuando hacés .flatten() de un objeto markmin, te devuelve
lo que ingresaste al crearlo. ¿Cómo procesarías con javascript la
sintaxis de markmin, hay algo para eso?

Me parece que como una opción inmediata lo que voy a hacer es procesar
la salida de markmin haciendo un filtrado de los elementos que quiero
mostrar, con los métodos de los ayudantes como .elements(), con un
conjunto definido de reglas: si es h1 convertir a h5, etc.

Entonces tengo una función que toma un campo de tabla con markmin y
devuelve la síntesis (los n primeros títulos, tantos links, etc),
luego al generar la tabla le paso la función al atributo .represent

On 9 mayo, 10:52, Luis Díaz <diazluis2...@gmail.com> wrote:
> alan podrías imprimir un ejemplo real de lo que necesitas?
>
> yo usaría la salida sencilla de texto de flatten y enviaría todo en
> json.. y como te dije desde el cliente trabajaria con jquery
>
> Díaz Luis
> Analista Programador Facultad de Odontología UChttp://www.about.me/diazluis
> User Linux 532223
>
> El día 9 de mayo de 2012 08:33, Javier Pepe <javierp...@gmail.com> escribió:
>
>
>
>
>
>
>
> > Podemos modificar el markmin2html para pasarle un parametro, y con ese
> > parametro modificamos los tags que si quieran dejar, o mejor pasar un dict
> > con los tags a dejar, el resto no.
> > Y de esa manere es mas sencillo
> > Ej:
>
> >  print MARKMIN("# Mi primer markmin\n\nHola markmin\n\n### Fin del
> > texto",tags=['#'])
> > <h1>Mi primer markmin</h1>Hola markmin Fin del texto
>
> > Algo asi
>
Reply all
Reply to author
Forward
0 new messages