diff options
Diffstat (limited to 'backend/ikistrap/basewiki')
23 files changed, 944 insertions, 0 deletions
diff --git a/backend/ikistrap/basewiki/favicon.ico b/backend/ikistrap/basewiki/favicon.ico Binary files differnew file mode 100644 index 0000000..51d2781 --- /dev/null +++ b/backend/ikistrap/basewiki/favicon.ico diff --git a/backend/ikistrap/basewiki/ikiwiki.mdwn b/backend/ikistrap/basewiki/ikiwiki.mdwn new file mode 100644 index 0000000..4d84069 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki.mdwn @@ -0,0 +1,17 @@ +[[!meta robots="noindex, follow"]] +This wiki is powered by [ikiwiki](http://ikiwiki.info/). +[[!if test="enabled(version)" + then="(Currently running version [[!version ]].)" +]] + +Some documentation on using ikiwiki: + +* [[ikiwiki/formatting]] +* [[ikiwiki/wikilink]] +* [[ikiwiki/subpage]] +* [[ikiwiki/pagespec]] +* [[ikiwiki/directive]] +* [[ikiwiki/markdown]] +* [[ikiwiki/openid]] +* [[ikiwiki/searching]] +* [[templates]] diff --git a/backend/ikistrap/basewiki/ikiwiki/directive.mdwn b/backend/ikistrap/basewiki/ikiwiki/directive.mdwn new file mode 100644 index 0000000..1dc1e51 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/directive.mdwn @@ -0,0 +1,56 @@ +[[!meta robots="noindex, follow"]] +Directives are similar to a [[ikiwiki/WikiLink]] in form, except they +begin with `!` and may contain parameters. The general form is: + + \[[!directive param="value" param="value"]] + +This gets expanded before the rest of the page is processed, and can be used +to transform the page in various ways. + +The quotes around values can be omitted if the value is a simple word. +Also, some directives may use parameters without values, for example: + + \[[!tag foo]] + +A directive does not need to all be on one line, it can be +wrapped to multiple lines if you like: + + \[[!directive foo="baldersnatch" + bar="supercalifragilisticexpialidocious" baz=11]] + +Also, multiple lines of *quoted* text can be used for a value. +To allow quote marks inside the quoted text, delimit the block +of text with triple-double-quotes or triple-single-quotes: + + \[[!directive text=""" + 1. "foo" + 2. "bar" + 3. "baz" + """ othertext=''' + 1. 'quux' + 2. "foo" + ''']] + +If you want to put text with triple quotes into a parameter value, you can +use perl-style here-doc syntax, even nesting it like this: + + \[[!directive text=<<OUTER + [[!otherdirective <<INNER + inner text + INNER]] + outer text + OUTER]] + +ikiwiki also has an older syntax for directives, which requires a space in +directives to distinguish them from [[wikilinks|ikiwiki/wikilink]]. This +syntax has several disadvantages: it requires a space after directives with +no parameters (such as `\[[pagecount ]]`), and it prohibits spaces in +[[wikilinks|ikiwiki/wikilink]]. ikiwiki now provides the `!`-prefixed +syntax shown above as default. However, ikiwiki still supports wikis using +the older syntax, if the `prefix_directives` option is disabled. + +[[!if test="enabled(listdirectives)" then=""" +Here is a list of currently available directives in this wiki: + +[[!listdirectives ]] +"""]] diff --git a/backend/ikistrap/basewiki/ikiwiki/formatting.mdwn b/backend/ikistrap/basewiki/ikiwiki/formatting.mdwn new file mode 100644 index 0000000..befbce9 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/formatting.mdwn @@ -0,0 +1,106 @@ +[[!meta title="Formatting wiki pages"]] +[[!meta robots="noindex, follow"]] + +Text on this wiki is, by default, written in a form very close to how you +might write text for an email message. This style of text formatting is +called [[MarkDown]], and it works like this: + +Leave blank lines between paragraphs. + +You can *\*emphasise\** or **\*\*strongly emphasise\*\*** text by placing it +in single or double asterisks. + +To create a list, start each line with an asterisk: + +* "* this is my list" +* "* another item" + +To make a numbered list, start each line with a number (any number will +do) followed by a period: + +1. "1. first line" +2. "2. second line" +2. "2. third line" + +To create a header, start a line with one or more `#` characters followed +by a space and the header text. The number of `#` characters controls the +size of the header: + +# # h1 +## ## h2 +### ### h3 +#### #### h4 +##### ##### h5 +###### ###### h6 + +To create a horizontal rule, just write three or more dashes or stars on +their own line: + +---- + +To quote someone, prefix the quote with ">": + +> To be or not to be, +> that is the question. + +To write a code block, indent each line with a tab or 4 spaces: + + 10 PRINT "Hello, world!" + 20 GOTO 10 + +To link to an url or email address, you can just put the +url in angle brackets: <<http://ikiwiki.info>>, or you can use the +form \[link text\]\(url\) + +---- + +In addition to basic html formatting using [[MarkDown]], this wiki lets +you use the following additional features: + +* To link to another page on the wiki, place the page's name inside double + square brackets. So you would use `\[[WikiLink]]` to link to [[WikiLink]]. + +[[!if test="enabled(smiley) and smileys" then=""" +* Insert [[smileys]] and some other useful symbols. :-) +"""]] + +[[!if test="enabled(shortcut) and shortcuts" then=""" +* Use [[shortcuts]] to link to common resources. + + \[[!wikipedia War\_of\_1812]] +"""]] + +[[!if test="enabled(template) and templates" then=""" +* Create and fill out [[templates]] for repeated chunks of + parameterized wiki text. +"""]] + +* Insert various [[directives|directive]] onto a page to perform useful + actions. +[[!if test="enabled(toc) or enabled(meta) or enabled(inline)" then=""" + For example, you can: +"""]] + +[[!if test="enabled(toc)" then=""" + * Add a table of contents to a page: + + \[[!toc]] +"""]] + + +[[!if test="enabled(meta)" then=""" + * Change the title of a page: + + \[[!meta title="full page title"]] +"""]] + +[[!if test="enabled(inline)" then=""" + * Create a blog by inlining a set of pages: + + \[[!inline pages="blog/*"]] +"""]] + +[[!if test="enabled(listdirectives)" then=""" + Full list of [[directives|directive]] enabled for this wiki: + [[!listdirectives ]] +"""]] diff --git a/backend/ikistrap/basewiki/ikiwiki/markdown.mdwn b/backend/ikistrap/basewiki/ikiwiki/markdown.mdwn new file mode 100644 index 0000000..6841919 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/markdown.mdwn @@ -0,0 +1,11 @@ +[[!meta robots="noindex, follow"]] +[Markdown](http://daringfireball.net/projects/markdown/) +is a minimal markup language that resembles plain text as used in +email messages. It is the markup language used by this wiki by default. + +For documentation about the markdown syntax, see [[formatting]] and +[Markdown: syntax](http://daringfireball.net/projects/markdown/syntax). + +Note that [[WikiLinks|WikiLink]] and [[directives|directive]] are not part +of the markdown syntax, and are the only bit of markup that this wiki +handles internally. diff --git a/backend/ikistrap/basewiki/ikiwiki/openid.mdwn b/backend/ikistrap/basewiki/ikiwiki/openid.mdwn new file mode 100644 index 0000000..2fa972e --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/openid.mdwn @@ -0,0 +1,28 @@ +[[!meta title="OpenID"]] +[[!meta robots="noindex, follow"]] + +[[!if test="enabled(openid)" + then="This wiki has OpenID **enabled**." + else="This wiki has OpenID **disabled**."]] + +[OpenID](http://openid.net) is a decentralized authentication mechanism +that allows you to have one login that you can use on a growing number of +websites. + +If you have an account with some of the larger web service providers, +you might already have an OpenID. +[Directory of OpenID providers](http://openiddirectory.com/openid-providers-c-1.html) + +[[!if test="enabled(openid)" then=""" +To sign in to this wiki using OpenID, just enter it in the OpenID field in the +signin form. You do not need to give this wiki a password or go through any +registration process when using OpenID. +"""]] + +--- + +It's also possible to make a page in the wiki usable as an OpenID url, +by delegating it to an openid server. Here's an example of how to do that: + + \[[!meta openid="http://yourid.myopenid.com/" + server="http://www.myopenid.com/server"]] diff --git a/backend/ikistrap/basewiki/ikiwiki/pagespec.mdwn b/backend/ikistrap/basewiki/ikiwiki/pagespec.mdwn new file mode 100644 index 0000000..0f298ad --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/pagespec.mdwn @@ -0,0 +1,86 @@ +[[!meta robots="noindex, follow"]] +To select a set of pages, such as pages that are locked, pages +whose commit emails you want subscribe to, or pages to combine into a +blog, the wiki uses a PageSpec. This is an expression that matches +a set of pages. + +The simplest PageSpec is a simple list of pages. For example, this matches +any of the three listed pages: + + foo or bar or baz + +More often you will want to match any pages that have a particular thing in +their name. You can do this using a glob pattern. "`*`" stands for any part +of a page name, and "`?`" for any single letter of a page name. So this +matches all pages about music, and any [[SubPage]]s of the SandBox, but does +not match the SandBox itself: + + *music* or SandBox/* + +You can also prefix an item with "`!`" to skip pages that match it. So to +match all pages except for Discussion pages and the SandBox: + + * and !SandBox and !*/Discussion + +Some more elaborate limits can be added to what matches using these functions: + +* "`glob(someglob)`" - matches pages and other files that match the given glob. + Just writing the glob by itself is actually a shorthand for this function. +* "`page(glob)`" - like `glob()`, but only matches pages, not other files +* "`link(page)`" - matches only pages that link to a given page (or glob) +* "`tagged(tag)`" - matches pages that are tagged or link to the given tag (or + tags matched by a glob) +* "`backlink(page)`" - matches only pages that a given page links to +* "`creation_month(month)`" - matches only files created on the given month + number +* "`creation_day(mday)`" - or day of the month +* "`creation_year(year)`" - or year +* "`created_after(page)`" - matches only files created after the given page + was created +* "`created_before(page)`" - matches only files created before the given page + was created +* "`internal(glob)`" - like `glob()`, but matches even internal-use + pages that globs do not usually match. +* "`title(glob)`", "`author(glob)`", "`authorurl(glob)`", + "`license(glob)`", "`copyright(glob)`", "`guid(glob)`" + - match pages that have the given metadata, matching the specified glob. +* "`user(username)`" - tests whether a modification is being made by a + user with the specified username. If openid is enabled, an openid can also + be put here. Glob patterns can be used in the username. For example, + to match all openid users, use `user(*://*)` +* "`admin()`" - tests whether a modification is being made by one of the + wiki admins. +* "`ip(address)`" - tests whether a modification is being made from the + specified IP address. Glob patterns can be used in the address. For + example, `ip(127.0.0.*)` +* "`comment(glob)`" - matches comments to a page matching the glob. +* "`comment_pending(glob)`" - matches unmoderated, pending comments. +* "`postcomment(glob)`" - matches only when comments are being + posted to a page matching the specified glob + +For example, to match all pages in a blog that link to the page about music +and were written in 2005: + + blog/* and link(music) and creation_year(2005) + +Note the use of "and" in the above example, that means that only pages that +match each of the three expressions match the whole. Use "and" when you +want to combine expression like that; "or" when it's enough for a page to +match one expression. Note that it doesn't make sense to say "index and +SandBox", since no page can match both expressions. + +More complex expressions can also be created, by using parentheses for +grouping. For example, to match pages in a blog that are tagged with either +of two tags, use: + + blog/* and (tagged(foo) or tagged(bar)) + +Note that page names in PageSpecs are matched against the absolute +filenames of the pages in the wiki, so a pagespec "foo" used on page +"a/b" will not match a page named "a/foo" or "a/b/foo". To match +relative to the directory of the page containing the pagespec, you can +use "./". For example, "./foo" on page "a/b" matches page "a/foo". + +To indicate the name of the page the PageSpec is used in, you can +use a single dot. For example, `link(.)` matches all the pages +linking to the page containing the PageSpec. diff --git a/backend/ikistrap/basewiki/ikiwiki/pagespec/attachment.mdwn b/backend/ikistrap/basewiki/ikiwiki/pagespec/attachment.mdwn new file mode 100644 index 0000000..fa2bc58 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/pagespec/attachment.mdwn @@ -0,0 +1,38 @@ +[[!meta robots="noindex, follow"]] +[[!if test="enabled(attachment)" + then="This wiki has attachments **enabled**." + else="This wiki has attachments **disabled**."]] + +If attachments are enabled, the wiki admin can control what types of +attachments will be accepted, via the `allowed_attachments` +configuration setting. + +For example, to limit most users to uploading small images, and nothing else, +while allowing larger mp3 files to be uploaded by joey into a specific +directory, and check all attachments for viruses, something like this could be +used: + + virusfree() and ((user(joey) and podcast/*.mp3 and mimetype(audio/mpeg) and maxsize(15mb)) or (mimetype(image/*) and maxsize(50kb))) + +The regular [[ikiwiki/PageSpec]] syntax is expanded with the following +additional tests: + +* "`maxsize(size)`" - tests whether the attachment is no larger than the + specified size. The size defaults to being in bytes, but "kb", "mb", "gb" + etc can be used to specify the units. + +* "`minsize(size)`" - tests whether the attachment is no smaller than the + specified size. + +* "`ispage()`" - tests whether the attachment will be treated by ikiwiki as a + wiki page. (Ie, if it has an extension of ".mdwn", or of any other enabled + page format). + + So, if you don't want to allow wiki pages to be uploaded as attachments, + use `!ispage()` ; if you only want to allow wiki pages to be uploaded + as attachments, use `ispage()`. + +* "`mimetype(foo/bar)`" - checks the MIME type of the attachment. You can + include a glob in the type, for example `mimetype(image/*)`. + +* "`virusfree()`" - checks the attachment with an antiviral program. diff --git a/backend/ikistrap/basewiki/ikiwiki/pagespec/po.mdwn b/backend/ikistrap/basewiki/ikiwiki/pagespec/po.mdwn new file mode 100644 index 0000000..f995640 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/pagespec/po.mdwn @@ -0,0 +1,23 @@ +[[!if test="enabled(po)" + then="This wiki has po support **enabled**." + else="This wiki has po support **disabled**."]] + +If the [[!iki plugins/po desc=po]] plugin is enabled, the regular +[[ikiwiki/PageSpec]] syntax is expanded with the following additional +tests that can be used to improve user navigation in a multi-lingual +wiki: + +* "`lang(LL)`" - tests whether a page is written in the language + specified as a ISO639-1 (two-letter) language code. +* "`currentlang()`" - tests whether a page is written in the same + language as the current page. +* "`needstranslation()`" - tests whether a page needs translation + work. Only slave pages match this PageSpec. A minimum target + translation percentage can optionally be passed as an integer + parameter: "`needstranslation(50)`" matches only pages less than 50% + translated. + +Note that every non-po page is considered to be written in +`po_master_language`, as specified in `ikiwiki.setup`. + +[[!meta robots="noindex, follow"]] diff --git a/backend/ikistrap/basewiki/ikiwiki/pagespec/sorting.mdwn b/backend/ikistrap/basewiki/ikiwiki/pagespec/sorting.mdwn new file mode 100644 index 0000000..0c6cc74 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/pagespec/sorting.mdwn @@ -0,0 +1,30 @@ +Some [[directives|ikiwiki/directive]] that use +[[PageSpecs|ikiwiki/pagespec]] allow +specifying the order that matching pages are shown in. The following sort +orders can be specified. + +* `age` - List pages from the most recently created to the oldest. + +* `mtime` - List pages with the most recently modified first. + +* `title` - Order by title (page name), e.g. "z/a a/b a/c" + +* `path` - Order by page name including parents, e.g. "a/b a/c z/a" +[[!if test="enabled(sortnaturally)" then=""" +* `title_natural` - Orders by title, but numbers in the title are treated + as such, ("1 2 9 10 20" instead of "1 10 2 20 9") + +* `path_natural` - Like `path`, but numbers in the title are treated as such +"""]] +[[!if test="enabled(meta)" then=""" +* `meta(title)` - Order according to the `\[[!meta title="foo" sortas="bar"]]` + or `\[[!meta title="foo"]]` [[ikiwiki/directive]], or the page name if no + full title was set. `meta(author)`, `meta(date)`, `meta(updated)`, etc. + also work. +"""]] + +In addition, you can combine several sort orders and/or reverse the order of +sorting, with a string like `age -title` (which would sort by age, then by +title in reverse order if two pages have the same age). + +[[!meta robots="noindex, follow"]] diff --git a/backend/ikistrap/basewiki/ikiwiki/searching.mdwn b/backend/ikistrap/basewiki/ikiwiki/searching.mdwn new file mode 100644 index 0000000..4c12879 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/searching.mdwn @@ -0,0 +1,20 @@ +[[!meta robots="noindex, follow"]] + +[[!if test="enabled(search)" +then="This wiki has searching **enabled**." +else="This wiki has searching **disabled**."]] + +If searching is enabled, you can enter search terms in the search field, +as you'd expect. There are a few special things you can do to construct +more powerful searches. + +* To match a phrase, enclose it in double quotes. +* `AND` can be used to search for documents containing two expressions. +* `OR` can be used to search for documents containing either one of + two expressions. +* Parentheses can be used to build up complicated search expressions. For + example, "(foo AND bar) OR (me AND you)" +* Prefix a search term with "-" to avoid it from appearing in the results. + For example, "-discussion" will omit "discussion". +* To search for a page with a given title, use "title:foo". +* To search for pages that contain a "bar" link, use "link:bar". diff --git a/backend/ikistrap/basewiki/ikiwiki/subpage.mdwn b/backend/ikistrap/basewiki/ikiwiki/subpage.mdwn new file mode 100644 index 0000000..862f45e --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/subpage.mdwn @@ -0,0 +1,12 @@ +[[!meta robots="noindex, follow"]] +ikiwiki supports placing pages in a directory hierarchy. For example, +this page, [[SubPage]] has some related pages placed under it, like +[[SubPage/LinkingRules]]. This is a useful way to add some order to your +wiki rather than just having a great big directory full of pages. + +To add a SubPage, just make a subdirectory and put pages in it. For +example, this page is subpage.mdwn in this wiki's source, and there is also +a subpage subdirectory, which contains subpage/linkingrules.mdwn. Subpages +can be nested as deeply as you'd like. + +Linking to and from a SubPage is explained in [[LinkingRules]]. diff --git a/backend/ikistrap/basewiki/ikiwiki/subpage/linkingrules.mdwn b/backend/ikistrap/basewiki/ikiwiki/subpage/linkingrules.mdwn new file mode 100644 index 0000000..e547f30 --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/subpage/linkingrules.mdwn @@ -0,0 +1,33 @@ +[[!meta robots="noindex, follow"]] +To link to or from a [[SubPage]], you can normally use a regular +[[WikiLink]] that does not contain the name of the parent directory of +the [[SubPage]]. Ikiwiki descends the directory hierarchy looking for a +page that matches your link. + +For example, if FooBar/SubPage links to "OtherPage", ikiwiki will first +prefer pointing the link to FooBar/SubPage/OtherPage if it exists, next +to FooBar/OtherPage and finally to OtherPage in the root of the wiki. + +Note that this means that if a link on FooBar/SomePage to "OtherPage" +currently links to OtherPage, in the root of the wiki, and FooBar/OtherPage +is created, the link will _change_ to point to FooBar/OtherPage. On the +other hand, a link from BazBar to "OtherPage" would be unchanged by this +creation of a [[SubPage]] of FooBar. + +You can also specify a link that contains a directory name, like +"FooBar/OtherPage" to more exactly specify what page to link to. This is +the only way to link to an unrelated [[SubPage]]. + +You can use this to, for example, to link from BazBar to "FooBar/SubPage", +or from BazBar/SubPage to "FooBar/SubPage". + +You can also use "/" at the start of a link, to specify exactly which page +to link to, when there are multiple pages with similar names and the link +goes to the wrong page by default. For example, linking from +"FooBar/SubPage" to "/OtherPage" will link to the "OtherPage" in the root +of the wiki, even if there is a "FooBar/OtherPage". + +Also, if the wiki is configured with a userdir, you can link to pages +within the userdir without specifying a path to them. This is to allow for +easy linking to a user's page in the userdir, to sign a comment. These +links are checked for last of all. diff --git a/backend/ikistrap/basewiki/ikiwiki/wikilink.mdwn b/backend/ikistrap/basewiki/ikiwiki/wikilink.mdwn new file mode 100644 index 0000000..cf3b89c --- /dev/null +++ b/backend/ikistrap/basewiki/ikiwiki/wikilink.mdwn @@ -0,0 +1,29 @@ +[[!meta robots="noindex, follow"]] +WikiLinks provide easy linking between pages of the wiki. To create a +[[WikiLink]], just put the name of the page to link to in double brackets. +For example `\[[WikiLink]]`. + +If you ever need to write something like `\[[WikiLink]]` without creating a +wikilink, just prefix it with a `\`, like `\\[[WikiLink]]`. + +There are some special [[SubPage/LinkingRules]] that come into play when +linking between [[SubPages|SubPage]]. + +WikiLinks are matched with page names in a case-insensitive manner, so you +don't need to worry about getting the case the same, and can capitalise +links at the start of a sentence, and so on. + +It's also possible to write a WikiLink that uses something other than the page +name as the link text. For example `\[[foo_bar|SandBox]]` links to the SandBox +page, but the link will appear like this: [[foo_bar|SandBox]]. + +To link to an anchor inside a page, you can use something like +`\[[WikiLink#foo]]` . + +If the file linked to by a WikiLink looks like an image, it will +be displayed inline on the page. + +--- + +You can also put an url in a WikiLink, to link to an external page. +Email addresses can also be used to generate a mailto link. diff --git a/backend/ikistrap/basewiki/index.mdwn b/backend/ikistrap/basewiki/index.mdwn new file mode 100644 index 0000000..4187c11 --- /dev/null +++ b/backend/ikistrap/basewiki/index.mdwn @@ -0,0 +1,7 @@ +Welcome to your new wiki. + +All wikis are supposed to have a [[SandBox]], so this one does too. + +---- + +This wiki is powered by [[ikiwiki]]. diff --git a/backend/ikistrap/basewiki/local.css b/backend/ikistrap/basewiki/local.css new file mode 100644 index 0000000..a0dec8c --- /dev/null +++ b/backend/ikistrap/basewiki/local.css @@ -0,0 +1,3 @@ +/* ikiwiki local style sheet */ + +/* Add local styling here, instead of modifying style.css. */ diff --git a/backend/ikistrap/basewiki/recentchanges.mdwn b/backend/ikistrap/basewiki/recentchanges.mdwn new file mode 100644 index 0000000..3383fc7 --- /dev/null +++ b/backend/ikistrap/basewiki/recentchanges.mdwn @@ -0,0 +1,7 @@ +[[!if test="enabled(meta)" then=""" +[[!meta title="RecentChanges"]] +"""]] +Recent changes to this wiki: + +[[!inline pages="internal(recentchanges/change_*) and !*/Discussion" +template=recentchanges show=0]] diff --git a/backend/ikistrap/basewiki/sandbox.mdwn b/backend/ikistrap/basewiki/sandbox.mdwn new file mode 100644 index 0000000..c66534f --- /dev/null +++ b/backend/ikistrap/basewiki/sandbox.mdwn @@ -0,0 +1,32 @@ +This is the SandBox, a page anyone can edit to learn how to use the wiki. + +---- + +Here's a paragraph. + +Here's another one with *emphasised* text. + +# Header + +## Subheader + +> This is a blockquote. +> +> This is the first level of quoting. +> +> > This is nested blockquote. +> +> Back to the first level. + +Numbered list + +1. First item. +1. Another. +1. And another.. + +Bulleted list + +* *item* +* item + +[[ikiwiki/WikiLink]] diff --git a/backend/ikistrap/basewiki/shortcuts.mdwn b/backend/ikistrap/basewiki/shortcuts.mdwn new file mode 100644 index 0000000..1748a02 --- /dev/null +++ b/backend/ikistrap/basewiki/shortcuts.mdwn @@ -0,0 +1,86 @@ +[[!if test="enabled(shortcut)" + then="This wiki has shortcuts **enabled**." + else="This wiki has shortcuts **disabled**."]] + +Some examples of using shortcuts include: + + \[[!google foo]] + \[[!wikipedia War_of_1812]] + \[[!debbug 12345]] + Check the \[[!google ikiwiki desc="google search for %s"]]. + +This page controls what shortcut links the wiki supports. + +* [[!shortcut name=google url="https://encrypted.google.com/search?q=%s"]] +* [[!shortcut name=archive url="http://web.archive.org/*/%S"]] +* [[!shortcut name=gmap url="https://maps.google.com/maps?q=%s"]] +* [[!shortcut name=gmsg url="https://groups.google.com/groups?selm=%s"]] +* [[!shortcut name=wikipedia url="https://en.wikipedia.org/wiki/%W"]] +* [[!shortcut name=wikitravel url="https://wikitravel.org/en/%s"]] +* [[!shortcut name=wiktionary url="https://en.wiktionary.org/wiki/%s"]] +* [[!shortcut name=debbug url="http://bugs.debian.org/%S" desc="Debian bug #%s"]] +* [[!shortcut name=deblist url="https://lists.debian.org/debian-%s" desc="debian-%s@lists.debian.org"]] +* [[!shortcut name=debpkg url="http://packages.debian.org/%s"]] +* [[!shortcut name=debpkgsid url="http://packages.debian.org/sid/%s"]] +* [[!shortcut name=debpts url="http://packages.qa.debian.org/%s"]] +* [[!shortcut name=debmsg url="https://lists.debian.org/msgid-search/%s"]] +* [[!shortcut name=debrt url="https://rt.debian.org/Ticket/Display.html?id=%s"]] +* [[!shortcut name=debss url="http://snapshot.debian.org/package/%s/"]] + * Usage: `\[[!debss package]]` or `\[[!debss package/version]]`. See <http://snapshot.debian.org/> for details. +* [[!shortcut name=debwiki url="https://wiki.debian.org/%S"]] +* [[!shortcut name=fdobug url="https://bugs.freedesktop.org/show_bug.cgi?id=%s" desc="freedesktop.org bug #%s"]] +* [[!shortcut name=fdolist url="http://lists.freedesktop.org/mailman/listinfo/%s" desc="%s@lists.freedesktop.org"]] +* [[!shortcut name=gnomebug url="https://bugzilla.gnome.org/show_bug.cgi?id=%s" desc="GNOME bug #%s"]] +* [[!shortcut name=linuxbug url="https://bugzilla.kernel.org/show_bug.cgi?id=%s" desc="Linux bug #%s"]] +* [[!shortcut name=mozbug url="https://bugzilla.mozilla.org/show_bug.cgi?id=%s" desc="Mozilla bug #%s"]] +* [[!shortcut name=gnulist url="https://lists.gnu.org/mailman/listinfo/%s" desc="%s@gnu.org"]] +* [[!shortcut name=marcmsg url="http://marc.info/?i=%s"]] +* [[!shortcut name=marclist url="http://marc.info/?l=%s"]] +* [[!shortcut name=gmane url="http://dir.gmane.org/gmane.%s" desc="gmane.%s"]] +* [[!shortcut name=gmanemsg url="http://mid.gmane.org/%s"]] +* [[!shortcut name=cpan url="http://search.cpan.org/search?mode=dist&query=%s"]] +* [[!shortcut name=ctan url="http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=%s"]] +* [[!shortcut name=hoogle url="http://haskell.org/hoogle/?q=%s"]] +* [[!shortcut name=iki url="http://ikiwiki.info/%S/"]] +* [[!shortcut name=ljuser url="http://%s.livejournal.com/"]] +* [[!shortcut name=rfc url="https://www.ietf.org/rfc/rfc%s.txt" desc="RFC %s"]] +* [[!shortcut name=c2 url="http://c2.com/cgi/wiki?%s"]] +* [[!shortcut name=meatballwiki url="http://www.usemod.com/cgi-bin/mb.pl?%s"]] +* [[!shortcut name=emacswiki url="http://www.emacswiki.org/cgi-bin/wiki/%s"]] +* [[!shortcut name=haskellwiki url="http://haskell.org/haskellwiki/%s"]] +* [[!shortcut name=dict url="http://www.dict.org/bin/Dict?Form=Dict1&Strategy=*&Database=*&Query=%s"]] +* [[!shortcut name=imdb url="http://imdb.com/find?q=%s"]] +* [[!shortcut name=gpg url="http://pgpkeys.mit.edu:11371/pks/lookup?op=vindex&exact=on&search=0x%s"]] +* [[!shortcut name=perldoc url="http://perldoc.perl.org/search.html?q=%s"]] +* [[!shortcut name=whois url="http://reports.internic.net/cgi/whois?whois_nic=%s&type=domain"]] +* [[!shortcut name=cve url="https://cve.mitre.org/cgi-bin/cvename.cgi?name=%s"]] +* [[!shortcut name=flickr url="https://secure.flickr.com/photos/%s"]] +* [[!shortcut name=man url="http://manpages.debian.org/%s"]] +* [[!shortcut name=ohloh url="https://www.ohloh.net/p/%s"]] +* [[!shortcut name=cpanrt url="https://rt.cpan.org/Ticket/Display.html?id=%s" desc="CPAN RT#%s"]] +* [[!shortcut name=novellbug url="https://bugzilla.novell.com/show_bug.cgi?id=%s" desc="bug %s"]] +* [[!shortcut name=ubupkg url="http://packages.ubuntu.com/%s"]] +* [[!shortcut name=mozillazinekb url="http://kb.mozillazine.org/%s"]] +* [[!shortcut name=freebsdwiki url="http://wiki.freebsd.org/%s"]] +* [[!shortcut name=hackage url="http://hackage.haskell.org/package/%s"]] +* [[!shortcut name=pkgsrc url="http://pkgsrc.se/%S"]] +* [[!shortcut name=doi url="http://dx.doi.org/%s" desc="doi:%s"]] +* [[!shortcut name=arxiv url="http://arxiv.org/abs/%s" desc="arXiv:%s"]] + +To add a new shortcut, use the `shortcut` +[[ikiwiki/directive]]. In the url, "%s" is replaced with the +text passed to the named shortcut, after [[!wikipedia url_encoding]] +it, and '%S' is replaced with the raw, non-encoded text. +Additionally, `%W` is replaced with the text encoded just right for +Wikipedia. The optional `desc` parameter controls the description of +the link. + +Remember that the `name` you give the shortcut will become a new +[[ikiwiki/directive]]. Avoid using a `name` that conflicts +with an existing directive. These directives also accept a `desc` +parameter that will override the one provided at definition time. + +If you come up with a shortcut that you think others might find useful, +consider contributing it to the [shortcuts page on the ikiwiki +wiki](http://ikiwiki.info/shortcuts/), so that future versions of +ikiwiki will include your shortcut in the standard underlay. diff --git a/backend/ikistrap/basewiki/style.css b/backend/ikistrap/basewiki/style.css new file mode 100644 index 0000000..c68017d --- /dev/null +++ b/backend/ikistrap/basewiki/style.css @@ -0,0 +1,191 @@ +/* There isn't much space between the Bootstrap navbar and the page content */ +#header { + margin-bottom: 1em; +} + +/* Ensure the footer is pushed down to the bottom of the screen, + * if the main content doesn't fill it. */ +body, html { + height: 100%; +} + +#notfooter { + min-height: 100%; + padding-bottom: 2em; +} + +#footer { + position: relative; + margin-top: -2em; + height: 2em; + color: grey; + border-top: 1px solid lightgrey; +} + +#pagedate { + float: right; +} + +/* Bootstrap's navbar packs everything without margins or padding. + * Ensure the search form has some space. */ + +#searchform { + margin-left: 1em; +} + +.parentlinks { + margin-right: 1em; +} + +/* Alignment of header and footer items of the default inline pages. + * Using flexbox layout here, since it can wrap when things get too crowded. + * It's a bit better than floats. */ +.inlineheader { + display: flex; +} + +.inlineheader header { + flex: 1 1 auto; +} + +.inlineheader { + flex: 0 1 auto; +} + +.inlinefooter { + display: flex; + flex-wrap: wrap; +} + +.inlinefooter .pageinfo { + flex: 1 1 auto; +} + +.inlinefooter .tags { + flex: 0 1 auto; +} + +.inline-actions { + display: inline; +} + +.inline-actions ul, .inline-actions li { + list-style-type: none; + display: inline; +} + +/* Popups */ +/* popup template and backlinks hiding */ +.popup .balloon, +.popup .paren, +.popup .expand { + position: absolute; + z-index: 1000; + display: none; + color: #373a3c; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: .25rem; +} + +.balloon ul { + list-style: none; + margin: 0; + padding: 0.5em; +} + +.popup:hover .balloon, +.popup:focus .balloon { + display: inline; +} + +/* Table style, similar to Bootstrap .table-border and with .table-inverse headers */ +table { + margin-bottom: 1em; + background-color: white; + display: block; + overflow: auto; +} + +table td, table th { + border: 1px solid #eceeef; + padding: 0.5em; +} + +table th { + color: #eceeef; + background-color: #373a3c; + border-color: #55595c; +} + +table tr:hover { + background-color: #f5f5f5; +} + +/* Rounded corners on tables */ +table { + border-collapse: separate; +} + +table tr:first-child td:first-child, table tr:first-child th:first-child { + border-top-left-radius: 0.25rem; +} +table tr:first-child td:last-child, table tr:first-child th:last-child { + border-top-right-radius: 0.25rem; +} +table tr:last-child td:first-child { + border-bottom-left-radius: 0.25rem; +} +table tr:last-child td:last-child { + border-bottom-right-radius: 0.25rem; +} + +/* Improve look of calendars */ +.month-calendar td, +.month-calendar th, +.year-calendar td, +.year-calendar th { + min-width: 2.5em; + text-align: center; +} + +.month-calendar-day-link, .year-calendar-month-link { + background-color: #d9edf7; +} + +/* Give RSS and Atom buttons an orange color */ +.feedbutton { + background: #ff8000; + border-color: #e07000; + color: white; + font-weight: bold; +} + +.feedbutton:hover { + background: #ffc080; + border-color: #e07000; +} + +/* Carousel alignment */ +.carousel-page { + margin: 1em; +} + +.carousel-image { + margin: auto; +} + +/* Bootstrap 4.0.0-alpha.2 forgot to define a blockquote style? */ +blockquote { + border-left: 4px solid rgba(0,0,0,.1); + padding-left: 0.5em; +} + +/* Fix image width in cards. */ +.card-img-top, .card-img-bottom { + width: 100%; + height: auto; +} diff --git a/backend/ikistrap/basewiki/templates.mdwn b/backend/ikistrap/basewiki/templates.mdwn new file mode 100644 index 0000000..378e579 --- /dev/null +++ b/backend/ikistrap/basewiki/templates.mdwn @@ -0,0 +1,100 @@ +[[Ikiwiki]] uses many templates for many purposes. By editing its templates, +you can fully customise its appearance, and avoid duplicate content. + +Ikiwiki uses the HTML::Template module as its template engine. This +supports things like conditionals and loops in templates and is pretty +easy to learn. All you really need to know to modify templates is this: + +* To insert the value of a template variable, use `<TMPL_VAR variable>`. +* To make a block of text conditional on a variable being set use + `<TMPL_IF variable>text</TMPL_IF>`. +* To use one block of text if a variable is set and a second if it's not, + use `<TMPL_IF variable>text<TMPL_ELSE>other text</TMPL_IF>` + +[[!if test="enabled(template) or enabled(edittemplate)" then=""" +## template pages + +Template pages are regular wiki pages containing a +[[!iki ikiwiki/directive/templatebody desc="templatebody directive"]], +used as templates for other pages. The parts of the template +page outside the directive can be used to document it. +"""]] + +[[!if test="enabled(template)" then=""" +The [[!iki ikiwiki/directive/template desc="template directive"]] allows +template pages to be filled out and inserted into other pages in the wiki. +"""]] + +[[!if test="enabled(edittemplate)" then=""" +The [[!iki ikiwiki/directive/edittemplate desc="edittemplate directive"]] can +be used to make new pages default to containing text from a template +page, which can be filled out as the page is edited. +"""]] + +[[!if test="(enabled(template) or enabled(edittemplate)) +and enabled(inline)" then=""" +These template pages are currently available: + +[[!inline pages="templates/* and !*.tmpl and !templates/*/* and !*/discussion" +feeds=no archive=yes sort=title template=titlepage +rootpage=templates postformtext="Add a new template page named:"]] +"""]] + +If the template does not contain a `templatebody` directive, the entire +source of the page is used for the template. This is deprecated. + +## template files + +Template files are unlike template pages in that they have the extension +`.tmpl`. Template files are used extensively by Ikiwiki to generate html. +They can contain html that would not normally be allowed on a wiki page. + +Template files are located in `/usr/share/ikiwiki/templates` by default; +the `templatedir` setting can be used to make another directory be +searched first. Customised template files can also be placed inside the +"templates/" directory in your wiki's source -- files placed there override +ones in the `templatedir`. + +Here is a full list of the template files used: + +* `page.tmpl` - Used for displaying all regular wiki pages. This is the + key template to customise to change the look and feel of Ikiwiki. + [[!if test="enabled(pagetemplate)" then=""" + (The [[!iki ikiwiki/directive/pagetemplate desc="pagetemplate directive"]] + can be used to make a page use a different template than `page.tmpl`.)"""]] +* `rsspage.tmpl` - Used for generating rss feeds for blogs. +* `rssitem.tmpl` - Used for generating individual items on rss feeds. +* `atompage.tmpl` - Used for generating atom feeds for blogs. +* `atomitem.tmpl` - Used for generating individual items on atom feeds. +* `inlinepage.tmpl` - Used for displaying a post in a blog. +* `archivepage.tmpl` - Used for listing a page in a blog archive page. +* `titlepage.tmpl` - Used for listing a page by title in a blog archive page. +* `microblog.tmpl` - Used for showing a microblogging post inline. +* `blogpost.tmpl` - Used for a form to add a post to a blog (and rss/atom links) +* `feedlink.tmpl` - Used to add rss/atom links if `blogpost.tmpl` is not used. +* `aggregatepost.tmpl` - Used by the aggregate plugin to create + a page for a post. +* `searchform.tmpl`, `googleform.tmpl` - Used by the search plugin + and google plugin to add search forms to wiki pages. +* `searchquery.tmpl` - This is a Omega template, used by the + search plugin. +* `comment.tmpl` - Used by the comments plugin to display a comment. +* `change.tmpl` - Used to create a page describing a change made to the wiki. +* `recentchanges.tmpl` - Used for listing a change on the RecentChanges page. +* `autoindex.tmpl` - Filled in by the autoindex plugin to make index pages. +* `autotag.tmpl` - Filled in by the tag plugin to make tag pages. +* `calendarmonth.tmpl`, `calendaryear.tmpl` - Used by ikiwiki-calendar to + make calendar archive pages. +* `trails.tmpl` - Used by the trail plugin to generate links on each page + that is a member of a trail. +* `notifyemail.tmpl` - Used by the notifymail plugin to generate mails about + changed pages. +* `editpage.tmpl`, `editconflict.tmpl`, `editcreationconflict.tmpl`, + `editfailedsave.tmpl`, `editpagegone.tmpl`, `pocreatepage.tmpl`, + `editcomment.tmpl` `commentmoderation.tmpl`, `renamesummary.tmpl`, + `passwordmail.tmpl`, `emailauth.tmpl`, `login-selector.tmpl`, + `revert.tmpl` - Parts of ikiwiki's user interface; do not normally need + to be customised. + + +[[!meta robots="noindex, follow"]] diff --git a/backend/ikistrap/basewiki/templates/note.mdwn b/backend/ikistrap/basewiki/templates/note.mdwn new file mode 100644 index 0000000..8de7374 --- /dev/null +++ b/backend/ikistrap/basewiki/templates/note.mdwn @@ -0,0 +1,12 @@ +[[!templatebody <<ENDBODY +<div class="notebox"> +<TMPL_VAR text> +</div> +ENDBODY]] + +Use this template to insert a note into a page. The note will be styled to +float to the right of other text on the page. This template has one +parameter: +<ul> +<li>`text` - the text to display in the note +</ul> diff --git a/backend/ikistrap/basewiki/templates/popup.mdwn b/backend/ikistrap/basewiki/templates/popup.mdwn new file mode 100644 index 0000000..b721a95 --- /dev/null +++ b/backend/ikistrap/basewiki/templates/popup.mdwn @@ -0,0 +1,17 @@ +Use this template to create a popup window that is displayed when the mouse +is over part of the page. This template has two parameters: +<ul> +<li>`mouseover` - This is the text or other content that triggers the +popup. +<li>`popup` - This should be the content of the popup window. It can be +anything, even images or a whole little wiki page, but should not be too +large for good usability. +</ul> +Note that browsers that do not support the CSS will display the popup +inline in the page, inside square brackets. + +[[templatebody <<ENDBODY +<span class="popup"><TMPL_VAR mouseover> +<span class="paren">[</span><span class="balloon"><TMPL_VAR popup></span><span class="paren">]</span> +</span> +ENDBODY]] |