(anonymous guest) (logged out)

Copyright (C) by the contributors. Some rights reserved, license BY-SA.

Sponsored by the Wiki Symposium and the Nuveon GmbH.


Add new attachment

Only authorized users are allowed to upload new attachments.

This page (revision-31) was last changed on 20-Aug-2008 22:40 by  

This page was created on 01-Sep-2006 13:26 by

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 1 removed one line
For detail about me, see [http://sheep.art.pl/].
At line 3 removed one line
!!!Work in progress
At line 5 changed 3 lines
* MoinMoin Creole plugin
* New style for this site: http://sheep.art.pl/work/creole/
* TheStudentExperiment
I'm not "giving up" and I definitely didn't want to force **you** to give up. I'm just not going to argue blindly for my idea of how Creole should look like -- I realized I was doing this for the last several months, basically repeating the same arguments over and over. This is sudden because it comes out of a sudden realization, not because it's an act of emotional terrorism. I think that both the hyphen lists and the escape character both have the potential to be good solutions -- I just don't like certain aspects of the proposals in the current form.
At line 9 changed one line
All in all, I'm not going away -- I'm just stopping this stupid war I started.
At line 11 changed 10 lines
What could be improved in Creole:
* disallow mixing of lists types,
* allow both '*' and '-' in lists (see below),
* allow both '=' and '!' in headings,
* treat all {{{__...__}}}, {{{**...**}}} and {{{//...//}}} as three different kinds of emphasis, without specifying the exact presentation,
* disallow mixing of emphasis types,
* have markup for inline quotes,
* have markup of some common characters not easily accessible from keyboard, like "--" for en-dash, "---" for em-dash, "..." for ellipsis, etc.,
* move/add the markup for monospace text, tables, indentation, plugin macros, placeholder, subscript, superscrpt, definition lists to Creole additions,
* **don't add any more new markup to core Creole**.
-- [[Radomir Dopieralski]], 2007-Apr-30
At line 22 changed one line
This is where I stand for today (2007-02-14). I'm open to explain/discuss my reasons behind any of these points. I reserve a right to change my mind about any of these points.
Hello Radomir, whatever happens next, it has been fun working on parts of Creole with you. If you're ever in Tokyo, please let me know! Cheers.
At line 24 removed one line
I think that Creole has slowly reached its desirable form and that further non-cosmetic changes will only harm it. There is still a lot of work for us left once we declare Creole final -- create the supporting software, improve the wording, prepare cheatsheets and detailed descriptions in various languages, work on Creole additions and hints for implementers, etc.
At line 26 changed 64 lines
== (Anti)Patterns
* http://c2.com/cgi/wiki?WorryDrivenDevelopment
* http://c2.com/cgi/wiki?OutsmartingTheUser
* http://c2.com/cgi/wiki?DesignByExhaustion
* http://c2.com/cgi/wiki?DesignByCommittee
== Elaboration on lists
By analyzing various formatted text documents available, one can identify two common patterns for creating lists: hyphen list and bullet list (with a bullet-like character, like "*", "o", "x", "+" or even "@" or "%"). While bullet lists seem to be common in wikis and various text files created as such from the beginning, the hyphen lists seem to be favored by people who don't normally work with plain text files.
One can also observe two common patterns for multi-level, nested lists: if the
user has time for it, is skilled enough and is sure that the text will not be
mangled, indentation is used to mark list nesting. Otherwise, or in addition to nesting, users usually vary the kind of list depending on the nesting level: numbered or otherwise enumerated lists, bullet lists, hyphen lists. A typical list with complex nesting would look like this:
1. first level
2. first level
a) second level
b) second level
* third level
- fourth level
- fourth level
* third level
c) second level
- third level
- third level
3. first level
Note that this technique is pretty fault-proof -- even if the indetation is mangled or lines are wrapped, it's still easy to guess the intended hierarchy. Note that neither indentation nor the kinds of lists used are consistent -- they don't have to, because it's the //change// in either (or both) that is important. In case of Creole we want to igonre indenting completely, of course, but still allow it.
It should be noted that non-programmer users are not very fond of tree-like structures. When their list has more than, say, 3 levels of nesting, it's a good idea to fall back into other formatting possibilities, like headings (possibly numbered, like 1.2.3), indented paragraphs, inline comma-separated lists or even figures with the trees presented graphically.
Getting back to Creole, it seems that it would be nice if it recognized the two most popular patterns of lists. There is no problem with bullet list created using asterisks as long as it's a single asterisk only. There is a slight problem with list created usign single minus characters: dialogues. The common case looks like this:
- Hi there!
- Oh, hello...
- Do you know why does a programmer always use all the shampoo in the bottle?
- No, why?
- Because the instructions say: "put some shampoo on your hair, wash, rinse, *repeat*".
- Ha ha ha!
Naturally, users would like something like this to be treated as a dialogue. We can either make the hyphen list look like... a hyphen list (but we can't define the exact rendering in Creole) or tell the user to format this in a special way:
-- Hi there!\\
-- Oh, hello...\\
-- Do you know why does a programmer always use all the shampoo in the bottle?\\
-- No, why?\\
-- Because the instructions say: ``put some shampoo on your hair, wash, rinse, **repeat**''.\\
-- Ha ha ha!
This will format it as a normal paragraph, with typographically correct en-dashes marking the dialogue and forced new lines to break it into voices. Of course, it would be best if the first example "just worked". It is really unfortunate that it's not easy to make a html list look like hyphen list with just CSS1 -- you either need to use graphics or CSS2 which is not supported by (duck!) TheMostCommonlyUsedBrowser:
ul.hyphen > li { list-style: none }
ul.hyphen > li:before { position: marker; content: &#8259 }
As for nesting -- you can already make at least three levels of nested lists using the numbered, bullet and hyphen lists. More if you use headings. If you need even more -- 7 or more levels of nesting -- then you're probably better off preparing a graphical illustration for the complicated problem -- MoinMoin even has a GraphWiz plugin for such occassions. Of course, a different way of marking nested lists can still be used -- like the repeating of the list character that is used now -- but probably best included in the Creole additions.
-- [[Mark Wharton]], 2007-05-01
Version Date Modified Size Author Changes ... Change note
31 20-Aug-2008 22:40 0.874 kB to previous
30 15-Dec-2007 12:24 2.494 kB RadomirDopieralski to previous | to last presetation about Creole
29 29-Oct-2007 16:00 2.342 kB to previous | to last
28 26-Sep-2007 09:46 2.328 kB ChuckSmith to previous | to last restore
27 26-Sep-2007 01:52 2.361 kB to previous | to last
26 26-Sep-2007 01:52 2.345 kB to previous | to last
25 01-May-2007 06:28 2.328 kB MarkWharton to previous | to last fun working with you
24 30-Apr-2007 12:24 2.144 kB RadomirDopieralski to previous | to last don't give up
23 30-Apr-2007 10:27 1.456 kB ChristophSauer to previous | to last don't give up
22 29-Apr-2007 22:17 1.138 kB RadomirDopieralski to previous | to last every journey comes to an end
21 21-Mar-2007 11:21 1.047 kB RadomirDopieralski to previous | to last added proposals
« This page (revision-31) was last changed on 20-Aug-2008 22:40 by