Re: A Modest Definition List Proposal

2010-04-13 Thread Waylan Limberg
On Tue, Apr 13, 2010 at 3:21 PM, Tom Humiston t...@jumpingrock.net wrote:
 Found this unsent reply stuffed in my drafts folder...

 On 19 Feb 2009, at 6:48 AM, Michel Fortin wrote:

 Definition lists are already some sort of specialized niche syntax within
 Markdown and HTML: useful when you need one, but not something a lot of
 people care for or even know it exists.

 Definition lists are suitable for many kinds of term/value pairings, and not
 just definitions, but I had no concept of DLs as a flexible and handy
 semantic structure until I learned CSS. CSS encourages one to consider a
 document's *structure* (its HTML elements) as separate from its
 *presentation* (the appearance of those elements).

 I now regularly mark up, say, each workshop in a list as a DT, with its
 details (description, cost, meeting times, contact info) as DDs. Other CSS
 users may prefer to use unordered lists or the like, and sometimes I do,
 too.

 Is my use of DL appropriate? According to [Russ Weakley][1]:


In this respect see the working draft for [html5][1]. In part is says:

 The dl element represents an association list consisting of zero or more
 name-value groups (a description list).

It's called a description list! They're not even called definition
lists any more. In fact, a number of examples on that page would not
fit the definition model, but are considered completely appropriate
for a dl.

True, markdown is currently not specifically intended at a html5 tool
(although it could be as valid html4 and valid xhtml are also valid
html5), but given that html5 is to a large extent just a spec
indicating how people and/or browsers are actually doing things, I see
it an an admission that definition list was a bad (too restrictive)
name for an otherwise useful feature.

[1]: http://www.w3.org/TR/html5/semantics.html#the-dl-element

-- 

\X/ /-\ `/ |_ /-\ |\|
Waylan Limberg
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2010-04-13 Thread Michel Fortin
Le 2010-04-13 à 15:21, Tom Humiston a écrit :

 Is my use of DL appropriate?

When in doubt, check HTML5 (which tend to make everything unambiguous). Here it 
says:

 The dl element represents an association list consisting of zero or more 
 name-value groups (a description list). Each group must consist of one or 
 more names (dt elements) followed by one or more values (dd elements). Within 
 a single dl element, there should not be more than one dt element for each 
 name.
 
 Name-value groups may be terms and definitions, metadata topics and values, 
 or any other groups of name-value data.
 
 The values within a group are alternatives; multiple paragraphs forming part 
 of the same value must all be given within the same dd element.
 
 The order of the list of groups, and of the names and values within each 
 group, may be significant.

http://www.whatwg.org/specs/web-apps/current-work/multipage/grouping-content.html#the-dl-element

Note that it renames definition list to description list, in support for 
the idea that it's not only for definitions.

-- 
Michel Fortin
michel.for...@michelf.com
http://michelf.com/



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2010-04-13 Thread David E. Wheeler
On Apr 13, 2010, at 12:41 PM, Michel Fortin wrote:

 http://www.whatwg.org/specs/web-apps/current-work/multipage/grouping-content.html#the-dl-element
 
 Note that it renames definition list to description list, in support for 
 the idea that it's not only for definitions.

This is great news. Thanks for passing it on (Waylan too)!

Best,

David

___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-28 Thread Aristotle Pagaltzis
* Aristotle Pagaltzis pagalt...@gmx.de [2009-02-28 16:18]:
 You can make a lot easier to write with a very simple tweak:

Sorry for the noise. Someday I’ll consistently remember to read
the whole thread before following my impulse to respond.

Regards,
-- 
Aristotle Pagaltzis // http://plasmasturm.org/
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-26 Thread Michel Fortin

Le 2009-02-25 à 22:00, Dr. Drang a écrit :

1. Regular Markdown--by which I mean Gruber's Markdown.pl--looks  
good[^1] regardless of whether you're using proportional or  
monospaced fonts. I can't think of any construct in which the width  
of the characters makes a difference.


Well, if you want list items spanning on multiple lines to align  
properly, it's pretty hard to do with spaces using a proportional font.


1.  List item
spanning on more
than one line.


2. Plain text tables almost always look like crap *unless* you're  
using a monospaced font, because columns always include a mixture of  
visible characters and spaces. I suspect this is one of the reasons  
Gruber hasn't put tables into Markdown.pl.


You can sometime use tabs in proportional fonts in some situations. It  
helps aligning things correctly, and not only for tables, but also  
with the list item example above.


Although if you later view it with a different font it'll probably  
look like crap too.



3. Markdown was not intended to cover every situation; it's meant to  
be a simple, readable substitute for simple (X)HTML. In this spirit,  
we shouldn't expect table additions to Markdown to be able to handle  
every type of table, just the simpler types. I like the table syntax  
of PHP Markdown Extra and MultiMarkdown for this reason.


That's in part why I'm reticent to add a new type of table with cells  
spanning on multiple rows to PHP Markdown Extra.



4. Using a script[^2] to align the pipes of a plain text table is  
very practical if you're writing in a monospaced font. You can write  
and edit the table quickly without regard to alignment, then make it  
readable by applying the script to it. It's much easier to make  
tables this way than to type them out in HTML.


Indeed. I never though of that, but it's a good idea.

That said, it's pretty easy to write a properly-aligned table without  
a script too. I've been doing that for some time.



--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-26 Thread Fletcher T. Penney


On Feb 25, 2009, at 9:57 AM, Sherwood Botsford wrote:


I suspect that if you were going to write a lot of tables, you'd write
a perl program that would take an existing table that you slopped
together, and would fix the spacing of pipes on all the lines to match
the pipe spacing on the first line.


Since I write most of my MultiMarkdown documents in TextMate, I (and  
others) have written Bundles that will do just this.  I type out a  
table using the MMD delimiters (|), and the bundle command takes care  
of aligning columns and making it look nice.  Sadly, I suspect that  
plain text tables require either the use of tabs (which vary based on  
the readers application), or fixed whitespace and a monospace font -  
which is tough to manually write.


My thoughts:

+ I am perfectly willing to change the MMD table syntax if a better  
alternative (particularly a standard one) comes along


+ Not everyone uses monospace fonts - as nice as that would be for  
tables, I think it's not reasonable to expect that to be a requirement  
for viewing tables


+ I hope someone out there smarter than me creates a better table syntax


;)


F-

--
Fletcher T. Penney
fletc...@fletcherpenney.net

Beauty lies in the hands of the beer holder.
- Anonymous

___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Michel Fortin


Le 2009-02-25 à 1:04, Benoit Perdu - TransMékong a écrit :


Taking David's example further, here is a first try:

 id |  name   |   description |  more info
-+-+---+-
  6 | Inset   | An inset element  | just one element
  8 | Stories | Another element   | another element
  : with 2 lines, without
  : colons on the left.
  9 | Other   | Another element   | another element
: :   : with 2 lines, with
: :   : colons on the left.
  5 | Illust. | An illustration   | new line, would this do?
: : and I think you   : Is it parseable?
: : know what I mean.


I doubt the no-colon-on-the-left lines will work. I mean, how do you  
know you're writing in fourth column without counting whitespace? (And  
if count whitespace it's unusable with proportional fonts.)



The colon at each empty cell looks like vertical ellipsis, that  
makes it

pretty legible


Colons are a nice way to do it, but I doubt the table will be readable  
by anyone not already aware of the syntax. To see what I mean, just  
take a look at the last column and forget for a moment that you know  
the difference in meaning between : and |. It then looks like one  
big paragraph of continuous text. You can disambiguate by reading the  
text, then figure out the meaning of | and :, but that's removing  
the usefulness of a table which should be scannable at first glance.


If you want multiple lines per cell, I'd suggest using a more explicit  
grid, something like this:


 id |  name   |  description |  more info
|=|==|=
  6 | Inset   | An inset element | just one element
|-|--|-
  8 | Stories | Another element  | another element
| |  | with 2 lines
|-|--|-
  9 | Other   | Another element  | another element
| |  | with 2 lines
|-|--|-
  5 | Illust. | An illustration  | line breaks are not
| | andn I think you | possible in a table
| | know what I mena.|

This is totally unambiguous and easy to scan for the reader. The  
problem is that, even though it's easy to read, it's also more tedious  
to write.


--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Sherwood Botsford
         id |  name   |  description     |      more info
        |=|==|=
          6 | Inset   | An inset element | just one element
        |-|--|-
          8 | Stories | Another element  | another element
            |         |                  | with 2 lines
        |-|--|-
          9 | Other   | Another element  | another element
            |         |                  | with 2 lines
        |-|--|-
          5 | Illust. | An illustration  | line breaks are not
            |         | andn I think you | possible in a table
            |         | know what I mena.|

 This is totally unambiguous and easy to scan for the reader. The problem is
 that, even though it's easy to read, it's also more tedious to write.


One minor change.  You don't need pipes in the horizontal separator lines.  E.g:
id |  name   |  description |  more info


I suspect that if you were going to write a lot of tables, you'd write
a perl program that would take an existing table that you slopped
together, and would fix the spacing of pipes on all the lines to match
the pipe spacing on the first line.

Tables are critters where formatting is tangled with content.  And
with proportional type, a text only system requires agreement on tab
spacing at minimum to get anything to look right. (I'm not a fan of
monospace, so all these examples are wonky.)

Add to this, the need for centering, the need for column spans.

Allignment could be done with your horizontal separators.

|---|  Means use your default alignment. (Same as cell above)
|| Means left alignment.  The  can appear anywhere between the |'s
|--| Means right alignment.
|-=| means center alignment.

Column spans could be done by replacing the pipe with an underscore.
|=_===|
|This is a cell that spans two|
columns, and is centred.
|--|--|
|Column 1  |Column 2|

I'm working in a proportional font, so the above example is sure to be wonky.

Note that these two ideas are contradictory.

To merge, them (makes reading slightly harder, but writing slightly easier.

| Default alignment |
| Left Alignment |
| Right Alignment |
|= Centered alignment =|

The alignment tags don't have to be paired, but can be for eye candy purposes.


|| Spans two columns of the stuff below |
|  Column 1 | Column 1 |



-- 
Sherwood Botsford
Sherwood's Forests
Warburg, Alberta T0C 2T0
http://www.sherwoods-forests.com
780-848-2548
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread David E. Wheeler

On Feb 24, 2009, at 10:04 PM, Benoit Perdu - TransMékong wrote:


Taking David's example further, here is a first try:

 id |  name   |   description |  more info
-+-+---+-
  6 | Inset   | An inset element  | just one element
  8 | Stories | Another element   | another element
  : with 2 lines, without
  : colons on the left.
  9 | Other   | Another element   | another element
: :   : with 2 lines, with
: :   : colons on the left.
  5 | Illust. | An illustration   | new line, would this do?
: : and I think you   : Is it parseable?
: : know what I mean.

The colon at each empty cell looks like vertical ellipsis, that  
makes it

pretty legible


Yes, nice. I think I like how it looks without the left colons better,  
though it could potentially work both ways.


Adding a 'wrappable' cell definition would go a long way to make it  
perfect.


Do you mean something more should be added, or that the use of `:` to  
define wrapped cells in this example is what goes a long way?


Thanks,

David

___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Seumas Mac Uilleachan

David E. Wheeler wrote:

On Feb 25, 2009, at 6:57 AM, Sherwood Botsford wrote:

One minor change.  You don't need pipes in the horizontal separator 
lines.  E.g:

   id |  name   |  description |  more info
   


They could be optional; I prefer them.


Tables are critters where formatting is tangled with content.  And
with proportional type, a text only system requires agreement on tab
spacing at minimum to get anything to look right. (I'm not a fan of
monospace, so all these examples are wonky.)


I think you might be using the wrong markup language, then. The use of 
monospace fonts is an expectation for reading Markdown. Really, it's 
the whole point.


Wait, what? Monospace is an expectation?!? I have never used monospace 
in my e-mail programs. Isn't THAT the main expectation of Markdown? That 
it approximates e-mail writing?


I think the only time I actually use monospace fonts is with Alt-F1 (or 
Ctrl-Alt)


Admittedly it is easier to create legible text documents with lots of 
bullets and tables and definition lists if you are using a monospace 
font but in my experience monospace fonts are generally just harder to 
read. The beauty of markdown is that you can approximate the spacing of 
monospace by varying the whitespace. Or just let it be wonky. (Of 
course what looks beautiful in one proportional font will be wonky in 
another anyway)





Add to this, the need for centering, the need for column spans.

Allignment could be done with your horizontal separators.

|---|  Means use your default alignment. (Same as cell above)
|| Means left alignment.  The  can appear anywhere between 
the |'s

|--| Means right alignment.
|-=| means center alignment.


I dislike these. I have other ideas for alignment, but I need to do 
some more thinking and drafting before I have a proposal to submit.



Column spans could be done by replacing the pipe with an underscore.
|=_===|
|This is a cell that spans two|
columns, and is centred.
|--|--|
|Column 1  |Column 2|

I'm working in a proportional font, so the above example is sure to 
be wonky.


Yes, and basically illegible.


Note that these two ideas are contradictory.

To merge, them (makes reading slightly harder, but writing slightly 
easier.


| Default alignment |
| Left Alignment |
| Right Alignment |
|= Centered alignment =|

The alignment tags don't have to be paired, but can be for eye candy 
purposes.



|| Spans two columns of the stuff below |
|  Column 1 | Column 1 |


IMHO, any formatting should be invisible in Markdown. That is, it 
should be implicit. The use of all these extra characters to show 
alignment and whatnot makes for ugly text-only tables.


Best,

David

___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Michel Fortin

Le 2009-02-25 à 9:57, Sherwood Botsford a écrit :


id |  name   |  description |  more info
   |=|==|=
 6 | Inset   | An inset element | just one element
   |-|--|-
 8 | Stories | Another element  | another element
   | |  | with 2 lines
   |-|--|-
 9 | Other   | Another element  | another element
   | |  | with 2 lines
   |-|--|-
 5 | Illust. | An illustration  | line breaks are not
   | | andn I think you | possible in a table
   | | know what I mena.|

This is totally unambiguous and easy to scan for the reader. The  
problem is

that, even though it's easy to read, it's also more tedious to write.



One minor change.  You don't need pipes in the horizontal separator  
lines.  E.g:

   id |  name   |  description |  more info
   


My idea was to follow the way it currently works for tables in PHP  
Markdown Extra, which was made this way to make the difference clearer  
from the header syntax and to allow specifying text alignment for  
columns.

http://michelf.com/projects/php-markdown/extra/#table



I suspect that if you were going to write a lot of tables, you'd write
a perl program that would take an existing table that you slopped
together, and would fix the spacing of pipes on all the lines to match
the pipe spacing on the first line.


If you're going to write a Perl program for creating Markdown tables,  
why not create tables in HTML directly? It'd be a lot simpler to write  
a converter for that, and it would avoid cluttering the syntax with  
something you need a special program to make anyway.



--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Waylan Limberg
On Wed, Feb 25, 2009 at 8:34 PM, Seumas Mac Uilleachan
seu...@idirect.ca wrote:
 David E. Wheeler wrote:

 On Feb 25, 2009, at 6:57 AM, Sherwood Botsford wrote:
 Tables are critters where formatting is tangled with content.  And
 with proportional type, a text only system requires agreement on tab
 spacing at minimum to get anything to look right. (I'm not a fan of
 monospace, so all these examples are wonky.)

 I think you might be using the wrong markup language, then. The use of
 monospace fonts is an expectation for reading Markdown. Really, it's the
 whole point.

 Wait, what? Monospace is an expectation?!? I have never used monospace in my
 e-mail programs. Isn't THAT the main expectation of Markdown? That it
 approximates e-mail writing?


Well, I wouldn't say monospace is an expectation, but Markdown does
rely heavily (perhaps more so than most) on whitespace. It just so
happens that that whitespace is easier for the human eye to read
when the text is monospace. However, yes, email is rarely written in
monospace.

Of course, on most cases, the white space is all at the beginning of
the line (code blocks, lists) and the different levels of indent are
still discernible when not in monospace. So, when the comment is made
that the examples are wonky because they are not in monospace, then
IMO, the proposed syntax fails.

We all know that Markdown is to be readable first, writable second. If
every reader of the document must read it in monospace, then that's
not readable first - it's writable first.

I'd also like to point out JB comments [1] that Markdown it supposed
to cover only a common subset of HTML. If your trying to represent
something more complex, then you need to use HTML. I would say
multiline table cells fall into that more complex category. I know
I'm never going to use any of this overly complex syntax that has been
proposed thus far. I'll just write some raw HTML for my table and be
done with it quickly.

Don't get me wrong, if I have some vary basic tables that can easily
be represented with the simplest syntax, then sure, I'll use something
link PHP Extra's. Anything more than that will get raw HTML.

[1]: http://daringfireball.net/projects/markdown/syntax#html

-- 

\X/ /-\ `/ |_ /-\ |\|
Waylan Limberg
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal (David E. Wheeler)

2009-02-25 Thread Sherwood Botsford
 If you're going to write a Perl program for creating Markdown tables, why
 not create tables in HTML directly? It'd be a lot simpler to write a
 converter for that, and it would avoid cluttering the syntax with something
 you need a special program to make anyway.

Depends on how you use the program.  I end up doing most of my actual
coding in vi. In vi I write markdown source, because it's quick, I can
sort of see how it lays out, and I don't worry about a billion html
tags.  I spend my time writing content, not matching tags.

In my other writing I use par a lot.  This is a program to reformat
ascii text.  It can do clever things like reformat email with multiple
quoted levels, to different line lengths without sprinkling 's
everywhere midline.

If you are a dedicated markdown user, a perl program that you can pipe
a table through to put it in whatever syntax your favorite version of
markdown likes, AND such a program removes a lot of the tedium of
adjusting the space so that you, the writer can live with it, you have
a win.

I don't want to have a separate source file for my table, nor do I
want to include an html table in my markdown.  I want a perl command,
or vi macro that takes bad table text (from markdown's view, and my
personal view) and turns it into good table text.  KIS

Tables are complicated.  How they are represented in simple text is
going to be a compromise between control and legibility.
The idea solution would be one that maximizes legibility in simple
cases while allowing control short of full html code where the author
needs it.




-- 
Sherwood Botsford
Sherwood's Forests
Warburg, Alberta T0C 2T0
http://www.sherwoods-forests.com
780-848-2548
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-23 Thread John Gruber

On 19 Feb 2009, at 12:53 PM, David E. Wheeler wrote:

Thanks John. Like I said, I prefer it to a colon because, in my mind  
at least, a colon goes at the end of things, not the beginning of  
things.


I lean toward colon because I see colons coming not at the beginning  
or end, but in the middle, between things. In this case, between a  
term and its definition(s).


-J.G.
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-23 Thread David E. Wheeler

On Feb 23, 2009, at 8:59 AM, John Gruber wrote:

Thanks John. Like I said, I prefer it to a colon because, in my  
mind at least, a colon goes at the end of things, not the beginning  
of things.


I lean toward colon because I see colons coming not at the beginning  
or end, but in the middle, between things. In this case, between a  
term and its definition(s).


I can see that, but:

 1. The same is true for tildes; even more true, since
there is usually a space on either side of a tilde
 2. The colon is very hard to see in some fonts; it
makes a lousy bullet, IMHO, especially when it's the
first character on a line
 3. I've been thinking about table syntax, looking at
what the OSS databases do, and PostgreSQL has a nice
use for colons to show continued records:

 id |  name   |description
+-+
  6 | Inset   | An inset element type
  8 | Related Stories | A related stories element type.
  5 | Illustration| An illustration media type
  : and I think you know what I mean.
  2 | Column  | A weekly column story type
 10 | Story   | A story document type


That seems kind of nice to me because a colon is kind of like a broken  
pipe.


But that's for a later discussion, and might not conflict with PHP  
Markdown Extra's use of a colon for DLs, anyway. As I said, we could  
support both just as we support `*`, `+`, and `-` for unordered list  
bullets.


Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-19 Thread Michel Fortin

Le 2009-02-19 à 1:52, Yuri Takhteyev a écrit :


Correct. Or one could say there is no way to get any standard blessed
as official here period. The closest you can get is to convince Michel
to add it to Markdown Extra, in which case there is a reasonable
chance that some of the other implementations will add optional
support for it. In this particular case, I find it hard to see this
proposal going very far, though. (Of course, Michel can prove me
wrong.)


It seems I've been called into this discussion. :-)

Well, that whole thread left me wondering. I'm of opinion that using a  
tilde is as good as a colon, perhaps even better visually. It has the  
advantage of looking better when you add a colon at the end of your  
term (which, I think, happen often enough):


Term:
   : Definition

Term:
   ~ Definition

The current syntax using a colon has been there... since PHP Markdown  
Extra's debuts (July 2005). There is obviously a lot of documents out  
there using it, so there's not way I'll just change it to something  
else.


As for accepting the tilde as an alternate marker, there's obviously a  
precedent of that: unordered lists which can be made of `*`, `+`, or `- 
`, so it wouldn't be counter-nature to add one for definition lists.  
On the other hand, that precedent was meant to allow other syntaxes in  
common use to work with Markdown; I'm not sure any syntax we can come  
with for definition lists is already in common use. Definition lists  
are already some sort of specialized niche syntax within Markdown and  
HTML: useful when you need one, but not something a lot of people care  
for or even know it exists.


So in the end I'm pretty much ambivalent to this proposal: I like it  
but I don't think it's worth wasting another marker character and  
dealing with possible clashes (legitimate text with a tilde in it).


That said, perhaps I'll change my mind the next time I have to write a  
definition list.



--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/



___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-19 Thread John Gruber

On 18 Feb 2009, at 1:44 PM, David E. Wheeler wrote:

What I came up with is a single character change to the PHP Markdown  
Extra syntax. I just published a detailed explanation of my thoughts  
and reasoning for this on [my blog](http://justatheory.com/computers/markup/modest-markdown-proposal.html 
).


Unlike most syntax suggestions, your suggestion to use tilde as the  
marker for definitions strikes me as genuinely Markdown-ish. I'm not  
sure it's any better than colon, though.


-J.G.
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-19 Thread David E. Wheeler

On Feb 19, 2009, at 3:48 AM, Michel Fortin wrote:


It seems I've been called into this discussion. :-)


And thanks for taking the bate. :-)

A quick comment: I started using Markdown about six months ago to  
write the documentation for pgTAP, my PostgreSQL unit-testing  
framework. Since the format for PostgreSQL documentation is a plain- 
text README, and I knew I was going to want it in HTML and perhaps  
other formats, I adopted Markdown for the documentation without a  
second thought. It felt right, it works almost exactly like I've  
always worked in email, and I've been absolutely thrilled with the  
[plain text][1] and [HTML][2] results.


[1] https://svn.kineticode.com/pgtap/trunk/README.pgtap
[2] https://svn.kineticode.com/pgtap/trunk/README.pgtap

It has just been a delight to work with, very rewarding. And I guess I  
shouldn't be surprised that the community behind it, represented by  
this list, is no different. I really appreciate you guys taking the  
time to really ponder a possible change to something you've been using  
as-is for almost 4 years when a late interloper like myself barges in  
and says, “what about this?” Such openness is all to rare in the OSS  
world, and just makes me love Markdown all the more.


So thanks for taking me and my proposal seriously. Later, we'll see if  
folks are as willing when I look at tables. ;-P


Well, that whole thread left me wondering. I'm of opinion that using  
a tilde is as good as a colon, perhaps even better visually. It has  
the advantage of looking better when you add a colon at the end of  
your term (which, I think, happen often enough):


Term:
   : Definition

Term:
   ~ Definition


Yes, much more natural looking to me, and it stands out a bit more; in  
a lot of non-programming fonts, colons are really tiny.


The current syntax using a colon has been there... since PHP  
Markdown Extra's debuts (July 2005). There is obviously a lot of  
documents out there using it, so there's not way I'll just change it  
to something else.


Yes, I was pleased to realize that that one character was the only  
thing that wasn't working for me in the PHP Markdown Extra syntax. I  
started pondering the syntax thinking that a more radical change would  
be necessary to make it appeal to me. But this is so simple and easy  
to allow for backwards compatibility that I was really happy to have  
it. Plus, it's dead easy to modify existing implementations to support  
it, which both makes it an easier sell and makes it easier for me to  
just do on my own.


As for accepting the tilde as an alternate marker, there's obviously  
a precedent of that: unordered lists which can be made of `*`, `+`,  
or `-`, so it wouldn't be counter-nature to add one for definition  
lists. On the other hand, that precedent was meant to allow other  
syntaxes in common use to work with Markdown; I'm not sure any  
syntax we can come with for definition lists is already in common  
use. Definition lists are already some sort of specialized niche  
syntax within Markdown and HTML: useful when you need one, but not  
something a lot of people care for or even know it exists.


Even with the colon, the Markdown Extra syntax is so much better than  
any other DL syntax I've seen. So I agree about the lack of precedent  
in other markup syntaxes. But I didn't know that `*`, `+`, and `-`  
were there for compatibility; as a user of Markdown, I just thought it  
was for convenience that I could use either one. In fact, I actually  
thought they were there so that I could use different bullets at  
different levels of a nested list, which would be more natural than  
using just one in plain text.


All that is just to say that I think there are two ways to look at the  
precedent of list bullets, regardless of the history, and that  
convenience and flexibility apply to the idea of the  
interchangeability of `:` and `~` in definition lists.


So in the end I'm pretty much ambivalent to this proposal: I like it  
but I don't think it's worth wasting another marker character and  
dealing with possible clashes (legitimate text with a tilde in it).


I think we determined that that was only an issue in single-line term/ 
definition combinations, which aren't implemented with `::` either,  
AFAIK. When the `~` has to come at the beginning of the line, it's no  
worse than the possible conflict of using `-` for an unordered list  
bullet.


That said, perhaps I'll change my mind the next time I have to write  
a definition list.


This came up for me because I write a lot of documentation for  
libraries I write, and many of the functions and methods support a  
parameter list of arguments. This is a very natural fit for definition  
lists, so I could potentially use them all the time, like so:


~~

### `new()` ###

$fsa = FSA::Rules-new(
\%params,
foo_state = { ... },
bar_state = { ... },
);


Re: A Modest Definition List Proposal

2009-02-19 Thread David E. Wheeler

On Feb 19, 2009, at 9:42 AM, John Gruber wrote:

What I came up with is a single character change to the PHP  
Markdown Extra syntax. I just published a detailed explanation of  
my thoughts and reasoning for this on [my blog](http://justatheory.com/computers/markup/modest-markdown-proposal.html 
).


Unlike most syntax suggestions, your suggestion to use tilde as the  
marker for definitions strikes me as genuinely Markdown-ish. I'm not  
sure it's any better than colon, though.


Thanks John. Like I said, I prefer it to a colon because, in my mind  
at least, a colon goes at the end of things, not the beginning of  
things. The colon just looks weird to me, while the tilde does not.  
I'm speaking purely from a visual communication point of view about  
the plain-text representation here, of course.


But, like I said, it's dead easy to support both in the existing  
implementations.


Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler

Howdy,

I've been thinking a lot about definition list syntax, and what I did  
and didn't like about the PHP Markdown Extra syntax (which seems to be  
a de-facto standard, discount notwithstanding, yes?). What I came up  
with is a single character change to the PHP Markdown Extra syntax. I  
just published a detailed explanation of my thoughts and reasoning for  
this on [my blog](http://justatheory.com/computers/markup/modest-markdown-proposal.html 
). If you would excuse the temerity of my late entry into what I'm  
sure has been a contentious issue, I would love feedback.


In a nutshell, I embrace the PHP Markdown Extra syntax, with one  
change: I would like to see the colon replaced with a tilde (for  
backwards compatibility, both should be supported). That means that a  
simple definition list would look like this:



Apple:
  ~ Pomaceous fruit of plants of the genus Malus in the family  
Rosaceae.

  ~ An american computer company.

Orange:
  ~ The fruit of an evergreen tree of the genus Citrus.


And a more complicated one would look like this:


Term 1:

~   This is a definition with two paragraphs. Lorem ipsum
dolor sit amet, consectetuer adipiscing elit. Aliquam
hendrerit mi posuere lectus.

Vestibulum enim wisi, viverra nec, fringilla in, laoreet
vitae, risus.

~   Second definition for term 1, also wrapped in a paragraph
because of the blank line preceding it.

Term 2:

~   This definition has a code block, a blockquote and a list.

code block.

 block quote
 on two lines.

1.  first list item
2.  second list item


See my blog entry for more detailed description of why I prefer the  
tilde to the colon for this purpose. The best things about it are that  
it makes for a more natural bullet, already has precedent in  
dictionaries, and suggest equivalency if you're familiar with  
mathematics, which makes for a nice mnemonic.


Comments? Has this ship already sailed?

Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread Waylan Limberg
On Wed, Feb 18, 2009 at 1:44 PM, David E. Wheeler da...@kineticode.com wrote:
[snip]

 In a nutshell, I embrace the PHP Markdown Extra syntax, with one change: I
 would like to see the colon replaced with a tilde (for backwards
 compatibility, both should be supported). That means that a simple
 definition list would look like this:

[snip]
 Comments? Has this ship already sailed?

You make a convincing argument. And I must admit your proposal is very
nice to look at/read/write. But if it ain't broke, don't fix it.

The current implementation was set before I came along some few years
ago, and I have never searched through the archives to see how it came
about or why. But, people have been using it for this long without
issue and there are already numerous existing documents out there that
use it, so I see no reason to change it. In fact that last point
(numerous existing documents) seems to be the de-facto response to any
suggested changes on this list - and understandably so. No doubt
that's why you suggested leaving the existing syntax in place, but
then we would have two ways to define deflists. What happens when an
author mixes the two? Ack! Yeah, this ship has sailed IMO.

-- 

\X/ /-\ `/ |_ /-\ |\|
Waylan Limberg
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler


On Feb 18, 2009, at 12:19 PM, Waylan Limberg wrote:


Comments? Has this ship already sailed?


You make a convincing argument. And I must admit your proposal is very
nice to look at/read/write.


Thank you.


But if it ain't broke, don't fix it.

The current implementation was set before I came along some few years
ago, and I have never searched through the archives to see how it came
about or why. But, people have been using it for this long without
issue and there are already numerous existing documents out there that
use it, so I see no reason to change it. In fact that last point
(numerous existing documents) seems to be the de-facto response to any
suggested changes on this list - and understandably so. No doubt
that's why you suggested leaving the existing syntax in place, but
then we would have two ways to define deflists. What happens when an
author mixes the two? Ack! Yeah, this ship has sailed IMO.


I don't think it's a problem to have two different kinds of bullets  
for definition list items; after all, you can already use +, -, or *  
for unordered lists. And you can mix them without penalty, so the same  
would be true here.


FWIW, the change to MultiMarkdown.pl to make this work would just be  
this:


--- bin/MultiMarkdown.pl.orig   2008-01-18 15:08:43.0 -0800
+++ bin/MultiMarkdown.pl2009-02-18 12:28:47.0 -0800
@@ -2559,7 +2559,7 @@

my $definition = qr{
\n?[ ]{0,$less_than_tab}
-   \:[ \t]+(.*?)\n
+   [:~][ \t]+(.*?)\n
 		((?=\n*[ ]{0,$less_than_tab}\S)|\n\n|\Z)	# Lookahead for non-space  
at line-start,


# two returns, or end of doc
}sx;

Plus documentation, of course. Doesn't get much simpler than that.

Thanks for your reply.

Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler

On Feb 18, 2009, at 10:44 AM, David E. Wheeler wrote:

See my blog entry for more detailed description of why I prefer the  
tilde to the colon for this purpose. The best things about it are  
that it makes for a more natural bullet, already has precedent in  
dictionaries, and suggest equivalency if you're familiar with  
mathematics, which makes for a nice mnemonic.


Comments? Has this ship already sailed?


Aristotle was kind enough to point me to some older posts on the  
subject of definition lists, where I saw this message from Mssr. Gruber:


On Jul 27, 2005, at 7:33 AM, John Gruber wrote:


And since the ones with multiple terms and/or definitions are the
exception, not the norm, I think in the common cases, you'd wind up
with something that looks like this:

  Term 1:: Definition a blah blah blah blah blah
  Term 2:: Definition b foo bar baz
  Term 3:: Definition c even more blah blah blah


Was this ever implemented? I haven't noticed it in the documentation  
for PHP Markdown Extra or MultiMarkdown.


I think that, using the tilde as I've suggested in this thread, this  
can be even better:


  Term 1 ~ Definition a blah blah blah blah blah
  Term 2 ~ Definition b foo bar baz
  Term 3 ~ Definition c even more blah blah blah

Basically, it's the same rule, only you don't have to have a newline  
before the definition starts. Also, the single ~ is a little less  
“unnatural” looking than the double : (and I say that as a Perl  
hacker, so I'm used to “::”!).


Best,

David


___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler

On Feb 18, 2009, at 2:50 PM, Tom Humiston wrote:

A problem I see with your suggestion about not including newlines is  
that interpreting the form xxx ~ yyy as a DT/DD pair precludes the  
use of  ~  (space-tilde-space) in some other ways it's likely to  
be used ~ for instance, as an alternative to the plain hyphen.


Yeah. I think ~~ would work okay, too, and gets around that problem.

 Term 1 ~~ Definition a blah blah blah blah blah
 Term 2 ~~ Definition b foo bar baz
 Term 3 ~~ Definition c even more blah blah blah

Although I think that it's a bit of a red herring.

I also suppose that's why the suggestion in 2005 was for double  
colons. Colon-newline seems pretty clear, if anything is. (Mind you,  
I am NOT involved in writing implementations whatsoever; I'm just  
watching the mailing list.)


I didn't see anyone suggest tilde for definitions in 2005, though I  
did notice that Aristotle tried it out for terms. I agree with him  
that tildes didn't work so well there. :-)


Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread Joseph Lorenzo Hall
Yeah, Markdown users in the hard sciences would trigger that
constantly. best, Joe

On 2/18/09, Yuri Takhteyev qarama...@gmail.com wrote:
 Right. I actually think that using ~ as a range operator (essentially) is
 fairly rare outside of electronic circles, at least in US English.

 In other words, by at least 5% of the world population. :)

 But even just looking at the US English, ~ is often used for
 approximation, for the home directory, for equivalence, etc. So,
 things like The cost is ~ $3, cd to ~ before doing this, The N
 needs a ~ over it, If we assume x ~ y, then will all suddenly
 become definition lists?

 Term 1 o Definition a blah blah blah blah blah
 Term 2 o Definition b foo bar baz
 Term 3 o Definition c even more blah blah blah

 É. O unico problema é o o do Portugues, que é um artigo nessa linguagem.

 (Our friend o is a _word_ in some languages.)

 - yuri

 --
 http://spu.tnik.org/
 ___
 Markdown-Discuss mailing list
 Markdown-Discuss@six.pairlist.net
 http://six.pairlist.net/mailman/listinfo/markdown-discuss



-- 
Joseph Lorenzo Hall
ACCURATE Postdoctoral Research Associate
UC Berkeley School of Information
Princeton Center for Information Technology Policy
http://josephhall.org/
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler

On Feb 18, 2009, at 4:37 PM, Yuri Takhteyev wrote:

Right. I actually think that using ~ as a range operator  
(essentially) is

fairly rare outside of electronic circles, at least in US English.


In other words, by at least 5% of the world population. :)

But even just looking at the US English, ~ is often used for
approximation, for the home directory, for equivalence, etc. So,
things like The cost is ~ $3, cd to ~ before doing this, The N
needs a ~ over it, If we assume x ~ y, then will all suddenly
become definition lists?


Yeah, okay. Forget the one-line format, then. No one has implemented  
it so far anyway, as near as I can tell. :-)



Term 1 o Definition a blah blah blah blah blah
Term 2 o Definition b foo bar baz
Term 3 o Definition c even more blah blah blah


É. O unico problema é o o do Portugues, que é um artigo nessa  
linguagem.


(Our friend o is a _word_ in some languages.)


D'oh! Oh yeah! Sorry for the cultural imperialism. :-)

Best,

David

___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread Aristotle Pagaltzis
* David E. Wheeler da...@kineticode.com [2009-02-19 02:00]:
 Yeah, okay. […] D’oh! Oh yeah!

Told you it is a thorny problem. :-(  It *looks* simple, yeah…

Regards,
-- 
Aristotle Pagaltzis // http://plasmasturm.org/
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss


Re: A Modest Definition List Proposal

2009-02-18 Thread David E. Wheeler

On Feb 18, 2009, at 6:59 PM, Aristotle Pagaltzis wrote:


Yeah, okay. […] D’oh! Oh yeah!


Told you it is a thorny problem. :-(  It *looks* simple, yeah…


I still think that ~ works well (at least as well as :) in a non- 
single-line usage, which is all that's currently implemented with :,  
anyway.


That said, there is no way to get any standard blessed as official  
here aside from Gruber adding it to Markdown.pl, right? Except for  
folks adding their own preferred methods to the existing  
implementations…


Best,

David
___
Markdown-Discuss mailing list
Markdown-Discuss@six.pairlist.net
http://six.pairlist.net/mailman/listinfo/markdown-discuss