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">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Notes on language codes for Norwegian docbook processing...
</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" />
13 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
21 <div class=
"title">Notes on language codes for Norwegian docbook processing...
</div>
22 <div class=
"date">10th August
2012</div>
23 <div class=
"body"><p>In
<a href=
"http://www.docbook.org/">docbook
</a> one can specify
24 the language used at the top, and the processing pipeline will use
25 this information to pick the correct translations for 'chapter', 'see
26 also', 'index' etc. And for most languages used with docbook, I guess
27 this work just fine. For example a German user can start the document
28 with
<book
lang="de"
>, and the document will show up with the
29 correct content with any of the docbook processors. This is not the
31 <a href=
"http://people.skolelinux.org/pere/blog/Free_Culture_in_Norwegian___5_chapters_done__74_percent_left_to_do.html">I
32 am working with at the moment
</a>, Norwegian Bokmål.
</p>
34 <p>For a while, I was confused about which language code to use,
35 because I was unable to find any language code that would work across
36 all tools. I am currently testing dblatex, xmlto, docbook-xsl, and
37 dbtoepub, and they do not handle Norwegian Bokmål the same way. Some
38 of them do not handle it at all.
</p>
40 <p>A bit of background information is probably needed to understand
41 this mess. Norwegian is not one, but two written variants. The
42 variants are Norwegian Nynorsk and Norwegian Bokmål. There are three
43 two letter language codes associated with these languages, Norwegian
44 is 'no', Norwegian Nynorsk is 'nn' and Norwegian Bokmål is 'nb'.
45 Historically the 'no' language code was used for Norwegian Bokmål, but
46 many years ago this was found to be å bad idea, and the recommendation
47 is to use the most specific language code instead, to avoid confusion.
48 In the transition period it is a good idea to make sure 'no' was an
51 <p>Back to docbook processing tools in Debian. The dblatex tool only
52 understand 'nn'. There are translations for 'no', but not 'nb' (BTS
53 <a href=
"http://bugs.debian.org/684391">#
684391</a>), but due to a bug
54 (BTS
<a href=
"http://bugs.debian.org/682936">#
682936</a>) the 'no'
55 language code is not recognised. The docbook-xsl tool chain only
56 recognise 'nn' and 'nb', but not 'no'. The xmlto tool only recognise
57 'nn' and 'nb', but not 'no'. The end result that there is no language
58 code I can use to get the docbook file working with all of these tools
59 at the same time. :(
</p>
61 <p>The correct solution is to use
<book
lang="nb"
>, but it will
62 take time before that will work with all the free software docbook
65 <p>Oh, the joy of well integrated tools. :/
</p>
68 <div class=
"tags">Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture
</a>.
</div>
86 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
88 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
90 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
92 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
94 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
96 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
98 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
100 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
102 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
104 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
106 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
5)
</a></li>
113 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
115 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
117 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
119 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
121 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
123 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
125 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
127 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
129 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
131 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
133 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
135 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
142 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
144 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
146 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
148 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
150 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
152 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
154 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
156 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
158 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
160 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
162 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
164 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
171 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
173 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
175 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
177 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
179 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
181 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
183 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
185 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
187 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
189 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
191 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
193 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
200 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
202 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
213 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
215 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
217 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
219 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
3)
</a></li>
221 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
12)
</a></li>
223 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
225 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
57)
</a></li>
227 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
116)
</a></li>
229 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
9)
</a></li>
231 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
7)
</a></li>
233 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
235 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
159)
</a></li>
237 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
20)
</a></li>
239 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
241 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
8)
</a></li>
243 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
9)
</a></li>
245 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
32)
</a></li>
247 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
17)
</a></li>
249 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
8)
</a></li>
251 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
4)
</a></li>
253 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
255 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
25)
</a></li>
257 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
212)
</a></li>
259 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
148)
</a></li>
261 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
6)
</a></li>
263 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
265 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
37)
</a></li>
267 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
56)
</a></li>
269 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
271 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
273 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
2)
</a></li>
275 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
4)
</a></li>
277 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
279 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
281 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
283 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
25)
</a></li>
285 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
287 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
4)
</a></li>
289 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
39)
</a></li>
291 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
3)
</a></li>
293 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
5)
</a></li>
295 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
11)
</a></li>
297 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
7)
</a></li>
299 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
35)
</a></li>
301 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
303 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
26)
</a></li>
309 <p style=
"text-align: right">
310 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.4
</a>