Site Tools


Sidebar

On This Site
Community
Contribute
en:contribute

This is an old revision of the document!


Contributing to This Wiki

Edit Rights

Logged in users have edit rights to almost all pages. Currently, an account can be automatically registered by logging in with Discord.

and Discord only. Sorry for the dependency, but this is an easy way to fight off some spam, and most of us are on Discord anyways.

Copyrights

By contributing to here, you thereby license content you provided to the public for reuse under CC BY-NC-SA, with license details linked down below.

Creating Pages

Though you are strongly suggested to check page first, TL;DR is, in Dokuwiki, any link <base_url>/what-ever-page is a “valid” wiki page, even if no one has ever created it. By navigating to that link, you will be provided instructions on how to create that page.

However, this is usually NOT the way one should create a page, because a page created this way, on creation, will be only accessible from the sitemap or the exact link, which will not be accessed by most users, effectively creating an “orphaned” page.

Now that every link is “valid”, populated at least by the instructions to create a page represented by the link, the proper way to create a page is simply, in an already existing page, put a link to the to-be-created page, like [[nonexistent|this]] this. Then one can follow the link and proceed to create the page.

Namespaces

Similar to filesystems where files are organized by path/to/file, in Dokuwiki we represent such hierarchical structure by namespaces. <base_url>/namespace1:namespace2:page, that's it. And for this example, the “current” namespace for page is namespace2.

The nicest thing about namespaces is that, a link to a page created within a page, is by default resolved relative to the current namespace. [[link|page]] in <base_url>/ns1:ns2:blah is referring to <base_url>/ns1:ns2:link. That way, within a namespace one can freely create links to future pages, without worrying about conflicting with other pages in other namespaces.

Following Dokiwiki conventions, we use namespace:start as the first and indexing page for namespace.

Normally you will not be needing to create new namespaces. In many cases a new page under the current namespace, instead of a new namespace with the content put into the start page of the new namespace, is a better idea. You are welcome to consult the admins before creating namespaces. And even if you decide on yourself that you want to create a namespace, this won't cause too much problems even if you did it wrongly, as admins have nice tools to move pages and rebuild indexes :).

Translation

On any page with a sidebar, by selecting a language with the drop-down, you will be navigated to the same page, but in the target language. If the page appears to not exist, that means you are the first translator of that page in that language. Simply create the page following the instructions shown. On creation, your editor will be populated with the English version of the page.

If you cannot find a language in the drop-down, that means the language is not yet enabled. Join the Discord server and express your intent to begin translation into a new language, and admins will set things up.

Experimental translation status tracker here.

Internals

If you are smart enough, you may realize by now that the translation framework is basically powered by the namespace system. Under the root namespace are namespaces representing different languages, named by ISO language codes. As everything is relative, within a language namespace everything is nicely linked together, and switching language is simply done by switching the language namespace at the very front of the page link.

If you are the first translator of a language, you may will notice that the sidebar on the pages in your language is missing. This brings an exception to the page creation convention: You should be entering <base_url>/<language code>:sidebar in your browser and create the sidebar. (For updating existing sidebar, also navigate to the sidebar in this way.) Use the default English sidebar as a reference.

Due to some weird translation plugin internals, links to wiki pages on the sidebar should start with a ., to ensure correct linking to the page in your language. [[contribute]] will lead to <base_url>/contribute (which is non-existent, as it is under root, instead of a language namespace), while [[.contribute]] will do the trick.

Misc

You can find the Dokuwiki syntax manual in the sidebar.

en/contribute.1708439278.txt.gz · Last modified: 2024/02/20 09:27 by Richardn