bragefuglseth/keypunch

[Suggestion]: For French, capitalize on the reworked input system in the advanced training mode

Closed this issue · 4 comments

In French, in good typography, the symbols ;:?! are preceded by a narrow non-breaking space. Currently, in the advanced training mode they are preceded by a space. I suggest to precede them with a narrow non-breaking space, this will be useful to some and it won’t bother anyone, since with the reworked input system it’s possible to type a space where there is a narrow non-breaking space.

I also suggest replacing the quotation mark " with the combinations «+NNBSP and NNBSP+».

Thanks for the report! The lack of non-breaking spaces in the French punctuation is simply an oversight on my part; I should have fixed that alongside adding the new input system. I'll go ahead and fix it.

Switching from typewriter quotation to guillemets requires a little more consideration, though. Almost no languages, not even English, have typewriter quotation as "typographically correct" punctuation. The reason Keypunch uses it for most languages, is that the key people actually use for quotation marks inputs that by default. Correcting it to whatever the relevant language uses, is done by the word processor afterwards. Some countries apparently have a strong culture of explicitly typing out the "correct" ones (see #41), but for most languages I'd like to avoid people stopping up and wondering "wait, how do I actually type those? I'm only used to the typewriter ones!" when the typewriter quotation key is what they're actually likely to want to use.

If French people in particular actually use the explicit guillemet keys, it's easy to change it. I’ll always listen to native speakers when making these decisions instead of making assumptions myself. I'd just like for the change to be fully thought through 🙂

The default keyboard layout in France is the AZERTY layout, which paradoxically does not include all the characters of the French language. For example, it allows you to type ç é è à ù but not Ç É È À Ù (but conversely it’s possible to type Ê Ÿ!). There are also the œ æ Œ Æ which I already talked about in #22, or the French quotation marks, which is the case that interests us here.

A large majority of French people use AZERTY. In a word processor they type " which is automatically replaced by «+(N)NBSP or (N)NBSP+», and they’re happy with " elsewhere. A small minority uses an alternative layout (mainly Ergo-L and Bépo) giving access to all French characters, which allows them to use French quotation marks in all circumstances.

You may be right in thinking that displaying French quotation marks would disturb this majority, but on the other hand the minority (of which I am one) would like to be able to practice exploiting the full potential of their (new) keyboard layout.

To be honest, I don't really see how to please everyone, but I'll think about it.

I'll just go ahead apply all the suggestions; I assume I'll be made aware of it if some of them are undesirable. Thanks again for your input!

I was hesitant to open a new bug report, I would happily do so if asked. I forgot something, and I apologize.

It happens in the advanced training mode that words begin with a capital letter. However, as I wrote above, the Azerty keyboard is so poorly designed that it’s possible to type é, ê or Ê, but not É. The characters that cannot be typed are: Ç É È À Ù (there are also Œ and Æ, but they’re already managed by the reworked input system).

Azerty keyboard users work around the problem in two ways:

  • In a word processor they type the letter in lowercase, which will automatically be replaced by an uppercase as soon as the space bar is pressed (only and obviously if it’s the first word after a period).
  • Elsewhere they type the character in capitals but without the diacritic (for examples C instead of Ç, E instead of É) and use the spelling correction suggestions.

I had forgotten about this scenario because I don't have the problem since I don't type in Azerty. I propose for the character É to authorize the aliases é and E, for the character Ç the aliases ç and C, etc.