logo4 Evolution is progress—                          
progress is creativity.        
vline

Creole Macro to Include Pages

view blog view wiki view wiki view wiki

As already outlined there exist some macros quite helpful to start off.

The Initial Code Fragment

[Error: Macro 'code' error: code() missing 1 required positional argument: 'ext']

First Problem Solved

Even if adapting the page to my system this piece of code yields an error, which is caused because the variables environ['wiki.metadata_page'] and environ['wiki.page'] are initially not defined. I found a work around which allows to set the variable to the current page value if empty.

[Error: Macro 'code' error: code() missing 1 required positional argument: 'ext']

A much better solution is excluding the recursive test from the first page.

[Error: Macro 'code' error: code() missing 1 required positional argument: 'ext']

Downscaling The Included Text

Next I wanted my included text to fit the structure of the parent page. That is all subheadings have to be downgraded, so I created another parameter that signals the level at which the included page resides.

<<include slug=WaddingtonExperiment headerlevel=2>>

My include routine receives the parameter accordingly.

[Error: Macro 'code' error: code() missing 1 required positional argument: 'ext']

Finally for this Genshi filter to work I had to create a new class.

[Error: Macro 'code' error: code() missing 1 required positional argument: 'ext']

Probably this piece of code looks a bit awkward to those more experienced in python programming but it works. Unfortunately I didn't find any documentation how to create a filter and how the data structure in that filter look like.


Tags: Software

 
   

(c) Mato Nagel, Weißwasser 2004-2019, Disclaimer