print 'Hello World!'
- Now write a program that prints the version of the Boo runtime between “Hello” and “World”.
BooHaunt is a DokuWiki-powered wiki. Thus, the syntax of this wiki is similar to most other DokuWikis. This page is meant to show how BooHaunt differs and extends the normal DokuWiki syntax. If you have never used a DokuWiki, I recommend you visit the Formatting Syntax page.
Being a site centered around Boo, it would make no sense not to support syntax highlighting for Boo. So, we do. All it takes is to specify boo as the language in the code tag. Additionally, the .NET Common Intermediate Language (CIL) is also supported. These are in addition to those normally supported by the GeSHi Syntax Highlighter.
Additionally, you can provide a caption for the snippet to provide context by adding a pipe after the language and adding the caption as such:
<code boo|Sample Caption>
The caption does not support any wiki markup.
Both of these extensions are also useable with the file tag. This extension is documented on the code plugin page at DokuWiki. Be aware that text in code tags is output monospaced and verbatim without word-wrapping. Thus, beware code blocks such as this:
This is a long monospaced line. Unfortunately, there is no way to know when the line should break unless you tell it when to break. If you don't, then the line of monospaced text, or perhaps the important rhetorical diatribe that you were trying to get across will be lost far beyond the scroll bar where only the spiders and bots read. But hey, maybe you'll win the lottery or do well in the stock market... Which is how you end up rich.
Couldn’t read the end of the line? The author should have been more courteous by tossing in a few linebreaks. You can help out by editing the page youself. Go on, you have the power. (Well, not on this page, but in the rest of the Wiki, have at it!)
View the code to see how this snippet was written:
""" A DocString explaining what this snippet does """ namespace BooHaunt.Test import System class Example: [getter(Pi)] static final pi = 3.14 def constructor(dummy as date): print "Today is ${date.Now}" print 'You provided ' + dummy span = date.Now - dummy def Unsafe(): try: # Does something unsafe except ex: raise WrappedException(ex) ensure: // Something happens...
.method public static void Main() cil managed { .entrypoint .maxstack 8 ldstr "Hello world!." call void [mscorlib]System.Console::WriteLine(string) ret }
<file |File Tag Example> The File tag does not do syntax highlighting </file>
The note plugin provides an effective method to call a reader’s attention to pertinent information, whether that be a tip, warning, point to remember or general note. To add one of these eye-catching callouts, use the note tag.
<note>This is a general note, as in an item that should be considered while doing something.</note>
<note tip>This is a "tip" note, as in a helpful thing to try, or a better way to do things than the obvious, naïve approach.</note>
<note important>More than just a general note, this is an item that needs to be considered or is important to remember when doing something.</note>
important.
<note warning>When "[[wp>Here be dragons]]" is an appropriate statement, you'll want to put in a warning note. This acts as a road marker to direct people away from making potentially dangerous decisions or to proceed carefully. Think of this as a step beyond ''important''.</note>
BooHaunt has some additional InterWiki links defined that are specific to Boo. These include:
Links to Boo’s project homepage hosted by codehaus
Links to the JIRA project bug tracker
Links to the Boo Subversion Repository as viewed through FishEye
Links to the sister wiki hosted on codehaus using Confluence
As well, these InterWiki links are defined beyond those provided by DokuWiki:
Links to the appropriate entry in the English Wiktionary
In addition, these default InterWiki links may be of interest while preparing a page:
Links to Wikipedia
Links to a Google search results page
The same as above, but uses “I feel lucky” to automatically visit the first search result, e.g. Boo programming language
Links to the UseMod MeatBall wiki
Links to WardsWiki, aka the Wiki, on Software Development
A good wiki will not only be well interconnected, but should provide links to other wikis that focus on content outside of its own scope. This helps to reduce duplication of effort, helps to improve the content of the jointly used content, and keeps this wiki focused on providing Boo-centric content.
Definition lists allow an editor to create a listing of terms and their definitions. This extension is similar to that of bulleted and ordered lists.
Definition
Has sub-definitions
Definition
First definition
?? Term :: Definition !!
?? Term2 :: Has sub-definitions
?? Inner Term :: Definition !! !!
?? Term3
:: First definition !!
Second definition !!
Note that for nested definition lists, or definition lists inside of other lists, the level of indent must be noted by 2 spaces per indent level before the ??. More examples of this can be seen on this page. For a more full example of how to use definition lists, see plugin:deflist.
<note important>The deflist plugin generates anchors for every term to provide for quick linking. Thus it is important to ensure that all terms on a given page are unique so that valid XHTML is generated.
BooHaunt wiki also support the ability to mark output that directs the user to press certain keys. For example, to produce an interupt on a Windows machine, you press Ctrl+Alt+Del. The markup to generate that is:
<key>Ctrl-Alt-Del</key>
In DokuWiki’s default markup, text associated with deeper headings are delimted with deeper indentation. There are times, however, some text should be associated with a parent heading and not with the deeper subheading. By default, there is no method to do this except to insert a blank heading, but the outdent plugin allows just this by creating a line with two equal signs ”==” to mark an outdent:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum pulvinar viverra urna. Mauris sagittis augue in dolor. Nullam a libero. Etiam at orci. Curabitur accumsan mauris ac diam. Vestibulum at tortor. Nullam in mi. Nulla fermentum posuere turpis. Integer nec ipsum. Duis elit.
Ut eu lorem ac erat pulvinar mollis. Morbi ornare est sed purus. Praesent arcu est, placerat id, mollis at, gravida eu, massa. Aenean quam turpis, viverra tincidunt, malesuada nec, volutpat eget, nisl. Duis varius magna faucibus orci. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nullam quam arcu, consectetuer vitae, rutrum non, mollis at, tellus. Fusce at ligula quis nisi ultrices rutrum. Quisque eu ligula.
Nam volutpat pellentesque urna. Praesent iaculis gravida est. In vel augue. Morbi sem massa, tincidunt vitae, gravida eu, dapibus nec, diam. Phasellus aliquam erat sit amet leo. Aliquam venenatis lacus malesuada sapien. Nulla facilisi. Aenean ornare mi in erat. Pellentesque scelerisque tincidunt nulla. Nulla facilisi. Nulla vel magna vitae lectus mollis tincidunt. Sed felis risus, vestibulum quis, ullamcorper non, vehicula sed, mi. Phasellus vestibulum felis gravida nulla. Nulla vel magna a erat fringilla euismod. Morbi enim justo, hendrerit id, luctus varius, feugiat eu, nulla.
Maecenas pretium. Pellentesque condimentum pulvinar diam. Sed tempus cursus odio. Suspendisse potenti. Proin nisl. Nunc aliquet, enim quis elementum fermentum, quam ipsum viverra nisi, ac volutpat nunc neque sit amet lorem. Fusce pharetra nibh. Phasellus at diam vitae erat tempus semper. Etiam elit. Donec in nisl eget sem hendrerit auctor. Donec diam massa, pretium eu, dignissim sit amet, fermentum ut, arcu. Maecenas a quam eu tellus varius tristique. Curabitur tempus euismod augue. Aliquam erat volutpat.
Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Duis id pede ac eros hendrerit hendrerit. Suspendisse potenti. Vivamus porttitor, nisl a sollicitudin vestibulum, ipsum augue eleifend risus, nec dapibus justo dolor lobortis pede. Pellentesque dignissim ultrices sapien. Donec est. Cras quis sem id ipsum malesuada gravida. Proin aliquet suscipit orci. Etiam ut nisl. Suspendisse id risus. In sem orci, volutpat nec, congue in, viverra at, enim. Morbi ac erat. In eleifend, leo sagittis feugiat luctus, nisl purus sagittis quam, congue facilisis justo massa non quam. Cras interdum.
Outdented text: Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum pulvinar viverra urna. Mauris sagittis augue in dolor. Nullam a libero. Etiam at orci. Curabitur accumsan mauris ac diam. Vestibulum at tortor. Nullam in mi. Nulla fermentum posuere turpis. Integer nec ipsum. Duis elit.
When writing exercises or quizes that guests can use to test their knowledge and progress with Boo, having the answers initially hidden gives a guest a chance to try the exercise before the answer is ultimately reveiled. These spoilers can be nested, allowing for hidden follow-ups that chain off the answer from the previous question. The default title for the spoiler tag is “Spoiler:”, so it is usually best to give the tag a title to display. Like so:
When making a comment and signing it, you may decide to add your own version of your signature. Online services, such as Gravatar allow users to create a central spot for storing their avatars. These avatars/icons can then be used on many websites by providing the user’s email address which is then used as the key for selecting the appropriate avatar. If you are a registered user, you can use your username and the plugin will pull the avatar for the email you used when you registered and title’s it with your “Real Name”. More information on the syntax is available on the avatar plugin page.
Examples:
Signature: — Marcus Griep
2008/03/31 12:55
DokuWiki doesn’t provide a bundled-in resource for categorizing pages, but the tag plugin was created to allow tags to be attached to pages. To attach a tag to a page, create a medialink with the “InterWiki” part set to tag. The best place to put tags is at the bottom of the page where they are less likely to get in the way of page content.
{{tag>help}}
Multiple tags can be delimited with spaces. This page is tagged as a help page. You can see the output at the bottom of this page.