<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../style.css">
<title>
Gambas Documentation - Wiki Manual
</title>
</head>
<table class="none" width="100%" cellpadding="0" cellspacing="0" border="0">
<tr><td align="left">
<font size="-1">
<a href="../help+en"><img class="flag" alt="Home" border="0" src="../img/lang/en.png" align="center"></a>&nbsp;
<a href="index.html+en">Up</a>&nbsp;
<a href="translate+en">Previous</a>&nbsp;
<a href="%90%8Dc&#32;tôi+en">Next</a>&nbsp;
</td></tr></table>
<div class="notab">
<h1>
Wiki Manual
</h1>
<h2>Overview</h2>
<p>
This wiki is made of <i>pages</i>, each page being made of:
<ul>
<li>A path.
<li>A title.
<li>A content.
<p>
</ul>

The path uniquely identifies the page, and defines the URL to access it.
For example, a page with the <tt>/lang/open</tt> path is accessed with the <tt>http://gambasdoc.org/help/lang/open</tt> URL.
<p>
The page contents must follow the syntax described in the 'Wiki syntax' chapter below.
<p>
The title is used for displaying a link to a page, and does not follow the previous syntax.
It is displayed 'as is'.
<p>
When there is a link on a non-existing page, the link text is the path of the page, displayed in italic.
<p>
<h3>Path conventions</h3>
<p>
The page path is theorically free, but must follow this convention:
<p>
<ul>
<li>All language-related pages are put in <tt>/lang</tt>, for keywords and functions, and in <tt>/cat</tt>, for overviews.
<li>All components-related pages are put in <tt>/comp</tt>. The path of a component page is <tt>/comp/gb.xxx/class/symbol</tt>. The symbol begins with a dot if it is a class event.
<li>All pages under <tt>/def</tt> path make the lexicon.
<li>Miscellaneous documents should be put under the <tt>/doc</tt> path.
<p>
</ul>

<h3>How to edit an already existing page</h3>
<p>
Click on the 'Edit' link on the top of the page.
<p>
A dialog box appears where you must enter your login and your password.
This dialog box appears only once for each session.
<p>
Then you can edit the page and its title by following the 'Wiki syntax'.
Don't change the title of class, method, event or constant pages, as they
are automatically generated.
<p>
It may be useful to save the original content of the edit window into a usual editor, e.g. gedit (or Notepad) by cut and paste.
<p>
Once edited, click on the 'Save' button to update the page.
<p>
<h3>How to create a new page</h3>
<p>
Enters a new page URL in your browser. The Wiki will tell you that the page does not exist,
and will display a 'Create' link on top of the page.
<p>
Click on the 'Create' link.
<p>
<h3>How to delete a page</h3>
<p>
Edit the page you want to delete, and remove both the title and the page contents.
<p>
<h3>How to translate a page in your language</h3>
<p>
Just edit the page, but check that you are currently viewing the page in the correct language,
by looking at the little flag on the top-left of the page.
<p>
If there is no flag that represents your language, just tell me. I will add it.
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/warning.png" align="center"></td><td valign="top">
Only translate page titles and contents. <b>Do not</b> translate link and page names!
</td></tr></table></div>
<p>
<h3>How to translate the wiki predefined strings</h3>
<p>
The wiki predefined strings, i.e. everything that is not a page title or a page content, is located
in the translate CGI script project that manages this wiki.
<p>
The source of this project is located in the <a href="def/gambas+en">Gambas</a> source archive, with the IDE and the database
component. Its name is '<tt>doc.cgi</tt>'. Just translate it like any other project.
<p>
<h3>Image pages</h3>
<p>
You can upload images to the wiki. An image is a page whose last path element, i.e. the path name, begins with a colon.
<p>
For example, <tt>/control/:combobox</tt> is an image that represents a combo-box control.
<p>
To insert an image inside a normal page, just make a link: <tt>[/control/:combobox]</tt>.
<p>
<h2>Wiki Syntax</h2>
<p>
Here is a brief overview of the syntax you must use to write articles on this wiki.
<p>
<h3>Formatting characters</h3>
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
Syntax
</th><th>
Description
</th><th>
Result
</th></tr>
<tr class="dark"><td valign="top">
<tt><b>*</b>Bold<b>*</b></tt>
</td><td valign="top">
Put text in bold.
</td><td valign="top">
<b>Bold</b>
</td></tr>
<tr><td valign="top">
<tt><b>/</b>Italic<b>/</b></tt>
</td><td valign="top">
Put text in italic.
</td><td valign="top">
<i>Italic</i>
</td></tr>
<tr class="dark"><td valign="top">
<tt><b>=</b>TypeWriter<b>=</b></tt>
</td><td valign="top">
Use a non proportional font.
</td><td valign="top">
<tt>TypeWriter</tt>
</td></tr>
<tr><td valign="top">
<tt><b>_</b>Underline<b>_</b></tt>
</td><td valign="top">
Underlines text.
</td><td valign="top">
<u>Underline</u>
</td></tr>
</table>
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/warning.png" align="center"></td><td valign="top">
If a character precedes a space, it cannot be a beginning formatting character.
And if a character follows a space, it cannot be an ending character.
<p>
<div class="box">
<tt>/ *Gambas* =Already= _Means_ BASIC! /</tt>
</div>
<p>
prints
<div class="box">
/ <b>Gambas</b> <tt>Already</tt> <u>Means</u> BASIC! /
</div>
<p>
and not
<div class="box">
<i><b>Gambas</b> <tt>Already</tt> <u>Means</u> BASIC!</i>
</div>
</td></tr></table></div>
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/info.png" align="center"></td><td valign="top">
The HTML markup are kept, they are not interpreted by the wiki.
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt>M&lt;sup>rs&lt;/sup> &lt;font color=&quot;red&quot;>Pierce&lt;/font></tt>
</td><td valign="top">
M<sup>rs</sup> <font color="red">Pierce</font>
</td></tr>
</table>
</td></tr></table></div>
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/info.png" align="center"></td><td valign="top">
If you want to use a special character normally, or if you want to not
insert HTML markups, preced them by the backslash escape character <tt>'\'</tt>.
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt><b>\*</b>Bold<b>\*</b></tt>
</td><td valign="top">
*Bold*
</td></tr>
<tr><td valign="top">
<tt>Don't do \&lt;\&lt;that>>!</tt>
</td><td valign="top">
Don't do &lt;&lt;that>>!
</td></tr>
</table>
</td></tr></table></div>
<p>
<h3>Titles, Paragraphs & Lines</h3>
<p>
To jump a line on the final result, i.e. to start a new paragraph, you must insert a blank line.
<p>
<div class="gray"><font size="-2"><b>Example
</b></font></div><table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0"width="100%">
<tr><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt>Gambas Already</tt><br>
<tt>Means BASIC!</tt>
</td><td valign="top">
Gambas Already Means BASIC!
</td></tr>
<tr><td valign="top">
<tt>Gambas Already</tt><br><br>
<tt>Means BASIC!</tt>
</td><td valign="top">
Gambas Already
<p>
Means BASIC!
</td></tr>
</table>
<p>
If you ends a line with an underscore, then a line break in inserted.
<p>
<div class="gray"><font size="-2"><b>Example
</b></font></div><table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0"width="100%">
<tr><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt>Gambas Already_</tt><br>
<tt>Means BASIC!</tt>
</td><td valign="top">
Gambas Already<br>
Means BASIC!
</td></tr>
</table>
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/warning.png" align="center"></td><td valign="top">
You can use the following special characters only at the beginning of a line.
</td></tr></table></div>
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
Syntax
</th><th>
Description
</th><th>
Result
</th></tr>
<tr class="dark"><td valign="top">
<tt>+Title</tt><br>
</td><td valign="top">
Displays a big title.
</td><td valign="top">
<h2>Title</h2>
</td></tr>
<tr><td valign="top">
<tt>++Title</tt><br>
</td><td valign="top">
Displays a smaller title.
</td><td valign="top">
<h3>Title</h3>
</td></tr>
<tr class="dark"><td valign="top">
<tt>+++Title</tt><br>
</td><td valign="top">
And so on...
</td><td valign="top">
<h4>Title</h4>
</td></tr>
<tr><td valign="top">
<tt>++++Title</tt><br>
</td><td valign="top">
&nbsp;
</td><td valign="top">
<h5>Title</h5>
</td></tr>
<tr class="dark"><td valign="top">
--
</td><td valign="top">
Horizontal line
</td><td valign="top">
<hr>
</td></tr>
<tr><td valign="top">
<tt>==<br>
&lt;u&gt;This is *verbatim* text&lt;/u&gt;<br>
==</tt>
</td><td valign="top">
Verbatim text. Note that the HTML markup are interpreted.
</td><td valign="top">
<pre class="code"><u>This is *verbatim* text</u>
</pre><p></td></tr>
</table>
<p>
<h3>Tables</h3>
<p>
You can use the following special characters only at the beginning of a line.
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
Syntax
</th><th>
Description
</th></tr>
<tr class="dark"><td valign="top">
<tt>[[</tt>
</td><td valign="top">
Begins a table.
</td></tr>
<tr><td valign="top">
<tt>]]</tt>
</td><td valign="top">
Ends a table.
</td></tr>
<tr class="dark"><td valign="top">
<tt>][</tt>
</td><td valign="top">
Separates two rows.
</td></tr>
<tr><td valign="top">
<tt>-</tt>
</td><td valign="top">
Separates two columns.
</td></tr>
</table>
<p>
The first row is always the headers. If the first row is void, then no header is printed.
<p>
<div class="gray"><font size="-2"><b>Example
</b></font></div><table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0"width="100%">
<tr><th>
If you type...
</th><th>
You get...
</th><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt>[[<br>
First header<br>
-<br>
Second header<br>
-<br>
Third header<br>
][<br>
1<br>
-<br>
2<br>
-<br>
3<br>
][<br>
4<br>
-<br>
5<br>
-<br>
6<br>
]]</tt>
</td><td valign="top">
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
First header
</th><th>
Second header
</th><th>
Third header
</th></tr>
<tr class="dark"><td valign="top">
1
</td><td valign="top">
2
</td><td valign="top">
3
</td></tr>
<tr><td valign="top">
4
</td><td valign="top">
5
</td><td valign="top">
6
</td></tr>
</table>
</td><td valign="top">
<tt>[[<br>
][<br>
1<br>
-<br>
2<br>
-<br>
3<br>
][<br>
4<br>
-<br>
5<br>
-<br>
6<br>
]]</tt>
</td><td valign="top">
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr class="dark"><td valign="top">
1
</td><td valign="top">
2
</td><td valign="top">
3
</td></tr>
<tr><td valign="top">
4
</td><td valign="top">
5
</td><td valign="top">
6
</td></tr>
</table>
</td></tr>
</table>
<p>
<h3>Links</h3>
<p>
This wiki has a autolink feature. The only way to disable it is the backslash escape character!
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
Syntax
</th><th>
Description
</th><th>
Result
</th></tr>
<tr class="dark"><td valign="top">
<tt>[/lang/arithop]</tt>
</td><td valign="top">
Link to a topic
</td><td valign="top">
<a href="lang/arithop+en">Arithmetic Operators</a>
</td></tr>
<tr><td valign="top">
<tt>[http://gambas.sourceforge.net|Gambas web site]</tt>
</td><td valign="top">
Link to any URL
</td><td valign="top">
<a href="http+//gambas.sourceforge.net">Gambas web site</a>
</td></tr>
<tr class="dark"><td valign="top">
<tt>What is ASCII ?</tt>
</td><td valign="top">
Autolink
</td><td valign="top">
What is <a href="def/ascii+en">ASCII</a> ?
</td></tr>
<tr><td valign="top">
<tt>What is \ASCII ?</tt>
</td><td valign="top">
How to disable Autolink
</td><td valign="top">
What is ASCII ?
</td></tr>
</table>
<p>
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/info.png" align="center"></td><td valign="top">
If a page title begins with a <tt>'@'</tt> character, then it is considered as a symbolic link to the real page
whose path is given by the rest of the title.
Edit this <a href="cat/arithop+en">page</a> to understand.
</td></tr></table></div>
<p>
<h3>Special Sections</h3>
<p>
A section starts with a line beginning with a <tt>'{'</tt> character, and ends with a line beginning with a <tt>'}'</tt> character.
<p>
Sections can be nested.
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
If you type...
</th><th>
You get...
</th></tr>
<tr class="dark"><td valign="top">
<tt>{syntax<br>
This is the syntax of a function<br>
}</tt>
</td><td valign="top">
<div class="black"><font size="-2"><b>Syntax</b></font></div>
<pre class="syntax">This is the syntax of a function</pre><p>
</td></tr>
<tr><td valign="top">
<tt>{example<br>
Example<br>
}</tt>
</td><td valign="top">
<div class="gray"><font size="-2"><b>Example</b></font></div>
<pre class="example">Example</pre>
</td></tr>
<tr class="dark"><td valign="top">
<tt>{seealso<br>
See also these functions...<br>
}</tt>
</td><td valign="top">
<hr><b>See also</b><br>
See also these functions...
</td></tr>
<tr><td valign="top">
<tt>{box<br>
Just a box<br>
}</tt>
</td><td valign="top">
<div class="box">
Just a box
</div>
</td></tr>
<tr class="dark"><td valign="top">
<tt>{warning<br>
Warning!<br>
}</tt>
</td><td valign="top">
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/warning.png" align="center"></td><td valign="top">
Warning!
</td></tr></table></div>
</td></tr>
<tr><td valign="top">
<tt>{info<br>
Note that point.<br>
}</tt>
</td><td valign="top">
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/info.png" align="center"></td><td valign="top">
Note that point.
</td></tr></table></div>
</td></tr>
<tr class="dark"><td valign="top">
<tt>{vb<br>
Visual Basic does not work like Gambas.<br>
}</tt>
</td><td valign="top">
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/vb.png" align="center"></td><td valign="top">
Visual Basic does not work like <a href="def/gambas+en">Gambas</a>.
</td></tr></table></div>
</td></tr>
<tr><td valign="top">
<tt>{tip<br>
A tip may help you.<br>
}</tt>
</td><td valign="top">
<div class="warning"><table class="none" border="0"><tr><td width="40" valign="top"><img border="0" src="../img/tip.png" align="center"></td><td valign="top">
A tip may help you.
</td></tr></table></div>
</td></tr>
</table>
<p>
<ul>
<li>Have a line break (an empty line) before and after such boxes.
<li>Do not use line breaks inside of a seealso box
<p>

</ul>

<h3>Special Commands</h3>
<p>
A special command is a line beginning with a <tt>'@'</tt> character.
<p>
<table class="table" border="0" bordercolor="#000000" cellpadding="4" cellspacing="0">
<tr><th>
Special command
</th><th>
Description
</th></tr>
<tr class="dark"><td valign="top">
<tt>@components</tt>
</td><td valign="top">
Inserts the list of all components.
</td></tr>
<tr><td valign="top">
<tt>@classes</tt>
</td><td valign="top">
Inserts the list of all classes of the current component.
</td></tr>
<tr class="dark"><td valign="top">
<tt>@symbols</tt>
</td><td valign="top">
Inserts the list of all symbols of the current class.
</td></tr>
<tr><td valign="top">
<tt>@index /root/index/path</tt>
</td><td valign="top">
Creates an index of all pages of the specified root path. Only the first level pages are indexed.
</td></tr>
</table>

</div>
</body>
</html>

