Supprimer un espace

Tout ce qui concerne le langage LaTeX et ses variantes. Ce langage est supporté sur le forum via les balises tex.

Modérateur : gdm_tex

Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
zariski63
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 362
Inscription : jeudi 14 octobre 2010, 09:20

[Résolu] Supprimer un espace

Message par zariski63 »

Bonsoir !
Bon vous allez dire que je suis pénible mais j'ai un truc qui m'obsède depuis un moment :
Comment supprimer l'espace avant le point virgule.
Précision : je compile par LuaLatex et la solution \string ne fonctionne pas …
MERCI.

Voici mon ecm :

Code : Tout sélectionner

\documentclass[12pt]{article}
\usepackage{fontspec}

\usepackage{fourier}
%\usepackage{lmodern}
\usepackage{amsmath}

\usepackage[french]{babel}
\usepackage{enumitem} 
\frenchsetup{StandardLists=true} 

\begin{document}

(1;2)

(1\string;2)
 
$(1;2)$

\end{document}

Dernière modification par guiguiche le samedi 09 mai 2020, 21:16, modifié 1 fois.

gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2563
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Re: supprime une espace

Message par gigiair »

C'est une règle de typographie élémentaire en français : pour les ponctuations en deux parties (?;!), un espace avant un espace après, pour celles en une seule partie(,.), pas d'espace avant, un espace après.
Si tu ne veux pas que cette règle s'applique, il ne faut pas demander que les règles de la typographie française s'appliquent.
Par exemple \usepackage[french,english]{babel} mais là, c'est un peu bourrin. Voir

Code : Tout sélectionner

texdoc frenchb
Page 7 : AutoSpacePunctuation
JJR.
LaTeXien migrateur.

zariski63
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 362
Inscription : jeudi 14 octobre 2010, 09:20

Re: Supprimer un espace

Message par zariski63 »

ça j'avais bien compris mais sous pdflatex c'est possible avec un \string tout en conservant le style french alors que sous LuaLatex je n'ai rien trouvé ...

gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2563
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Re: Supprimer un espace

Message par gigiair »

Visiblement tu n'as pas lu la doc que je t'ai conseillé de lire...
Tu peux désactiver localement l'action de l'option french

Code : Tout sélectionner

\documentclass[12pt]{article}
%\usepackage{fontspec}

\usepackage{fourier}
%\usepackage{lmodern}
\usepackage{amsmath}

\usepackage[french]{babel}
\usepackage{enumitem} 
\frenchsetup{StandardLists=true} 

\begin{document}

(1;2)

{\NoAutoSpaceBeforeFDP
(1;2)
 }

 $(1 ;2)$

\end{document}
Mais la meilleure solution AMHA est d'écrire tes couples en mode mathématique, dans lequel le caractère ";" n'est pas actif. Je ne comprend pas pourquoi tu ne fais pas ainsi puisque ton ECM le propose.

Une autre solution encore plus crade que ton \string est d'écrire "{\char59}" à la place de ";", mais ça ne marche pas non plus avec lualatex.
JJR.
LaTeXien migrateur.

zariski63
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 362
Inscription : jeudi 14 octobre 2010, 09:20

Re: Supprimer un espace

Message par zariski63 »

:lol: si si je l'ai lue (enfin parcourue).

Encore une fois j'essaie d'obtenir par le forum et vos précieux conseils des solutions meilleures que celles que je glane à droite à gauche.
J'avais essayé de la manière suivante mais que je trouvais un peu lourde (faire une commande je pense..) : (1\NoAutoSpacing ;2).

MB
Administrateur
Administrateur
Messages : 7137
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Supprimer un espace

Message par MB »

Bonjour, je crois qu'il s'agit bien de la commande à utiliser dans cette situation.
Sinon, pour désactiver dans tout le document, on peut utiliser l'option \frenchsetup{AutoSpacePunctuation=false} (mais ça n'est sans doute pas souhaitable).
MB (Pas d'aide en Message Privé)
Merci d'utiliser MathJax (voir ici) et d'éviter le style SMS pour la lisibilité des messages.

gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2563
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Re: Supprimer un espace

Message par gigiair »

zariski63 a écrit :
dimanche 10 mai 2020, 10:26
:lol: si si je l'ai lue (enfin parcourue).
Pour cette fois ça passera, mais avec la vague d'autoritarisme actuelle, ça ne durera peut-être pas...
zariski63 a écrit :
dimanche 10 mai 2020, 10:26
Encore une fois j'essaie d'obtenir par le forum et vos précieux conseils des solutions meilleures que celles que je glane à droite à gauche.
J'avais essayé de la manière suivante mais que je trouvais un peu lourde (faire une commande je pense..) : (1\NoAutoSpacing ;2).
Le problème est que la portée de \NoAutoSpacing est pour tout le reste du document. Pour que la portée soit seulement locale, il faut la placer dans un bloc. Mais pourquoi ne pas utiliser le mode mathématique ?
JJR.
LaTeXien migrateur.

zariski63
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 362
Inscription : jeudi 14 octobre 2010, 09:20

Re: Supprimer un espace

Message par zariski63 »

J'ai oublié les parenthèses : (1{\NoAutoSpacing ;}2)

Pas de mode math car je perds le bénéfice de la police utilisée...

evariste_G
Utilisateur chevronné
Utilisateur chevronné
Messages : 1448
Inscription : vendredi 19 décembre 2008, 19:13
Localisation : Bordeaux

Re: Supprimer un espace

Message par evariste_G »

zariski63 a écrit :
dimanche 10 mai 2020, 12:16
J'ai oublié les parenthèses : (1{\NoAutoSpacing ;}2)

Pas de mode math car je perds le bénéfice de la police utilisée...
Nul besoin d'adopter une syntaxe aussi embêtante à mon avis :

Code : Tout sélectionner

{\NoAutoSpacing (1;2)}
est plus facile à écrire non ? (pour un résultat identique)
Mathématiques, LaTeX et Python : http://www.mathweb.fr

anonyme74170
Utilisateur confirmé
Utilisateur confirmé
Messages : 79
Inscription : jeudi 21 avril 2016, 11:34

Re: Supprimer un espace

Message par anonyme74170 »

Bonjour,

je pense que la commande \shorthandoff{:} supprime les espaces avant les : (ou {;} pour les ;... Il faut mettre \shorthandon{:} pour revenir à la situation précédente.

Bonne soirée.

MB
Administrateur
Administrateur
Messages : 7137
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Supprimer un espace

Message par MB »

Il me semble que ces commandes ne sont pas efficientes avec lualatex.
MB (Pas d'aide en Message Privé)
Merci d'utiliser MathJax (voir ici) et d'éviter le style SMS pour la lisibilité des messages.