Contribute Your Knowledge ~ Edit Existing Pages

Introduction

These features allow a Wiki page to be edited similar to word-processing, but like the Forums editing window, the formatting codes are visible and the Preview button must be used to see the final formatted text.

Many of the formatting codes can be inserted within the Wiki editing window by using the Quick Buttons toolbar in a similar fashion to word-processors. Select the text you want to format so that it is highlighted, then click the desired Quick Button.

Edit and Save a Page

  • Use Tools > Log In via the toolbar top right before each editing session.
  • Navigate to the Knowledge Base Wiki page you wish to edit.
  • Click Edit in the toolbar to edit a whole page, or one of the Edit buttons down the right-hand margin to edit one section.
  • Just like the Forums editing window, the edit Wiki window has a toolbar of Quick Buttons across the top to format any selected text as explained later.
  • During the editing session, the Preview button displays the page, the Save button preserves your changes and ends the session, while Cancel quits the session with nothing changed.
  • Use Tools > Log Out via the toolbar top right after each editing session.

Character Styles

The Wiki offers many types of font styles, smileys, special characters, and colours, but font point size and font types such as Arial or Tahoma cannot be chosen.

Font Style

The Wiki supports bold, italic, underlined and monospaced texts. Of course you can combine all these.

The Wiki supports **bold**, //italic//, __underlined__ and ''monospaced'' texts.
Of course you can **__//''combine''//__** all these.

You can use subscript and superscript, too.

You can use <sub>subscript</sub> and <sup>superscript</sup>, too.

You can mark something as struck-through as well.

You can mark something as <del>struck-through</del> as well.

The Family Historian icon fh can be easily displayed.

The Family Historian icon {{fh}} can be easily displayed.

Smileys

The Wiki converts commonly used emoticons to their graphical equivalents. Click on the Smileys icon :-D in the toolbar and choose from the drop-list. Here is an overview of Smileys included in the Wiki.

Smileys

  • 8-) 8-)
  • 8-O 8-O
  • :-( :-(
  • :-) :-)
  • =) =)
  • :-/ :-/
  • :-\ :-\
  • :-? :-?
  • :-D :-D
  • :-P :-P
  • :-O :-O
  • :-X :-X
  • :-| :-|
  • ;-) ;-)
  • ^_^ ^_^
  • :?: :?:
  • :!: :!:
  • LOL LOL
  • FIXME FIXME
  • DELETEME DELETEME

An administrator can change the Smileys in the smiley directory configured in the conf/smileys.conf file.

Special Characters

Special Chars

The Wiki can convert simple text characters to typographically correct symbols. Click on the Special Chars icon Ω in the toolbar and choose from the drop-list of accented characters and symbols. Here is an example of some recognized characters.

→ ← ↔ ⇒ ⇐ ⇔ » « – —

640x480 © ™ ®

"He thought 'It's a man's world'…"

-> <- <-> => <= <=> >> << -- ---

640x480 (c) (tm) (r)

"He thought 'It's a man's world'..."

An administrator can adjust these conversions through a config option and a pattern file.

Font Colour

The Color Plugin allows text and its background to have a variety of colours, that can be combined with the font styles.

The Color Plugin allows text and its background to have a 
<color blue>variety</color> of <color red/yellow>colours</color>,
that can be **<color green/rgb(220,220,220)>combined</color>**
with the __//<color #00F/#0F0>font styles</color>//__.

The supported colour formats are colourname, and #FFF[FFF], and rgb(255[%],255[%],255[%]).

Tip: Horizontal Spacing

The Wiki treats any number of whitespace characters as if there is only one. So to produce horizontal spacing, characters with the same text and background colour are needed.

This @ @ is @ @ spaced, and this imitates a wide @STOP@ button.

This <color white>@ @</color> is <color white>@ @</color> spaced,
and this imitates a wide <color red/red>@</color><color white/red>STOP</color><color red/red>@</color> button. 

Text Layouts

These layout features provide paragraphs, section headlines, bullet lists, tables, boxes, footnotes, etc.

Paragraphs

A Paragraph is created by entering a blank line gap. If you want to force a newline without a paragraph gap, you can use two backslashes \\ followed by a white space or the end of line.

This is some text with some line breaks.
Note that the two backslashes are only recognized at the end of a line
or followed by
a white space \\this happens without it.

This is some text with some line breaks.\\ Note that the
two backslashes are only recognized at the end of a line\\
or followed by\\ a white space \\this happens without it.

You should use forced newlines only if really needed.

Headlines

You can use up to five different levels of headlines to structure your content. They can be added using the toolbar. If you have more than three headlines, a table of contents is generated automatically, but this can be disabled by including the ~~NOTOC~~ macro in the document.

Headline Level 1


@ Headline Level 2


@ @ Headline Level 3

Headline Level 4

Headline Level 5
====== Headline Level 1 =====
===== Headline Level 2 =====
==== Headline Level 3 ====
=== Headline Level 4 ===
== Headline Level 5 ==

Tip: Adjust Left Margin

The headline levels without any text will adjust the left margin indent, but they may add blank entries to the Table of Contents.

This is handy for concluding text that applies to all sections above, so warrants no indent.

Far from left margin.

Nearer to left margin.

== ==
Far from left margin.
=== ===
Nearer to left margin.

Horizontal Lines

By using four or more dashes ---- you can make a horizontal line. They can be added using the toolbar.


Lists

The Wiki supports ordered and unordered lists. To create a list item, indent your text by two spaces and use asterisks * for unordered bullet lists or hyphens - for ordered numbered lists. They can also be added from the toolbar.

  • This is a list.
  • The second item.
    • You may have different levels,
      and use line breaks for multiple lines.
      • Each with a different bullet.
  • Another item.
  * This is a list.
  * The second item.
    * You may have different levels,\\ and use line breaks for multiple lines.
      * Each with a different bullet. 
  * Another item.
  1. A similar list but ordered.
  2. Another item.
    1. Just use indention for deeper levels,
      and use line breaks for multiple lines.
      1. Each with a different numbering style.
  3. That's it!
  - A similar list but ordered.
  - Another item.
    - Just use indention for deeper levels,\\ and use line breaks for multiple lines.
      - Each with a different numbering style. 
  - That's it!

You may not interrupt numbered lists with blank lines, or the index will restart at 1.

As well as line breaks \\ you can also add Code Blocks providing they start on the same line as your list item.

The FAQ on list items provides advice about lists for experts.

Tables

The Wiki supports a simple syntax to create tables of rows and columns.

Heading 1 Heading 2 Heading 3
Row 1 Col 1 Row 1 Col 2 Row 1 Col 3
Row 2 Col 1 some colspan (note the double pipe)
Row 3 Col 1 Row 3 Col 2 Row 3 Col 3

Table cells have to start and end with a pipe | for normal rows or caret ^ for headers.

^ Heading 1      ^ Heading 2       ^ Heading 3          ^
| Row 1 Col 1    | Row 1 Col 2     | Row 1 Col 3        |
| Row 2 Col 1    | some colspan (note the double pipe) ||
| Row 3 Col 1    | Row 3 Col 2     | Row 3 Col 3        |

To connect cells horizontally, just make the next cell completely empty as shown above. Be sure to always have the same number of cell separators on each row!

Vertical table headers are possible, too.

Heading 1 Heading 2
Heading 3 Row 1 Col 2 Row 1 Col 3
Heading 4 no colspan this time Row 2 Col 3
Heading 5 Row 3 Col 2 Row 3 Col 3

As you can see, it's the cell separator before a cell which determines the upper or lower case.

|              ^ Heading 1            ^ Heading 2      ^
^ Heading 3    | Row 1 Col 2          | Row 1 Col 3    |
^ Heading 4    | no colspan this time | Row 2 Col 3    |
^ Heading 5    | Row 3 Col 2          | Row 3 Col 3    |

To connect cells vertically put ::: in the cells below the one to which they should connect.

Heading 1 Heading 2 Heading 3
Row 1 Col 1 This cell spans vertically.
Long text can flow down
by using \\ line breaks.
Row 1 Col 3
Row 2 Col 1 Row 2 Col 3
Row 3 Col 1 Row 3 Col 3

Apart from the ::: those cells should not contain anything else.

^ Heading 1      ^ Heading 2                  ^ Heading 3          ^
| Row 1 Col 1    |  This cell spans vertically.\\ Long text can flow down\\ by using ''%%\\%%'' line breaks.  | Row 1 Col 3        |
| Row 2 Col 1    | :::                        | Row 2 Col 3        |
| Row 3 Col 1    | :::                        | Row 3 Col 3        |

You can align the table contents, too. Just add at least two white spaces at the opposite end of your text. Add two spaces on the left to align right, two spaces on the right to align left, and two spaces at both ends for centred text.

Table with alignment
right center left
left right center
xxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxx

This is how it looks in the source.

^           Table with alignment           ^^^
|         right|    center    |left          |
|left          |         right|    center    |
| xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |

Tip: Last Row Line

To obtain a line under the last row of a table, enter a row of empty cells.

Heading 1 Heading 2
Heading 3 Row 1 Col 2 Row 1 Col 3
Heading 4 Row 2 Col 2 Row 2 Col 3
Heading 5 Row 3 Col 2 Row 3 Col 3
|              ^ Heading 1      ^ Heading 2      ^
^ Heading 3    | Row 1 Col 2    | Row 1 Col 3    |
^ Heading 4    | Row 2 Col 2    | Row 2 Col 3    |
^ Heading 5    | Row 3 Col 2    | Row 3 Col 3    |
^              |                |                |

Boxes

The Box Plugin supports boxes with optional widths, round corners, colours, titles, captions, etc.

Bold Title

The box contents can include almost any Wiki markup, and can spread over as many lines as are needed. =)

Box Caption

<box 50% red | **Bold Title** >
The box contents can include almost any **Wiki** markup,
 and can spread over as many lines as are needed. =)
</box | Box Caption >

The full syntax is:

<box width classes colours | title text > contents text </box | caption text >

  • width - any legal CSS width value, set to 50% by default.
  • classes any number of classes defined by styles in the administrator Wiki template or the Box Plugin stylesheet. The following classes are predefined.
    • round - box will have round corners
    • blue - blue colour scheme
    • red - red colour scheme
    • green - green colour scheme
    • orange - orange colour scheme
    • left - float the box left within the Wiki page
    • right - float the box right within the Wiki page
    • If no classes are specified the default styles will be used, i.e. square corners in a colour scheme based on the default Wiki colour scheme and a central position.
  • colours - 1-4 colours in CSS hex or RGB notation similar to Font Colour above, e.g. #F00 #fcab94 rgb(255,255,0). These colours are applied in order to:
    • content background
    • title background
    • outer box background
    • borders
    • If less than four colours are specified, the first colour is used for the missing colours.
  • title text - text displayed above the box contents, with distinct style. Wiki text markup, links, smileys and the like can be used.
  • contents text - text displayed inside the box. Wiki markup is allowed and pretty well anything goes.
  • caption text - text displayed below the box contents, with distinct style. Wiki markup is NOT allowed.

The opening <box … > including the title must all appear on one line. The box contents can appear over as many lines as are needed.

Footnotes

You can add footnotes 1) by using double parentheses. i.e. (( and ))

You can add footnotes ((This is a footnote)) by using double parentheses.

Scroll to the bottom of this page to see the footnote.

Hidden Text

The HideText Plugin allows text to be hidden behind a legend that when clicked reveals the text. The default legend is >>> or it can be defined by the plugin.

>>>

This text is hidden.

<hidetext> This text is hidden. </hidetext>

Click to reveal

This text is also hidden.

<hidetext Click to reveal > This text is also hidden. </hidetext>

Comments

The Commentsrc Plugin allows text to be only visible while editing a page by enclosing the text within !- and -!.

!- This is a comment. -!

Currently only one such comment is allowed per page, otherwise all the intervening text is also treated as comment.

Be aware that a Wiki search will include this comment text even though it is invisible on the displayed page.

Quoting

Some times you want to mark some text to show it's a reply or comment. You can use the following syntax.

I think we should do it

> No we shouldn't

>> Well, I say we should

> Really?

>> Yes!

>>> Then lets do it!

I think we should do it

No we shouldn't
Well, I say we should
Really?
Yes!
Then lets do it!

Text Formats

These are blocks of text with formatting options mainly used to present examples of coding scripts. They are useful in illustrating snippets of code that users can copy such as in Plugin Code Snippets or complex fh expressions.

Inhibit Formatting

If you need to display text exactly as it is typed (without any formatting), enclose the area with <nowiki> & <\nowiki> tags, or even simpler, with double percent signs %%.

This has a link https://www.google.co.uk and **formatting** but nothing is done with it.

The same is true for //__this__ text// with a smiley ;-) code.

<nowiki>
This has a link https://www.google.co.uk and **formatting** but nothing is done with it.
</nowiki>

The same is true for %%//__this__ text// with a smiley ;-)%% code.

You can also highlight expressions inline such as %INDI.BIRT.DATE% by enclosing them in two single quotes on each side, e.g. ''%INDI.BIRT.DATE%''

Code Blocks

You can include code blocks into your documents by either indenting them by at least two spaces, as used in many examples above, or by using the <code> & </code> or <file> & </file> tags.

This is text is indented by two spaces.
This preformatted code has all spaces preserved: like              <-this
This is much the same, but you could use it to show that you quoted a file.

Those blocks were created by this source:

  This is text is indented by two spaces.
<code>
This preformatted code has all spaces preserved: like              <-this
</code>
<file>
This is much the same, but you could use it to show that you quoted a file.
</file>

Syntax Highlighting

The Wiki can highlight source code, which makes it easier to read. It uses the GeSHi Generic Syntax Highlighter – so any language supported by GeSHi is supported. The syntax is the same as in the <code> or <file> blocks of other sections, but this time the name of the language used is inserted inside the tag, i.e. <file java> or <code fhf> or <code lua>.
e.g.
<file java>

/** 
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

<code fhf>

=Text(
TextIf(GetLabelledText(%INDI._ATTR-TO_DO.NOTE2%,"Birth:")="","","Birth: ") .  
TextIf(GetLabelledText(%INDI._ATTR-TO_DO.NOTE2%,"Baptism:")="","","Baptism: ") . 
TextIf(GetLabelledText(%INDI._ATTR-TO_DO.NOTE2%,"Census:")="","","Census: ") 
)

<code lua>

-- import overloads fh functions into string table
function import()
	for strIndex, anyValue in pairs(fh) do
		if type(anyValue) == "function" and strIndex ~= "import" then
			string[strIndex] = anyValue
		end
	end
end -- function import

The following language strings are currently recognized:
4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac,
abap, actionscript-french, actionscript, actionscript3, ada, algol68, apache, applescript, asm, asp, autoconf, autohotkey, autoit, avisynth, awk,
bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo,
c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet,
d, dcs, delphi, diff, div, dos, dot,
e, epc, ecmascript, eiffel, email, erlang, euphoria,
f1, falcon, fo, fortran, freebasic, fsharp,
gambas, genero, genie, gdb, glsl, gml, gnuplot, go, groovy, gettext, gwbasic,
haskell, hicest, hq9plus, html, html5,
icon, idl, ini, inno, intercal, io,
j, java5, java, javascript, jquery,
kixtart, klonec, klonecpp,
latex, lb, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua,
m68k, magiksf, make, mapbasic, matlab, mirc, modula2, modula3, mmix, mpasm, mxml, mysql,
newlisp, nsis,
oberon2, objc, objeck, ocaml-brief, ocaml, oobas, oracle8, oracle11, oxygene, oz,
pascal, pcre, perl, perl6, per, pf, php-brief, php, pike, pic16, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, python,
q, qbasic,
rails, rebol, reg, robots, rpmspec, rsplus, ruby,
sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog,
tcl, teraterm, text, thinbasic, tsql, typoscript,
unicon, uscript,
vala, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog,
whitespace, winbatch, whois,
xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic

Code Block Downloads

When you use the <code> or <file> syntax as above, you might want to make the code shown available for download as well. You can do this by specifying a file name after the language code like this:

<file php myexample.php>
<?php echo "hello world!"; ?>
</file>
myexample.php
<?php echo "hello world!"; ?>

If you don't want any highlighting but want a downloadable file, specify a dash (-) as the language code <code - myfile.foo>.

1)
This is a footnote