While creating a bibliography using nikola I found about nikola path handlers. It allows you to make reference to other posts without needing the full address (e.g.
Instead you can use the special link:// protocol and nikola will resolve it for you. It uses the form:
There is (of course) another form that lets you doc it using the
:doc: restructured text directive. This form is more succinct, and is what I'll probably stick with in the future. I originally went with the
link version because I thought it would work with other markup languages, but it didn't (or at least not with org-mode).
In this case I'm trying to link to another post so the link kind is
post_path, which will resolve to either posts or pages. Because it can be either one, you need to extend the path to this form:
You can get the slug in the meta-data in the post itself.
When I forgot the last forward-slash (after the slug) nikola couldn't resolve it and returned a 404 error.
Here's how to link to another post that I titled Pruning Large Files From Git with BFG, with a slug of
This creates this link.
This is a restructured-text role that nikola supports to make it easier to install links. The previous example using this style would be done like this:
Which creates this link.
doc method seems much easier for posts, but the
links method covers many other cases and might be useful otherwise. It should be noted that both methods work for pages as well (stories), although the link version will need the path changed. In my case, all the pages are under the
stories folder so the link would be change to something like: