W3C home > Mailing lists > Public > www-style@w3.org > June 2011

Re: [css3-content] quotes issues inc. i18n & French quotes

From: Oli Studholme <w3-style@boblet.net>
Date: Tue, 28 Jun 2011 02:07:43 +0900
Message-ID: <BANLkTi=MArv_j4Z3qeyEP5R-_Mi5vt5AVA@mail.gmail.com>
To: www-style <www-style@w3.org>
Hi all,

On Wed, Jun 22, 2011 at 1:12 AM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
>
> I believe the point here is that the quote marks are based off the
> language of the surrounding content, not the language of the quote
> itself.  If I'm writing a paper in French, it doesn't matter whether
> the quote I'm inserting is French, English, or Arabic - they should
> all use the French style of quote marks.

Yeah the simplified selectors I suggested weren’t correct given this.
However, changing the star selector examples in the spec:
  :lang(fr) > * {}
to:
  :lang(fr) > q {}
would still be a good idea, as it seems the star selector is unnecessary.
http://jsfiddle.net/boblet/FwMaS/


Also there’s still possibly an issue with quoting foreign languages.
If the text you’re quoting also contains quotes, then shouldn’t there
also be in the surrounding language, i.e. that of the quote? Using the
containing language’s quote punctuation with a similar language (e.g.
English and German) is no problem. However it would be really bizarre
for e.g. Japanese text to use English punctuation for a quote (not
double-byte):
  Then she said “猫は‘にゃん’と鳴くよ”.  ← strange
  Then she said “猫は「にゃん」と鳴くよ”. ← expected

However I can’t even do that, as while quote embedding level should be
language-specific, this isn’t mentioned in the spec or done by
browsers. This means I get the second level punctuation instead:
  Then she said “猫は『にゃん』と鳴くよ”. ← browsers use the 2nd level Japanese punctuation
using this code:
  q {quotes: '“' '”' '‘' '’';}
  :lang(ja) > q {quotes: '「' '」' '『' '』';}
  q:before {content: open-quote;}
  q:after {content: close-quote;}

I guess the workaround is for the quoted text to use punctuation
rather than <q>, which kind of defeats the purpose, or to set the lang
attribute on <html> or <section>, not <q>:
  body:lang(ja) > q {quotes: '「' '」' '『' '』';}

This is an edge case for normal monolingual use, but perhaps not for
e.g. language textbooks, translators etc.


Another unspecified edge case is in languages with two levels of
quotation, say “” and ‘’ in English, these should repeat on further
nesting:
  “A ‘b “c” d’ e”
However this isn’t mentioned in the spec, and browsers have
implemented to just use the last quotes property pair if the quotes
nesting level is greater than what’s defined. E.g. for q {quotes: '“'
'”' '‘' '’';}
  “A ‘b ‘c’ d’ e”
Again for most people this isn’t an issue, and it’s solved by
repeating quote pairs in the quotes property. However it would be nice
to have correct default behaviour.


Finally, I’m not French but I’m pretty sure the French punctuation
examples aren’t correct, or are at least non-standard, in using ‹›.
Common use is:
  :lang(fr) > q {quotes: '« ' ' »' '“' '”';} /* "\00AB\202F"
"\202F\203A" "\201C" "\201D" */
Traditional use is:
  :lang(fr) > q {quotes: '« ' ' »';}
although traditional use also involves collapsing nested quotations
whose » are adjacent to be collapsed into one guillemet, which doesn’t
seem possible with the current spec. Maybe someone with French
typographic knowledge can weigh in?

Ref:
http://en.wikipedia.org/wiki/Non-English_usage_of_quotation_marks
http://fr.wikipedia.org/wiki/Guillemet
Chicago Manual of Style, 15th ed. p409 (10.33)


Thanks for your time

peace - oli
Received on Monday, 27 June 2011 17:08:50 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:41 GMT