On Fri, Aug 02, 2002 at 04:56:01PM -0700, lcrocker(a)nupedia.com wrote:
Here goes:
[br=1,cs=0,al=r,cp=2||
[al=c,bc=pink| ''Owls'''
|]
[al=c| Northern spotted owl |]
[al=c,bc=pink| '''[[Scientific classification]]''' |]
[|
[al=c||
[| [[Kingdom (biology)|Kingdom]]: || [[Animalia]] |]
[| [[Phylum]]: || [[Chordata]] |]
...
[| a simple table || with two columns |]
[| and two || rows |]
The more I think about it, the more I'm convinced that CSS is the way
to go. It's not even a browser issue, really: browsers that can't
handle CSS probably can't handle the things it's being used for
anyway,
and by definition they lose no content, only style, so I think that's
fine.
Your table syntax is nice if we really need nested tables, so adding
my
style syntax (which requires relaxing the "start of line" requirement
a
bit to skip over style tags that precede elements), we get:
{species}
{pink}[| '''Owls''' |]
{cent}[| Northern spotted owl |]
{pink}[| '''[[Scientific classification]]''' |]
[|
[| [[Kingdom (biology}|Kingdom]]: || [[Animalia]] |]
[[ [[Phylum]]: || [[Chordata]] |]
...
|]
I'd prefer the styles to be named for content markup, not for layout.
They most probably will be skin-dependend. So in Cologne Blue the
header of the table will be a greyish blue, in standard skin it
will be pink and in StarTrek skin there will be a yellow background
image with round corners. (Only examples, of course). So I think it
should read:
{species}
{header}[| '''Owls''' |]
{subheader}[| Northern spotted owl |]
{header}[| '''[[Scientific classification]]''' |]
[|
[| [[Kingdom (biology}|Kingdom]]: || [[Animalia]] |]
[[ [[Phylum]]: || [[Chordata]] |]
...
|]
And hopefully, the stylesheet that defines {species},
{pink} and
{cent}
can be re-used by all the articles on different species, and different
specialized stylesheets can be produced for things like elements if
needed. And exactly the same syntax is used for images, lists,
headers,
and everything else.
{right}[[image:spottedowl.jpg]]
{nobullets}* Item
* Item
* {red Item}
{smaller}== Major heading ==
{roman}# Item
# Item
{quote
Long excerpt from book, indented and italicized...
}
I think the problem with this markup is that you only have
an "open"-tag and can't nest them.
How would you combine it, for example, to have a small label below the
floating-right image?
== 1 ==
{right}[[image:spottedowl.jpg]] ''Spotted owl''
would most probably render "spotted owl" in one line to the
right of the image.
== 2 ==
{right}[[image:spottedowl.jpg]] <BR> {center} ''Spotted owl''
comes to mind. But this might create very long lines, which is not
very readable.
== 3 ==
OTOH, nesting tags fastly makes us reinvent XML with something like
{right [[image:spottedowl.jpg]]
<BR>
{center ''Spotted owl''}
}
(Hmm, looks Lisp'ish ...)
== 4 ==
Not sure whether it can be done with CSS only or whether it would
require help from PHP:
{labeledfloating}[[image:spottedowl.jpg]] Spotted owl
rendering to
<div style="float: right">
<img src="/uload/a/b/c/spottedowl.jpg"><BR>
<center>
<em>Spotted owl</em>
</center>
</div>
That is, the first word would be taken as an image, the
following as label to be centered below the image.
== 5 ==
Make it look wiki, I think this is similar to
the way Jan Hidders proposed:
> [[image:spottedowl.jpg|Spotted owl]] >>
My favourite is still number 5 for floating images and to have
{style} only for tables.
Regards,
JeLuF