#!/usr/bin/env python # encoding: utf-8 import os import jinja2 __all__ = ["texenv"] # Definition of jinja syntax for latex texenv = jinja2.Environment( block_start_string='\Block{', block_end_string='}', variable_start_string='\Var{', variable_end_string='}', line_statement_prefix='%-', line_comment_prefix='%#', loader=jinja2.FileSystemLoader(os.path.abspath('.')), extensions=['jinja2.ext.do'] ) # Filters def do_calculus(steps, name="A", sep="=", end="", joining=" \\\\ \n"): """Display properly the calculus Generate this form string: "name & sep & a_step end joining" :param steps: list of steps :returns: latex string ready to be endbeded """ ans = joining.join([ name + " & " + sep + " & " + str(s) + end for s in steps ]) return ans texenv.filters['calculus'] = do_calculus from random import shuffle texenv.filters['shuffle'] = shuffle # ----------------------------- # Reglages pour 'vim' # vim:set autoindent expandtab tabstop=4 shiftwidth=4: # cursor: 16 del