]> pere.pagekite.me Git - homepage.git/blob - blog/From_English_wiki_to_translated_PDF_and_epub_via_Docbook.html
Generated.
[homepage.git] / blog / From_English_wiki_to_translated_PDF_and_epub_via_Docbook.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: From English wiki to translated PDF and epub via Docbook</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9
10
11 </head>
12 <body>
13 <div class="title">
14 <h1>
15 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <div class="entry">
23 <div class="title">From English wiki to translated PDF and epub via Docbook</div>
24 <div class="date">17th June 2014</div>
25 <div class="body"><p>The <a href="http://www.skolelinux.org/">Debian Edu / Skolelinux
26 project</a> provide an instruction manual for teachers, system
27 administrators and other users that contain useful tips for setting up
28 and maintaining a Debian Edu installation. This text is about how the
29 text processing of this manual is handled in the project.</p>
30
31 <p>One goal of the project is to provide information in the native
32 language of its users, and for this we need to handle translations.
33 But we also want to make sure each language contain the same
34 information, so for this we need a good way to keep the translations
35 in sync. And we want it to be easy for our users to improve the
36 documentation, avoiding the need to learn special formats or tools to
37 contribute, and the obvious way to do this is to make it possible to
38 edit the documentation using a web browser. We also want it to be
39 easy for translators to keep the translation up to date, and give them
40 help in figuring out what need to be translated. Here is the list of
41 tools and the process we have found trying to reach all these
42 goals.</p>
43
44 <p>We maintain the authoritative source of our manual in the
45 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/">Debian
46 wiki</a>, as several wiki pages written in English. It consist of one
47 front page with references to the different chapters, several pages
48 for each chapter, and finally one "collection page" gluing all the
49 chapters together into one large web page (aka
50 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/AllInOne">the
51 AllInOne page</a>). The AllInOne page is the one used for further
52 processing and translations. Thanks to the fact that the
53 <a href="http://moinmo.in/">MoinMoin</a> installation on
54 wiki.debian.org support exporting pages in
55 <a href="http://www.docbook.org/">the Docbook format</a>, we can fetch
56 the list of pages to export using the raw version of the AllInOne
57 page, loop over each of them to generate a Docbook XML version of the
58 manual. This process also download images and transform image
59 references to use the locally downloaded images. The generated
60 Docbook XML files are slightly broken, so some post-processing is done
61 using the <tt>documentation/scripts/get_manual</tt> program, and the
62 result is a nice Docbook XML file (debian-edu-wheezy-manual.xml) and
63 a handfull of images. The XML file can now be used to generate PDF, HTML
64 and epub versions of the English manual. This is the basic step of
65 our process, making PDF (using dblatex), HTML (using xsltproc) and
66 epub (using dbtoepub) version from Docbook XML, and the resulting files
67 are placed in the debian-edu-doc-en binary package.</p>
68
69 <p>But English documentation is not enough for us. We want translated
70 documentation too, and we want to make it easy for translators to
71 track the English original. For this we use the
72 <a href="http://packages.qa.debian.org/p/poxml.html">poxml</a> package,
73 which allow us to transform the English Docbook XML file into a
74 translation file (a .pot file), usable with the normal gettext based
75 translation tools used by those translating free software. The pot
76 file is used to create and maintain translation files (several .po
77 files), which the translations update with the native language
78 translations of all titles, paragraphs and blocks of text in the
79 original. The next step is combining the original English Docbook XML
80 and the translation file (say debian-edu-wheezy-manual.nb.po), to
81 create a translated Docbook XML file (in this case
82 debian-edu-wheezy-manual.nb.xml). This translated (or partly
83 translated, if the translation is not complete) Docbook XML file can
84 then be used like the original to create a PDF, HTML and epub version
85 of the documentation.</p>
86
87 <p>The translators use different tools to edit the .po files. We
88 recommend using
89 <a href="http://www.kde.org/applications/development/lokalize/">lokalize</a>,
90 while some use emacs and vi, others can use web based editors like
91 <a href="http://pootle.translatehouse.org/">Poodle</a> or
92 <a href="https://www.transifex.com/">Transifex</a>. All we care about
93 is where the .po file end up, in our git repository. Updated
94 translations can either be committed directly to git, or submitted as
95 <a href="https://bugs.debian.org/src:debian-edu-doc">bug reports
96 against the debian-edu-doc package</a>.</p>
97
98 <p>One challenge is images, which both might need to be translated (if
99 they show translated user applications), and are needed in different
100 formats when creating PDF and HTML versions (epub is a HTML version in
101 this regard). For this we transform the original PNG images to the
102 needed density and format during build, and have a way to provide
103 translated images by storing translated versions in
104 images/$LANGUAGECODE/. I am a bit unsure about the details here. The
105 package maintainers know more.</p>
106
107 <p>If you wonder what the result look like, we provide
108 <a href="http://maintainer.skolelinux.org/debian-edu-doc/">the content
109 of the documentation packages on the web</a>. See for example the
110 <a href="http://maintainer.skolelinux.org/debian-edu-doc/it/debian-edu-wheezy-manual.pdf">Italian
111 PDF version</a> or the
112 <a href="http://maintainer.skolelinux.org/debian-edu-doc/de/debian-edu-wheezy-manual.html">German
113 HTML version</a>. We do not yet build the epub version by default,
114 but perhaps it will be done in the future.</p>
115
116 <p>To learn more, check out
117 <a href="http://packages.qa.debian.org/d/debian-edu-doc.html">the
118 debian-edu-doc package</a>,
119 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/">the
120 manual on the wiki</a> and
121 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/Translations">the
122 translation instructions</a> in the manual.</p>
123 </div>
124
125 <div class="tags">Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.</div>
126
127
128 </div>
129
130
131
132
133 <div id="sidebar">
134
135
136
137 <h2>Archive</h2>
138 <ul>
139
140 <li>2016
141 <ul>
142
143 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
144
145 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
146
147 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
148
149 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
150
151 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
152
153 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
154
155 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
156
157 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
158
159 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
160
161 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
162
163 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
164
165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (4)</a></li>
166
167 </ul></li>
168
169 <li>2015
170 <ul>
171
172 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
173
174 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
175
176 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
177
178 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
179
180 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
181
182 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
183
184 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
185
186 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
187
188 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
191
192 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
193
194 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
195
196 </ul></li>
197
198 <li>2014
199 <ul>
200
201 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
202
203 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
204
205 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
206
207 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
208
209 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
210
211 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
212
213 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
214
215 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
216
217 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
218
219 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
220
221 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
222
223 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
224
225 </ul></li>
226
227 <li>2013
228 <ul>
229
230 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
231
232 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
239
240 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
241
242 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
243
244 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
245
246 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
247
248 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
249
250 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
251
252 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
253
254 </ul></li>
255
256 <li>2012
257 <ul>
258
259 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
260
261 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
262
263 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
264
265 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
266
267 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
268
269 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
270
271 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
272
273 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
274
275 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
276
277 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
278
279 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
280
281 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
282
283 </ul></li>
284
285 <li>2011
286 <ul>
287
288 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
289
290 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
291
292 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
293
294 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
295
296 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
297
298 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
299
300 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
301
302 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
303
304 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
305
306 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
307
308 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
309
310 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
311
312 </ul></li>
313
314 <li>2010
315 <ul>
316
317 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
318
319 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
320
321 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
322
323 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
324
325 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
326
327 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
328
329 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
330
331 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
332
333 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
334
335 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
336
337 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
338
339 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
340
341 </ul></li>
342
343 <li>2009
344 <ul>
345
346 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
347
348 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
349
350 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
351
352 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
353
354 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
355
356 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
357
358 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
359
360 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
361
362 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
363
364 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
365
366 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
367
368 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
369
370 </ul></li>
371
372 <li>2008
373 <ul>
374
375 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
376
377 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
378
379 </ul></li>
380
381 </ul>
382
383
384
385 <h2>Tags</h2>
386 <ul>
387
388 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
389
390 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
391
392 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
393
394 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
395
396 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (9)</a></li>
397
398 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (16)</a></li>
399
400 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
401
402 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
403
404 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (143)</a></li>
405
406 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
407
408 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
409
410 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (16)</a></li>
411
412 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (23)</a></li>
413
414 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
415
416 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (335)</a></li>
417
418 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
419
420 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
421
422 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (29)</a></li>
423
424 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
425
426 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (18)</a></li>
427
428 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
429
430 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
431
432 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (14)</a></li>
433
434 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
435
436 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
437
438 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
439
440 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
441
442 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
443
444 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
445
446 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (39)</a></li>
447
448 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (9)</a></li>
449
450 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (285)</a></li>
451
452 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (182)</a></li>
453
454 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (26)</a></li>
455
456 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
457
458 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (62)</a></li>
459
460 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (96)</a></li>
461
462 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
463
464 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
465
466 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
467
468 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
469
470 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (10)</a></li>
471
472 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
473
474 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (5)</a></li>
475
476 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
477
478 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (52)</a></li>
479
480 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
481
482 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
483
484 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (49)</a></li>
485
486 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (5)</a></li>
487
488 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (10)</a></li>
489
490 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (44)</a></li>
491
492 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
493
494 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
495
496 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
497
498 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (59)</a></li>
499
500 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
501
502 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (38)</a></li>
503
504 </ul>
505
506
507 </div>
508 <p style="text-align: right">
509 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
510 </p>
511
512 </body>
513 </html>