Re: [Python] come creare un filtro personalizzato con jinja
In data mercoledì 22 giugno 2011 14:43:10, Pietro Zambelli ha scritto: Io lo sto utilizzando per farmi generare automaticamente del latex... all'interno del mio documento LaTex inserisco una cosa del tipo: {{ ../some.csv|table(label='tab0',caption='Una bella tabella.') }} e questo mi genera automaticamente da un csv come questo: Name,Weight,Heigth Pippo,58.789,1.828 Pluto,16.983,0.608 una cosa come questa: \begin{table}[htb!] \scriptsize \centering \begin{tabular}{ ccc } Name Weight Heigth \\ Pippo 58.789 1.828 \\ Pluto 16.983 0.608 \\ \end{tabular} \caption{ Una bella tabella. } \label{ tab0 } \end{table} l'altro filtro che sto facendo è che mi generi un grafico con tutte le subfigure, con le immagini contenute in una cartella... Buon giorno a tutti! visto che sono stato contattato da alcuni perché interessati a questo programma, che ho chiamato Dynamic Latex Generator, scrivo e pubblicizzo cosa fa: * aggiunge un filtro jinja che, legge e trasforma il file csv, elaborandolo a seconda di quello che si vuole ottenere. Ad esempio aggiungendo linee verticali o orizzontali, differenziando lo stile delle colonne (l-c-r) ed infine permettendo di modificare il format dei numeri utilizzando la sintassi python; * da la possibilità di utilizzare il programma da linea di comando per fare in modo che i file latex compilati da jinja vengano messi in una cartella 'build', per poter poi essere interpretati da un compilatore latex vero e proprio; * da la possibilità di leggere un file di configurazione, per assegnare degli stili standard ed altri dati che sono richiamabili all'interno del template. Per chi fosse interessato a collaborare, a dare suggerimenti o critiche, il codice sorgente è disponibile su github: https://github.com/zarch/dynlatex Grazie. Pietro signature.asc Description: This is a digitally signed message part. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come creare un filtro personalizzato con jinja
Ciao. Non so esserti di aiuto ma complimenti per la segnalazione. Non conoscevo questo jinja (anche difficile da scrivere) ma ad una prima occhiata mi piace molto :-) Il giorno 22 giugno 2011 10:02, Pietro Zambelli peter.z...@gmail.com ha scritto: Ciao a tutti, mi sto avvicinando a jinja, e vorrei creare un filtro personalizzato... Sto cercando di seguire l'esempio presente nella documentazione Custom Filters: http://jinja.pocoo.org/docs/api/#writing-filters ma non sono riuscito a capire come funziona, vi riporto quello che ho scritto: --- # -*- coding: utf-8 -*- from jinja2 import Template, Environment from datetime import datetime def datetimeformat(value, format='%H:%M / %d-%m-%Y'): return value.strftime(format) environment = Environment() environment.filters['datetimeformat'] = datetimeformat mytemplate = Template(author: {{ name|title }} written on: {{ now|datetimeformat }}) print(mytemplate.render(name='pIeTro', now=datetime.now())) --- cosa sto sbagliando? grazie per l'aiuto Pietro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Blog:http://zuccala.blogspot.com/ Twitter: http://twitter.com/#!/VittorioZuccala/ Buzz: http://www.google.com/profiles/nathanvi#buzz ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come creare un filtro personalizzato con jinja
In data mercoledì 22 giugno 2011 10:02:37, Pietro Zambelli ha scritto: cosa sto sbagliando? Sbagliavo, perché bisognava caricare il template nel environment, nel casolo si voglia caricare da una stringa c'è il metodo from_string... vi riporto il codice funzionante. --- # -*- coding: utf-8 -*- from jinja2 import Template, Environment, PackageLoader from datetime import datetime def datetimeformat(value, format='%H:%M / %d-%m-%Y'): return value.strftime(format) environment = Environment() environment.filters['datetimeformat'] = datetimeformat mytemplate = environment.from_string(author: {{ name|title }} written on: {{ now|datetimeformat }}) print(mytemplate.render(name='pIeTro', now=datetime.now())) --- Buona giornata! Pietro signature.asc Description: This is a digitally signed message part. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come creare un filtro personalizzato con jinja
Allora forse potrà interessarti anche Flask. :-) Paolo On Wed, 2011-06-22 at 10:52 +0200, Vittorio Zuccala' wrote: Ciao. Non so esserti di aiuto ma complimenti per la segnalazione. Non conoscevo questo jinja (anche difficile da scrivere) ma ad una prima occhiata mi piace molto :-) Il giorno 22 giugno 2011 10:02, Pietro Zambelli peter.z...@gmail.com ha scritto: Ciao a tutti, mi sto avvicinando a jinja, e vorrei creare un filtro personalizzato... Sto cercando di seguire l'esempio presente nella documentazione Custom Filters: http://jinja.pocoo.org/docs/api/#writing-filters ma non sono riuscito a capire come funziona, vi riporto quello che ho scritto: --- # -*- coding: utf-8 -*- from jinja2 import Template, Environment from datetime import datetime def datetimeformat(value, format='%H:%M / %d-%m-%Y'): return value.strftime(format) environment = Environment() environment.filters['datetimeformat'] = datetimeformat mytemplate = Template(author: {{ name|title }} written on: {{ now|datetimeformat }}) print(mytemplate.render(name='pIeTro', now=datetime.now())) --- cosa sto sbagliando? grazie per l'aiuto Pietro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Blog:http://zuccala.blogspot.com/ Twitter: http://twitter.com/#!/VittorioZuccala/ Buzz: http://www.google.com/profiles/nathanvi#buzz ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- My blog: http://paolobernardi.wordpress.com signature.asc Description: This is a digitally signed message part ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come creare un filtro personalizzato con jinja
Ottimo. A questo punto una domanda la faccio io. Ma jinja serve per elaborare template solo per linguaggio HTML o qualsiasi? Posso utilizzarlo per creare dei files in LaTeX o con il linguaggio del Wiki aziendale? Il giorno 22 giugno 2011 14:19, Paolo Bernardi villa.lo...@tiscali.it ha scritto: Allora forse potrà interessarti anche Flask. :-) Paolo On Wed, 2011-06-22 at 10:52 +0200, Vittorio Zuccala' wrote: Ciao. Non so esserti di aiuto ma complimenti per la segnalazione. Non conoscevo questo jinja (anche difficile da scrivere) ma ad una prima occhiata mi piace molto :-) Il giorno 22 giugno 2011 10:02, Pietro Zambelli peter.z...@gmail.com ha scritto: Ciao a tutti, mi sto avvicinando a jinja, e vorrei creare un filtro personalizzato... Sto cercando di seguire l'esempio presente nella documentazione Custom Filters: http://jinja.pocoo.org/docs/api/#writing-filters ma non sono riuscito a capire come funziona, vi riporto quello che ho scritto: --- # -*- coding: utf-8 -*- from jinja2 import Template, Environment from datetime import datetime def datetimeformat(value, format='%H:%M / %d-%m-%Y'): return value.strftime(format) environment = Environment() environment.filters['datetimeformat'] = datetimeformat mytemplate = Template(author: {{ name|title }} written on: {{ now|datetimeformat }}) print(mytemplate.render(name='pIeTro', now=datetime.now())) --- cosa sto sbagliando? grazie per l'aiuto Pietro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Blog:http://zuccala.blogspot.com/ Twitter: http://twitter.com/#!/VittorioZuccala/ Buzz: http://www.google.com/profiles/nathanvi#buzz ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- My blog: http://paolobernardi.wordpress.com -- Blog:http://zuccala.blogspot.com/ Twitter: http://twitter.com/#!/VittorioZuccala/ Buzz: http://www.google.com/profiles/nathanvi#buzz ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come creare un filtro personalizzato con jinja
In data mercoledì 22 giugno 2011 14:24:53, Vittorio Zuccala' ha scritto: Ottimo. A questo punto una domanda la faccio io. Ma jinja serve per elaborare template solo per linguaggio HTML o qualsiasi? Posso utilizzarlo per creare dei files in LaTeX o con il linguaggio del Wiki aziendale? Si, puoi utilizzarlo per qualsiasi testo: HTML, XML, LaTex, C, C++, etc :-D Io lo sto utilizzando per farmi generare automaticamente del latex... all'interno del mio documento LaTex inserisco una cosa del tipo: {{ ../some.csv|table(label='tab0',caption='Una bella tabella.') }} e questo mi genera automaticamente da un csv come questo: Name,Weight,Heigth Pippo,58.789,1.828 Pluto,16.983,0.608 una cosa come questa: \begin{table}[htb!] \scriptsize \centering \begin{tabular}{ ccc } Name Weight Heigth \\ Pippo 58.789 1.828 \\ Pluto 16.983 0.608 \\ \end{tabular} \caption{ Una bella tabella. } \label{ tab0 } \end{table} l'altro filtro che sto facendo è che mi generi un grafico con tutte le subfigure, con le immagini contenute in una cartella... Se la cosa può interessare, la metto su github... Buona giornata! Pietro signature.asc Description: This is a digitally signed message part. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python