merge duplicate bug into original
[ikiwiki] / doc / bugs / broken_parentlinks.mdwn
1 The header of subpages always links to its "superpage", even if it doesn't
2 exist. I'm not sure if this is a feature or a bug, but I would certainly prefer
3 that superpages weren't mandatory.
4
5 For example, if you are in 'example/page.html', the header will be something
6 like 'wiki / example / page'. Now, if 'example.html' doesn't exist, you'll have
7 a dead link for every subpage.
8
9 ---
10
11 This is a bug, but fixing it is very tricky. Consider what would happen if
12 example.mdwn were created: example/page.html and the rest of example/*
13 would need to be updated to change the parentlink from a bare work to a
14 link to the new page. Now if example.mdwn were removed again, they'd need
15 to be updated again. So example/* depends on example. But it's even more
16 tricky, because if example.mdwn is modified, we _don't_ want to rebuild
17 example/*!
18
19 ikiwiki doesn't have a way to represent this dependency and can't get one
20 without a lot of new complex code being added.
21
22 > Note that this code has now been added. In new terms, example/* has a
23 > presence dependency on example. So this bug is theoretically fixable now.
24 > --[[Joey]] 
25
26 For now the best thing to do is to make sure that you always create
27 example if you create example/foo. Which is probably a good idea anyway..
28
29 ----
30
31 Note that this bug does not exist if the wiki is built with the "usedirs"
32 option, since in that case, the parent link will link to a subdirectory,
33 that will just be missing the index.html file, but still nicely usable.
34 --[[Joey]] 
35
36 ----
37
38 <http://www.gnu.org/software/hurd/hurd/translator/writing.html> does not exist.
39 Then, on
40 <http://www.gnu.org/software/hurd/hurd/translator/writing/example.html>, in the
41 *parentlinks* line, *writing* links to the top-level *index* file.  It should
42 rather not link anywhere at all.  --[[tschwinge]]
43
44 > So, the bug has changed behavior a bit. Rather than a broken link, we get
45 > a link to the toplevel page. This, FWIW, is because the template now
46 > uses this for each parentlink:
47
48         <a href="<TMPL_VAR URL>"><TMPL_VAR PAGE></a>/
49
50 > Best workaround is still to enable usedirs. --[[Joey]]