Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Discussion] Convention sur les apostrophes/guillemets/quotes en Unicode et en LaTeX #876

Open
Jimvy opened this issue Feb 14, 2021 · 0 comments
Labels

Comments

@Jimvy
Copy link
Collaborator

Jimvy commented Feb 14, 2021

[J'ai créé l'issue il y a trois jours mais visiblement j'ai oublié de cliquer sur "Submit" avant de fermer l'onglet...]

Petit annuaire des symboles dont je vais parler :

  • ' U+0027 "Apostrophe" : le caractère ASCII, une apostrophe verticale, qui sert communément d'apostrophe, de symbole "prime", et de symbole pour fermer les single quotation mark
  • U+2018 "Left single quotation mark" : le single quotation mark de début.
  • U+2019 "Right single quotation mark" : l'apostrophe typographique, générée par Word/LaTeX, ainsi que le single quotation mark de fin.
  • ` U+0060 "Grave accent" ou backtick : le caractère ASCII qui sert à débuter un single quotation mark
  • U+2032 "Prime" : utilisé pour le symbole "prime" en math.
  • ʼ U+02BC "Modifier letter apostrophe" : utilisé dans certains langages pour mettre une sorte d'apostrophe sur une lettre. Il y a d'autres "modifier letter" dans Unicode d'ailleurs.
  • " U+0022 "Quotation mark" : le caractère ASCII des quotes normales.
  • « U+00AB "Left-pointing double angle quotation mark" ou guillemet ouvrant français.
  • » U+00BB "Right-pointing double angle quotation mark" ou guillemet fermant français.
  • U+201C "Left double quotation mark" : le quotation mark ouvrant ou guillemet ouvrant anglais
  • U+201D "Right double quotation mark" : le quotation mark fermant ou guillemet fermant anglais
  • Et qu'on ne me parle pas des versions CJK, arméniennes, grecques, turques, géorgiennes, cyrilliques ou hongroises des quotes.

(Curiosité : les guillemets français ont des codepoints plus petits que les quotes/apostrophes typographiques anglais (3 bytes pour encoder). Mais si on prend le non-breaking space en compte, ça fait 4 bytes (5 bytes si narrow non-breaking space).)

En LaTeX, on peut taper U+0027 pour entrer une apostrophe, et LaTeX se chargera de le transformer en U+2019 quand il s'agit d'une apostrophe dans le texte, ou U+2032 quand il s'agit du signe "prime" en math mode (ce dernier je suis pas sûr).
On peut taper `truc' avec U+0060 et U+0027 pour entrer un texte entre guillemets anglais simples, et LaTeX se chargera de les transformer en U+2018 et U+2019.
On peut taper ``truc'' avec 2x U+0060 et 2x U+0027 pour entrer un texte entre guillemets anglais doubles, et LaTeX se chargera de les transformer en U+201C et U+201D.
U+0022 n'est pas conseillé pour faire des guillemets doubles anglais en LaTeX, pour des raisons mystérieuses.
Enfin, il est possible de taper \og truc \fg{} et babel french se chargera de le transformer en U+00AB et U+00BB avec espaces insécables U+00A0 (ou peut-être la version narrow du NBSP, U+202F, je suis pas sûr).

Mais, il est aussi possible de rentrer tous ces caractères directement dans le fichier, et ils seront output as-is par LaTeX.
C'est notamment ce qui arrive quand on copy-paste du texte depuis Word. Il me semble que macOS le fait aussi (j'ai du mal à croire que les gens prennent le temps de taper ces caractères eux-mêmes tout en ne sachant pas que LaTeX sait faire ça automatiquement).

Ma question est : est-ce qu'on recommande aux gens/contributeurs d'utiliser les versions "simples" (ASCII traduit par LaTeX) de ces caractères ? Ou est-ce qu'on accepte l'utilisation de ces caractères Unicode directement ?

Le principal défaut que je vois avec l'utilisation directe de ces caractères Unicode c'est l'espacement qui peut ne pas être respecté (U+00AB et U+00BB n'en ajoutent pas, donc il faut mettre les espaces insécables soi-même) ; et la taille du fichier (U+2019 requiert 3 bytes en UTF-8 au lieu de 1 byte pour U+0027 ; mais \og + \fg{} requièrent 9 bytes, au lieu de 8 bytes pour U+00AB + U+00A0 + U+00A0 + U+00BB).
Et une erreur que j'ai constaté, c'est l'utilisation de U+2019 pour représenter le caractère "prime" en math mode, qui n'est pas correct.

(BTW, U+2032 n'est pas supporté par PDFLaTeX (crash), et XeLaTeX a l'air de l'ignorer...)

Aussi, je me demande si LaTeX/babel french n'a pas un mode intelligent pour tous ces caractères.

Qu'en pensez-vous ?

(Oui, c'est un peu du nitpicking.)

@Jimvy Jimvy added the Question label Feb 14, 2021
Jimvy added a commit to Jimvy/Syntheses that referenced this issue Feb 14, 2021
- U+2019 changed to U+0027 (Gp2mv3#876), in math mode and in text mode
- more math mode
- xurl used instead of url to remove overfull hbox
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant