From: Guenter M. <mi...@us...> - 2010-09-25 22:02:00
|
On 2010-09-24, David Goodger wrote: > On Fri, Sep 24, 2010 at 19:16, Guenter Milde <mi...@us...> wrote: >> currently, if a language is not supported by Docutils with a matching >> module, conversion fails with ImportError. >> I propose to change this to a warning, because in cases where no >> auto-generated text is used the output would still be valid (with the >> language tag given to the HTML output or used for hypenation etc. in >> LaTeX) > No objection. > What would the default behavior be, if there is auto-generated text? English? I think English is a reasonable default. >> Also, I propose a :lang: role: >> * in LaTeX and HTML it is possible to mark regions of the document as >> belonging to a different language. >> In HTML, this could be used to select a different font or a different >> voice in a screenreader. >> In LaTeX, the language setting also affects the hyphenation algorithm. > Smells like a solution looking for a problem. If this is a real issue, > please provide examples. HTML has a "lang" attribute Language information specified via the lang attribute may be used by a user agent to control rendering in a variety of ways. Some situations where author-supplied language information may be helpful include: * Assisting search engines * Assisting speech synthesizers * Helping a user agent select glyph variants for high quality typography * Helping a user agent choose a set of quotation marks * Helping a user agent make decisions about hyphenation, ligatures, and spacing * Assisting spell checkers and grammar checkers -- http://www.w3.org/TR/html401/struct/dirlang.html Practical examples: Ensure that the German name is hyphenated according to German grammar rules (if word-wrap is active) and pronounced correctly by a screen-reader: To go to the main station you need to change tram at <span lang='de'>Hohenzollernplatz</span>. Ensure that LaTeX uses the right font encoding: We wanted to go to the {\selectlanguage{russian} красная плошадь}. Both should be possible without ressorting to 'raw'. > Alan's multiple-language concern is also valid. If I understand it right, it's one of the reasons for my proposal: I want to be able to mark a word, a quote or a section as beeing in a different language than the rest of the document. I agree that a role might not be the best/only approach to this problem. a) roles do not have arguments b) it would not solve marking e.g. a quote. Alternatives: a) class arguments (lang-<language tag>) e.g.: ``.. class:: lang-de`` would set lang="de" for the following object. b) lang directive e.g.: ``.. lang:: de`` would set lang="de" for the following object. c) :lang: attributes to all relevant rst objects .. line-block:: :lang: de ein deutsches Gedicht > How would your proposal be different/better than declaring roles in > the document? E.g. > .. role:: spanish > or > .. role:: lang-spanish > or > .. role:: lang-es This would set a class attribute on a span that still requires a style setting to be understood by the user agent. How about a base-role "lang" that can be used to create custom language setting roles:: .. role:: es(lang) Günter |