[latexrefman-commits] [SCM] latexrefman updated: r859 - trunk
vincentb1 at gnu.org.ua
vincentb1 at gnu.org.ua
Fri Dec 18 16:16:08 CET 2020
Author: vincentb1
Date: 2020-12-18 17:16:08 +0200 (Fri, 18 Dec 2020)
New Revision: 859
Modified:
trunk/ChangeLog
trunk/README-fr
trunk/latex2e-fr.texi
trunk/latex2e.texi
Log:
[fr] Jobname new node, [en] align structure.
* latex2e-fr.texi (Command line input): More examples, move jobname
stuff to a node of its own.
(Jobname): New node, material taken from
"Command line input" with improvements & additions.
* latex2e.texi: (Command line input, Jobname): Align document
structure on the French, and put markers for translation needed.
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2020-12-15 19:09:56 UTC (rev 858)
+++ trunk/ChangeLog 2020-12-18 15:16:08 UTC (rev 859)
@@ -1,3 +1,13 @@
+2020-12-18 Vincent Bela\"iche <vincentb1 at users.sourceforge.net>
+
+ * latex2e-fr.texi (Command line input): More examples, move jobname
+ stuff to a node of its own.
+ (Jobname): New node, material taken from
+ "Command line input" with improvements & additions.
+
+ * latex2e.texi: (Command line input, Jobname): Align document
+ structure on the French, and put markers for translation needed.
+
2020-12-15 Karl Berry <karl at freefriends.org>
* latex2e.tex (Text symbols): mention that textcomp is
Modified: trunk/README-fr
===================================================================
--- trunk/README-fr 2020-12-15 19:09:56 UTC (rev 858)
+++ trunk/README-fr 2020-12-18 15:16:08 UTC (rev 859)
@@ -183,6 +183,23 @@
utilisateurs novices de LaTeX, quitte provoquer un « moving argument »
(une dispute émouvante) parmi les TeXniciens confirmés.
+Traduction de « jobname »
+--------------------------
+
+J'ai traduit par « nom d'ouvrage ». Je préfère traduire « job » par
+« ouvrage » plutôt que par « tâche » tout simplement pour que si je
+tombe sur un passage en anglais où il y ait à la fois « job » et
+« task » avec une nuance de sens, je puisse traduire « task » par
+« tâche » pour garder la distinction.
+
+De plus, il me semble aussi que le terme « ouvrage » correspond mieux
+à « job », au sens où il y a dans « job » cette banalité des choses
+répétitives, alors que « task » a la connatation qu'il y a un enjeu et
+un engagement à obtenir un résultat. Ne dit-on pas en français
+« tâchez de faire ceci », ou en anglais « task force » pour « corps
+expéditionnaire » dans le domaine militaire ou « commission », dans le
+domaine civil.
+
# Local Variables:
# coding: utf-8
# ispell-dictionary: "francais"
Modified: trunk/latex2e-fr.texi
===================================================================
--- trunk/latex2e-fr.texi 2020-12-15 19:09:56 UTC (rev 858)
+++ trunk/latex2e-fr.texi 2020-12-18 15:16:08 UTC (rev 859)
@@ -7971,7 +7971,7 @@
construction @code{\newcommand\macommande@{@var{variante-non-étoilée}@}}
suivie de
@code{\WithSuffix\newcommand\macommande*@{@var{variante-étoilée}@}}. Et
- at LaTeX{}3 a le parquetage @file{xparse} qui permet ce code.
+ at LaTeX{}3 a le paquetage @file{xparse} qui permet ce code.
@example
\NewDocumentCommand\toto@{s@}@{\IfBooleanTF#1
@@ -15335,6 +15335,7 @@
@menu
* Command line options:: Options usuelles de ligne de commande.
* Command line input:: Spécifier du code LaTeX sur la ligne de commande.
+* Nom d'ouvrage: Jobname. Comment @TeX{} définit le nom de l'ouvrage courant.
* Recovering from errors:: Quand quelque chose se passe mal.
@end menu
@@ -15398,20 +15399,11 @@
@cindex nom de fichier de la tâche courante
@findex --jobname @r{ligne de commande, option}
@item -jobname=@var{chaîne}
-Règle la valeur du @dfn{nom de tâche} de @TeX{} à la chaîne de
+Règle la valeur du @dfn{nom d'ouvrage} de @TeX{} à la chaîne de
caractères @var{chaîne}. Le fichier journal et le fichier de sortie
-s'appeleront @file{@var{chaîne}.log} et @file{@var{chaîne}.pdf}.
+s'appeleront @file{@var{chaîne}.log} et
+ at file{@var{chaîne}.pdf}. @pxref{Jobname}.
-Quand vous exécutez @code{@command{pdflatex} @var{options}
- at var{argument}}, si @var{argument} ne commence pas par une contr'oblique
-alors @TeX{} considère que c'est le nom d'un fichier à lire en
-entrée. Autrement il attend la première instruction @code{\input} et le
-nom du fichier en entrée devient le nom de tâche
-(@code{\jobname}). Celui-ci est utilisé pour nommer le fichier journal
-et le fichier de sortie. L'option @code{jobname} l'emporte et spécifie
-directement le nom. @xref{Command line input}, pour un examples
-d'usage.
-
@anchor{output directory}
@cindex répertoire de sortie pour tous les fichiers externes
@cindex sortie, pour tous les fichiers externes, répertoire de
@@ -15523,22 +15515,158 @@
sortie s'appeleraient @file{principal.pdf} et le second écraseraient le
premier.
-Dans ce dernier exemple on charge le paquetage @file{graphicx} avec l'option
- at code{draft}
+Dans cet exemple on passe l'option @code{draft} au paquetage
+ at file{graphicx}Â :
- at c credit Herbert Voss: https://tex.stackexchange.com/a/17236/121234
@example
-pdflatex -jobname=aa "\RequirePackage[draft]@{graphicx@}\input@{aa.tex@}"
+pdflatex "\PassOptionsToPackage@{draft@}@{graphicx@}\input@{aa.tex@}"
@end example
@noindent
de sorte que les fichiers graphiques ne sont lus que pour l'information
-de dimension de boîte englobante, mais non incorporés dans le PDF.
-(L'option @code{jobname} est la parce que sinon autrement le fichier de
-sortie s'appelerait @file{graphicx.pdf}, comme @code{\RequirePackage}
-fait lui-même un @code{\input}).
+de dimension de boîte englobante, mais remplacés dans le PDF par une
+boîte de même taille ne contenant que le nom de fichier, ce qui accélère
+le temps de compilation, et économise l'encre d'imprimante.
+Un autre exemple classique est de cribler certains chapitres à la
+compilation en les passant à @code{\includeonly} dans la ligne de
+commande. Ainsi, supposons qu'on a un fichier racine @file{livre.tex}
+ainsi formé :
+ at example
+\documentclass@{book@}
+\begin@{document@}
+\frontmatter
+\include@{pref@}
+\mainmatter
+\include@{chap1@}
+\include@{chap2@}
+\appendix
+\include@{append@}
+\backmatter
+\include@{bib@}
+\end@{document@}
+ at end example
+
+En compilant @file{livre.tex} avec la ligne de commande suivante :
+
+ at example
+pdflatex '\includeonly@{chap1@}\input@{livre@}
+ at end example
+
+ at noindent
+seul le chapitre contenu dans @file{chap1.tex} sera produit en
+sortie. @xref{Splitting the input}.
+
+Dans ce dernier exemple, on force la date au 14 juillet 1789Â :
+
+ at example
+pdflatex '\day=14 \month=7 \year=1789 \input revolution'
+ at end example
+
+Ainsi, si le fichier @file{revolution.tex} contient ceci :
+
+ at example
+\documentclass[french]@{minimal@}
+\usepackage@{babel@}
+\begin@{document@}
+\today\ c'est la révolution !
+\end@{document@}
+ at end example
+
+ at noindent
+alors vous aurez en sortie un truc du genre :
+
+ at example
+14 juillet 1789 câest la révolution !
+ at end example
+
+ at node Jobname
+ at section Nom d'ouvrage de @TeX{}
+
+Quand vous exécutez @code{@command{pdflatex} @var{options}
+ at var{argument}}, si @var{argument} ne commence pas par une contr'oblique
+alors @TeX{} considère que c'est le nom du fichier racine à lire en
+entrée. Le nom du fichier racine, sans l'extension @file{.tex} si elle
+est donnée, définit alors le @dfn{nom d'ouvrage}, celui-ci est utilisé pour
+nommer le fichier journal et le fichier de sortie.
+
+Autrement, si @var{argument} commence par une contr'oblique, il attend
+la première instruction @code{\input} et le nom du fichier en entrée
+devient le nom d'ouvrage.
+
+Au sein du document, la variable @code{\jobname} se développe dans le
+nom d'ouvrage, avec la particularité que tous les caractères sont de
+catcode 11 (lettre). Ainsi, si vous voulez utilisez le nom d'ouvrage
+comme une condition, la solution la plus simple est d'utiliser une macro
+de text du paquetage @file{xtring} dans sa variante étoilée pour être
+insensible au catcode. Dans le texte suivant par exemple, la note en bas
+de page « dont la Respublica Bananensis Francorum. » n'est présente que
+si le nom de tâche commence par @file{moi-meme}.
+
+ at example
+Si une démocratie est juste un régime où les citoyens votent alors
+toutes les républiques bananières\IfBeginWith*@{\jobname@}@{moi-meme@}%
+@{\footnote@{dont la Respublica Bananensis Francorum.@}@}@{@} sont des
+démocraties.
+ at end example
+
+Cela ne fonctionnerait pas si la version non étoilée de
+ at code{\IfBeginWith} était utilisée, parce que le @code{-} dans
+ at samp{moi-meme} a un catcode 12, alors que dans @code{\jobname}, s'il
+s'y trouve, il a nécessairement un catcode 11.
+
+Dans certains cas il peut être utile de fixer le nom de tâche à une
+autre valeur que celle par défaut, l'option @code{--jobname} permet de
+faire cela, elle l'emporte sur le premier @code{\input} et spécifie
+directement le nom. @xref{Command line input}, pour un exemple d'usage,
+où l'on génère deux fichiers @file{etudiants.pdf} et
+ at file{professeurs.pdf} à partir d'un même code source @file{principal.tex}.
+
+En l'absence d'option @code{--jobname}, la valeur initiale de
+ at code{\jobname} est @code{texput}, de sorte que si la compilation
+s'arrête avant le premier @code{\input}, le journal produit sera nommé
+ at file{texput.log}. Par exemple la commande suivante :
+
+ at example
+pdflatex "\nonstopmode\errmessage@{\string\jobname\space vaut \jobname@}"
+ at end example
+
+produira un journal @file{textput.log} contenant le message d'erreur
+ at samp{! \jobname vaut texput.}.
+
+Attention, le nom de tâche est également forcé à @file{texput} si le
+premier @code{\input} est indirectement appelé par @code{\documentclass}
+ou @code{\RequirePackage}. Ainsi l'exemple suivant produira un fichier
+nommé @file{texput.pdf} avec une version raisonnablement récente de
+ at LaTeX{}Â :
+
+ at example
+pdflatex "\documentclass@{minimal@}\begin@{document@}Bonjour !\end@{document@}"
+ at end example
+
+mais avec une version plus ancienne le fichier de sortie se serait nommé
+ at file{minimal.pdf}, parce que le premier @code{\input} appelé
+indirectement par @code{\documentclass} aurait été traité de la même
+façon que s'il chargeait le fichier source racine.
+
+Voici un autre exemple de cela, ici on reprend l'exemple donné dans
+ at ref{Command line input} où l'on passe sur la ligne de commande l'option
+ at code{draft} au paquetage @file{graphicx}. Mais au lieu de le faire avec
+ at code{\PassOptionToPackage}, on le fait avec @code{\RequirePackage}, ce
+qui a également pour effet que le paquetage @file{graphicx} sera chargé
+en premier, si ce n'était pas déjà le cas.
+
+ at c credit Herbert Voss: https://tex.stackexchange.com/a/17236/121234
+ at example
+pdflatex --jobname=aa "\RequirePackage[draft]@{graphicx@}\input@{aa.tex@}"
+ at end example
+
+L'option @code{--jobname=aa} est nécessaire, car elle garantit que le
+fichier de sortie se nommera bien @file{aa.pdf}, et non
+ at file{texput.pdf} avec une version récente de @LaTeX{}, ni
+ at file{graphicx.pdf} avec une version plus ancienne.
+
@node Recovering from errors
@section Quand quelque chose se passe mal
Modified: trunk/latex2e.texi
===================================================================
--- trunk/latex2e.texi 2020-12-15 19:09:56 UTC (rev 858)
+++ trunk/latex2e.texi 2020-12-18 15:16:08 UTC (rev 859)
@@ -20361,6 +20361,7 @@
@menu
* Command line options:: Commonly used command line options.
* Command line input:: Specify LaTeX code on the command line.
+* Jobname:: How @TeX{} sets the current job name.
* Recovering from errors:: When something goes wrong.
@end menu
@@ -20426,16 +20427,8 @@
@item -jobname=@var{string}
Set the value of @TeX{}'s @dfn{jobname} to the string. The log file
and output file will then be named @file{@var{string}.log} and
- at file{@var{string}.pdf}.
+ at file{@var{string}.pdf}. @pxref{Jobname}.
-When you run @code{@command{pdflatex} @var{options} @var{argument}}, if
- at var{argument} does not start with a backslash then @TeX{} considers it
-the name of a file to input. Otherwise it waits for the first
- at code{\input} instruction and the name of the input file will be the job
-name. This is used to name the log file the output file. The
- at code{jobname} option overrides that process and directly specifies the
-name. @xref{Command line input}, for an example of its use.
-
@anchor{output directory}
@cindex output directory for all external files
@findex --output-directory @r{command-line option}
@@ -20539,21 +20532,183 @@
The @code{jobname} option is there because otherwise both files would be
called @file{main.pdf} and the second would overwrite the first.
-A final example. This loads the package @file{graphicx} with the option
- at code{draft}
+In this example, one passes the @code{draft} option to the @file{graphicx} package:
- at c credit Herbert Voss: https://tex.stackexchange.com/a/17236/121234
@example
-pdflatex -jobname=aa "\RequirePackage[draft]@{graphicx@}\input@{aa.tex@}"
+pdflatex "\PassOptionsToPackage@{draft@}@{graphicx@}\input@{aa.tex@}"
@end example
@noindent
so the graphic files are read for their bounding box size information
-but not incorporated into the PDF. (The @code{jobname} option is there
-because otherwise the output file would be @file{graphicx.pdf}, as
- at code{\RequirePackage} does an @code{\input} of its own.)
+but raplaced in the PDF by a box with same size and that contains only
+the file name, which speeds up compilation time and saves printer ink.
+ at c xx TODO translate the following
+ at ignore
+Un autre exemple classique est de cribler certains chapitres à la
+compilation en les passant à @code{\includeonly} dans la ligne de
+commande. Ainsi, supposons qu'on a un fichier racine @file{livre.tex}
+ainsi formé :
+ at example
+\documentclass@{book@}
+\begin@{document@}
+\frontmatter
+\include@{pref@}
+\mainmatter
+\include@{chap1@}
+\include@{chap2@}
+\appendix
+\include@{append@}
+\backmatter
+\include@{bib@}
+\end@{document@}
+ at end example
+
+En compilant @file{livre.tex} avec la ligne de commande suivante :
+
+ at example
+pdflatex '\includeonly@{chap1@}\input@{livre@}
+ at end example
+
+ at noindent
+seul le chapitre contenu dans @file{chap1.tex} sera produit en
+sortie. @xref{Splitting the input}.
+
+Dans ce dernier exemple, on force la date au 14 juillet 1789 :
+
+ at example
+pdflatex '\day=14 \month=7 \year=1789 \input revolution'
+ at end example
+
+Ainsi, si le fichier @file{revolution.tex} contient ceci :
+
+ at example
+\documentclass[french]@{minimal@}
+\usepackage@{babel@}
+\begin@{document@}
+\today\ c'est la révolution !
+\end@{document@}
+ at end example
+
+ at noindent
+alors vous aurez en sortie un truc du genre :
+
+ at example
+14 juillet 1789 c'est la révolution !
+ at end example
+ at end ignore
+
+ at node Jobname
+ at section @TeX{}'s job name
+
+ at c xx TODO, align on the French version which is far more complete and
+ at c accurate.
+When you run @code{@command{pdflatex} @var{options} @var{argument}}, if
+ at var{argument} does not start with a backslash then @TeX{} considers it
+the name of a file to input. Otherwise it waits for the first
+ at code{\input} instruction and the name of the input file will be the job
+name. This is used to name the log file the output file. The
+ at code{jobname} option overrides that process and directly specifies the
+name. @xref{Command line input}, for an example of its use.
+
+
+ at c credit Herbert Voss: https://tex.stackexchange.com/a/17236/121234
+ at example
+pdflatex -jobname=aa "\RequirePackage[draft]@{graphicx@}\input@{aa.tex@}"
+ at end example
+The @code{jobname} option is there because otherwise the output file
+would be @file{graphicx.pdf}, as @code{\RequirePackage} does an
+ at code{\input} of its own.
+
+ at c xx French version below:
+ at ignore
+ at node Jobname
+
+Quand vous exécutez @code{@command{pdflatex} @var{options}
+ at var{argument}}, si @var{argument} ne commence pas par une contr'oblique
+alors @TeX{} considère que c'est le nom du fichier racine à lire en
+entrée. Le nom du fichier racine, sans l'extension @file{.tex} si elle
+est donnée, définit alors le @dfn{nom d'ouvrage}, celui-ci est utilisé pour
+nommer le fichier journal et le fichier de sortie.
+
+Autrement, si @var{argument} commence par une contr'oblique, il attend
+la première instruction @code{\input} et le nom du fichier en entrée
+devient le nom d'ouvrage.
+
+Au sein du document, la variable @code{\jobname} se développe dans le
+nom d'ouvrage, avec la particularité que tous les caractères sont de
+catcode 11 (lettre). Ainsi, si vous voulez utilisez le nom d'ouvrage
+comme une condition, la solution la plus simple est d'utiliser une macro
+de text du paquetage @file{xtring} dans sa variante étoilée pour être
+insensible au catcode. Dans le texte suivant par exemple, la note en bas
+de page « dont la Respublica Bananensis Francorum. » n'est présente que
+si le nom de tâche commence par @file{moi-meme}.
+
+ at example
+Si une démocratie est juste un régime où les citoyens votent alors
+toutes les républiques bananières\IfBeginWith*@{\jobname@}@{moi-meme@}%
+@{\footnote@{dont la Respublica Bananensis Francorum.@}@}@{@} sont des
+démocraties.
+ at end example
+
+Cela ne fonctionnerait pas si la version non étoilée de
+ at code{\IfBeginWith} était utilisée, parce que le @code{-} dans
+ at samp{moi-meme} a un catcode 12, alors que dans @code{\jobname}, s'il
+s'y trouve, il a nécessairement un catcode 11.
+
+Dans certains cas il peut être utile de fixer le nom de tâche à une
+autre valeur que celle par défaut, l'option @code{--jobname} permet de
+faire cela, elle l'emporte sur le premier @code{\input} et spécifie
+directement le nom. @xref{Command line input}, pour un exemple d'usage,
+où l'on génère deux fichiers @file{etudiants.pdf} et
+ at file{professeurs.pdf} à partir d'un même code source @file{principal.tex}.
+
+En l'absence d'option @code{--jobname}, la valeur initiale de
+ at code{\jobname} est @code{texput}, de sorte que si la compilation
+s'arrête avant le premier @code{\input}, le journal produit sera nommé
+ at file{texput.log}. Par exemple la commande suivante :
+
+ at example
+pdflatex "\nonstopmode\errmessage@{\string\jobname\space vaut \jobname@}"
+ at end example
+
+produira un journal @file{textput.log} contenant le message d'erreur
+ at samp{! \jobname vaut texput.}.
+
+Attention, le nom de tâche est également forcé à @file{texput} si le
+premier @code{\input} est indirectement appelé par @code{\documentclass}
+ou @code{\RequirePackage}. Ainsi l'exemple suivant produira un fichier
+nommé @file{texput.pdf} avec une version raisonnablement récente de
+ at LaTeX{} :
+
+ at example
+pdflatex "\documentclass@{minimal@}\begin@{document@}Bonjour !\end@{document@}"
+ at end example
+
+mais avec une version plus ancienne le fichier de sortie se serait nommé
+ at file{minimal.pdf}, parce que le premier @code{\input} appelé
+indirectement par @code{\documentclass} aurait été traité de la même
+façon que s'il chargeait le fichier source racine.
+
+Voici un autre exemple de cela, ici on reprend l'exemple donné dans
+ at ref{Command line input} où l'on passe sur la ligne de commande l'option
+ at code{draft} au paquetage @file{graphicx}. Mais au lieu de le faire avec
+ at code{\PassOptionToPackage}, on le fait avec @code{\RequirePackage}, ce
+qui a également pour effet que le paquetage @file{graphicx} sera chargé
+en premier, si ce n'était pas déjà le cas.
+
+ at c credit Herbert Voss: https://tex.stackexchange.com/a/17236/121234
+ at example
+pdflatex --jobname=aa "\RequirePackage[draft]@{graphicx@}\input@{aa.tex@}"
+ at end example
+
+L'option @code{--jobname=aa} est nécessaire, car elle garantit que le
+fichier de sortie se nommera bien @file{aa.pdf}, et non
+ at file{texput.pdf} avec une version récente de @LaTeX{}, ni
+ at file{graphicx.pdf} avec une version plus ancienne.
+ at end ignore
+
@node Recovering from errors
@section Recovering from errors
More information about the latexrefman-commits
mailing list.