Definition lists?

John Gruber gruber at fedora.net
Tue Mar 23 15:34:16 EST 2004


Michel Fortin <michel.fortin at michelf.com> wrote on 03/20/04 at 9:33a:

> I'm thinking about definition lists. I know Markdown does not support 
> them currently, but it could be a useful addition later.

Definitely. As noted in my previous message, I'm planning to add
definitions lists for version 1.1.


> At first I thought it may interfere with the code block syntax, but
> I've come to a great non-interfering syntax (I think). Here is an
> example:
> 
>      Dialogue
>      :   a conversation between two persons
>      :   a literary composition in the form of a conversation between two
>          people; "he has read Plato's Dialogues in the original Greek"
>      :   the lines spoken by characters in drama or fiction
> 
>      Center
>      Centre
>      :   a point equidistant from all points on the surface of a sphere.
>      :   in some field sports, the player who holds the middle position
>          on the field, court, or forward line.
> 
> As you can see I included many definitions per item. Each one of them 
> is preceded by a colon and subsequent lines need to be indented just 
> like for other list types. The defined items (there can be more than 
> one) must be on the lines immediately before the colon not separated by 
> any blank line. Subsequent definition groups are put in the same list 
> and can have a blank line between them.

This is pretty much exactly what I'd planned. Nice job!

I really like the idea of using colons for definition item markers.
The only thing I'm wondering about is whether we should also use
colons for the terms:

     Center:
     Centre:
     :   a point equidistant from all points on the surface of a sphere.
     :   in some field sports, the player who holds the middle position
         on the field, court, or forward line.

We'll work the details out later. It'll definitely wind up looking
pretty similar to your suggested syntax above.

I'd rather hold off on opening a thread about this (and other
proposed 1.1 features) until after 1.0 ships.


> You can also include code blocks and other lists in the definition, 
> just like you can already do with normal list items:
> 
>      Defined word
>      :   First definition
>          First definition line 2:
>              Code block inside definition.

Right. No conflict. Code blocks simply require *an extra* level of
indentation, from whereever you currently are.

-J.G.


More information about the Markdown-discuss mailing list