Skip to content

Instantly share code, notes, and snippets.

@almet
Last active December 14, 2015 13:58
Show Gist options
  • Save almet/5097274 to your computer and use it in GitHub Desktop.
Save almet/5097274 to your computer and use it in GitHub Desktop.
Exemple of plugin for pelican defining a new reader.
from pelican import signals
from pelican.readers import EXTENSIONS, Reader
class NewReader(Reader):
enabled = True
file_extensions = ['yeah']
def read(self, filename):
metadata = {'title': 'Oh yeah',
'category': 'Foo',
'date': '2012-12-01'}
parsed = {}
for key, value in metadata.items():
parsed[key] = self.process_metadata(key, value)
return "Some content", parsed
def get_generators(generators):
# define a new generator here if you need to
return generators
def add_reader(arg):
EXTENSIONS['yeah'] = NewReader
def register():
signals.get_generators.connect(get_generators)
signals.initialized.connect(add_reader)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment