Overview
- Title
- write an interwiki map loader
- Duration
- 96
- Difficulty
- Easy
- Type
- Code
- Tags
- python
- Mentors
- thomaswaldmann,rb_proj,ronny_pfannschmidt,xoraxax
- Count
- -1
Description
Abstract
Write an interwiki map file (intermap.txt) loader that reads the file and returns a python dict.
Details
In moin2 the wikiconfig value "interwiki" is now just a dict. Thus we need a loader returning a python dict for people who want to load the file (intermap.txt).
Note: your code should also be able to process a unicode object (instead of a file) as input.
You need to write the code implementing the functionality, a unit test testing it and some docs for admins showing how to use it from the wikiconfig.
Deliverables: a patch or changeset.
Skill Requirements
python, py.test, rst
Links
Discussion
Claimed by MicheleOrru
Implementation
The code is avaible at: http://bitbucket.org/maker/moin-2.0-dev/ Since the repo is private, for now only Thomas and Alexander have +r access.
The module datastruct.backends.wiki_map implements the class InterWikiMap, which provides a set of utilities for parsing and checking a interwiki maps. Its main job is to load an interwiki file/string, and then store everything into a dictionary containing the name of the link as key, and its url as value.
In order to parse a string/file object, you simply have to use (respectively) InterWikiMap.from_file and InterWikiMap.from_string methods.
e.g.
Now, use interwiki_map to access urls, just like you would do with a simple dictionary:
e.g.