I strongly second the proposal, important separation of issues.

Being aware that Creole currently has a weak position about nested formatting: I would vote for being able to have emphasized parts within monospace programming code! It does help discussions to be able to highlight within a bigger, emphasized part.

-- [Gregor Hagedorn] - 2007-03-14

I also support the proposal.

Not sure if that's what Gregor means, but I wouldn't like markup in preformatted blocks.
Or it should be a second kind of preformatted blocks. Otherwise, normal program listings
would require way too much escaping.

-- [[YvesPiguet]], 2007-Mar-16

So, it would be something like this:
{{{
 This is normal text ##this is monospaced with a [[link]] and **emphasis**##.
 This is {{{[[not a link]]~}}}, ##{{{this is monospaced nowiki~}}}##, but:

 {{{
  /** this is a normal comment, without any emphasis **/
  # this is a comment
  int main() {{{
    z = "//this is not italic text//"
  ~}}}
 ~}}}
}}}

So, a preformated block is something different than ##monospace## font. To have formatting within a monospaced block of text, one has to use normal text:

{{{
##
 int **main**() {{{{{{~}}}\\
  z = "//this is italic text//"\\
 {{{~}}}~}}}
##
}}}

Note, that engines can extend the preformated block to inlcude coloring/fomratting of the code -- actually that's what I do in the MoinMoin parser:

{{{
 {{{
 #!perl
  some colored perl code
 ~}}}
}}}

But maybe the {{{<<<...>>>}}} or other special markup should be used for that? The current approach has an advantage of graceful degradation...

-- [[Radomir Dopieralski]], 2007-Mar-2007

Radomir, I'm affraid some of your examples aren't processed correctly by the current
engine of wikicreole. I could try to fix what I can, but I don't want to interfer with your
signed edits... Feel free to remove this paragraph if it becomes obsolete. -- [[YvesPiguet]],
2007-Mar-16

I'd suggest to move suggestions on auto-enhancing to a page of suggestions for
implementers. This would include syntax coloring of preformatted blocks based
on heuristics similar to what the unix {{{file}}} command does, conversion of smileys
into images, copyright or TM symbols, and - dare I say - URL outside link markup. All
these features share a common characteristic: not implementing them doesn't hurt,
contrary to all other markup which looks like markup and has a larger effect on the
result.

-- [[YvesPiguet]], 2007-Mar-2007

Sorry for that, it should render ok now (if I got the escaping rules right :) ). There are several problems with using "normal", unix-like hashbangs: the path is not standard, some scripts use things like "{{{#!/usr/bin/env python}}}". Jus taking the last word is not an option too, as some programs will take more paramters. The scond problem is that not all languages use "#" for comments.

In case of MoinMoin the hashbang is completely artifical and is discarded when displaying -- it is part of the markup.

Not implementing the stand-alone urls has catastrophic effects: the "//" in the urls gets parsed as italic text.

-- [[Radomir Dopieralski]], 2007-Mar-16