stopsoftwarepatents.eu petition banner

Let's Sign the petition today.

Parent

CWiki

What is cWiki

CWiki is a kind of Wiki, based on flat file, with a "natural" Syntax (at least, it was the idea).

Features

Flat File

Page are stored as flat file, on disk. because :

Natural Syntax

What is "Natural Syntax" ? If you type and format the file to look nice in a text editor, it should look nice on the web page too. Of course, there are some conventions (not really a syntax..)

Autotoc

Automatic Table of content : the TOC of your document is automaticaly created from titles (menu on the left side).

Installation

Yet to be writen

Examples

Titles

the two titles above are simply written:

	=Examples
		=Titles

Links

You can make links like http://www.debian.org or Jump to My title or this!.

you can make links like [[http://www.debian.org]] or [[ Jump to My title => #Anchors ]] or [[this**!** => #Links ]].

Images

Including an image (.png .gif .jpg or .bmp) is similar to linking. Append a hash to force linking

Show an image (with title) [[ Debian Powered => button-4.gif ]] or link to it [[ Debian Powered => button-4.gif# ]]

Show an image (with title) or link to it Debian Powered

Anchors

All titles are automaticaly converted as [CamelCase] anchors.

Text Emphasize

You can very easily write some Bold, Italics or underline text. code

You can very easily write some **Bold**, //Italics// or __underline__ text.

List is straight forward too:

My List of fruits:

My List of fruits:
 - Orange
 - Pears
 - apples

Numbered list are very similar : My Prefered fruits:

  1. Orange
  2. Pears
  3. Apples
My Prefered fruits:
 % Orange
 % Pears
 % Apples

Tables

Use "|" to draw your table, like :

Table title
foo foo
bar bar 33

code

|    Table title     |
|foo	|foo	|    |
|bar	|bar	| 33 |

Code

To show a sample command, use the "$"

some code or command

code

$some code or command

Warning box

Preview:

This is a sample warning !

Code:

!This is a sample warning !

Simple Note

Preview:

This is a sample note !

Code:

+This is a sample note !

Quoted text

from: John.doe@acme.com

Some Quoted text or email Some Quoted text or email.. Some Quoted text or email Some Quoted text or email

Code:

> Some Quoted text or email Some Quoted text or email..
> Some Quoted text or email Some Quoted text or email

Hidden Comments

;Prefixed your comments with a semi-colon ";" like this.

Some raw text :

And finaly, to print some raw text (like a file..)

=This isn't rendererd as a title... and no **Bold**, //Italic// text
-And this one isn't a bullet list, etc.

code:

'=This isn't rendered as a title... and no **Bold**, //Italic// text
'-And this one isn't a bullet list, etc.

Directives

Directive are lines begining with a tilde ("~"). Directive provide instruction to cwiki.

~cwiki

The "~cwiki" directive MUST be the first line. it has two purpose:

  1. it turns on the cwiki parser (currently has no effect).
  2. make the file format easily reconizable (by libmagic, file..)

~autotoc

Set the depth of the table ot content (0=disabled ; 1= h1 only; 2 = h1 and h2...). The toc is generated by Javascript, and it's hidden on printed pages. You can customize it's appareance through stylesheet / CSS. autotoc will also add a tag at the bottom of the the page with "Last Modified" and the page Author (see ~author).

~author

Document author

~author:Franklin PIAT <fpiat@bigfoot.com>

This will be re-written in the html header, like

<meta name="author" content="Franklin PIAT <fpiat@bigfoot.com>"/>

~keywords

~keywords:flat file,wiki,diff

This will be re-written in the html header, like

<meta name="keywords" content="flat file,wiki,diff"/>

(text is also append'ed at the bottom of the page for search engines).

~description

~description:Your page descritpion here

This will be re-written in the html header, like

<meta  name="description" content="Your page descritpion here"/>

see roadmap for "variables"

~stylesheet

Specify the URL of a CSS stylesheet to include

~stylesheet:/screen.css

This will be re-written in the html header, like

<link rel="stylesheet" type="text/css" href="/screen.css"/>

~rawtext

Include some files raw text file.

~rawtext:README.txt

see section Todo / Roadmap for example.

Todo / Roadmap

I would like to implement the folowing stuffs:

	- Improve Paragraph and End of line detection.
	- Definition List/Term/Data (à la HTML)
	- Embedding files {{~image: myfile}} ; {{~text: }} ; {{~html: }} ; {{~highlight(html):}}
	- write "Installation" Notes + a CSS writing howto;
		
Roadmap for futur release
	- More document directives (lines starting with ~)
	- Document merging and spliting (~splitlevel: and {{~cwiki: myfile}})
	- Title shouldn't require the "=" prefix (if all uppercase on isolated line, or underline with =====)
	- Variables : provides some variables (especially, to print directives in the page)
	- how to link across different files
	- some kind of HEREDOC (like perl/bash/php's $var=<<< ENDTAG)
	- tables improvement :
		- two column document (with two large cells ; width=100%)...
		- "<th>" like (currently, one has to use ||**Title**|| to have similar result)