La version Windows de Web2C possède quelques spécificités qui méritent d’être notées.
La commande kpsecheck peut aussi indiquer le statut d’utilisation de la mémoire partagée : en utilisation ou non-utilisée. Cette information peut être très utile, car si le statut rapporté est « en utilisation », cela signifie qu’un ou plusieurs processus tournent et utilisent le bloc de mémoire partagée. Dans ce cas, une réinitialisation des tables de hachage basée sur les fichiers ls-R, comme la commande mktexlsr l’effectue, sera automatiquement repoussée jusqu’à ce que tous les processus utilisant la version courante en mémoire partagée soient terminés. Il est prévu d’enlever cette limitation dans une version future, mais la version actuelle de Kpathsea ne permet pas de faire facilement cette réinitialisation.
Enfin, la même commande kpsecheck peut indiquer l’endroit où Kpathsea pense pouvoir trouver la Dll de Ghostscript. En effet, sous Win32, il est souvent plus simple de travailler directement avec la Dll de Ghostscript, et de la trouver en utilisant la clé appropriée dans la base de registre, que d’utiliser gswin32c.exe et de modifier le PATH qui a une longueur limitée.
Il existe une option dans le menu TeXLive ou dans DémarrerProgrammes
TeXLive
Add TeX package qui
permet de lancer le programme TeXSetup.exe en mode maintenance. Les étapes sont pratiquement les mêmes
que lors de l’installation.
Les différences sont présentées ci-dessous, mais tout d’abord, quelles que soient les modifications faites,
n’oubliez pas de reconstruire les fichiers ls-R de bases de données. Sinon, les nouveaux fichiers ne seront
jamais retrouvés. Utiliser le menu
(DémarrerProgrammes
TeXLive
Maintenance
Reconstruire ls-R) ou lancer manuellement la commande
mktexlsr.
La principale différence concerne la page de sélection des composants. En mode maintenance, une comparaison est effectuée avec les composants installés sur votre disque dur. Les composants dont vous ne disposez pas encore s’affichent en vert, ceux dont vous disposez mais pour lesquels une version plus récente est disponible s’affichent en rouge et ceux déjà installés en noir.
Vous pouvez ainsi choisir d’ajouter ou de mettre à jour des composants soit depuis TeX Live, soit depuis Internet auquel cas vous trouverez sans doute des composants plus récents que ceux que vous avez déjà installés.
Il vous appartient de faire votre choix parmi l’ensemble des composants. Pour le reste, les étapes sont identiques à celles de l’installation initiale.
Si vous choisissez d’ajouter des fichiers qui ne proviennent pas de la distribution TeX Live (ou fpTeX), il est fortement recommandé de les mettre dans le répertoire $TEXMFLOCAL. De cette manière, vous serez certain qu’il n’y aura pas de problème lors d’une mise à jour de TeX Live.
L’arborescence pointée par $TEXMFLOCAL est initialement vide. Si vous souhaitez y ajouter par exemple les fichiers de style pour supporter le logiciel de calcul formel Maple, vous devrez mettre ces fichiers dans le répertoire C:\Program Files\TeXLive\texmf-local\tex\latex\maple\ et les fichiers de documentation dans C:\Program Files\TeXLive\texmf-local\doc\latex\maple\
La procédure de désinstallation est disponible soit depuis le programme TeXLive.exe, soit depuis le menu
TeXLive, soit depuis le panneau de contrôle (DémarrerPanneau de Contrôle, Ajout/Suppression de
programmes). Cette procédure nettoie votre disque dur de la plupart des fichiers qui y ont été mis lors de
l’installation initiale. Cependant, TeX est un système qui génère maints fichiers et, pour l’instant, il n’est pas prévu
de mécanisme pour en garder la trace. D’autre part, les composants supplémentaires spécifiques à Windows
possèdent leur propre procédure de désinstallation qu’il faudra lancer séparément. Enfin, les éventuels fichiers que
vous aurez mis dans le répertoire $TEXMFLOCAL ne seront pas concernés. Donc, même si la majeure
partie des fichiers est nettoyée automatiquement, il vous restera quelques opérations manuelles à
effectuer.
Le programme TeXSetup.exe possède un certain nombre d’autres options utiles. Vous pouvez en obtenir la liste en lançant :
En voici la description :
Kpathsea est compatible avec les noms UNC, ceux-ci peuvent donc être utilisés pour récupérer l’arborescence TEXMF depuis le réseau. Mais encore mieux, tous les fichiers, y compris ceux de configuration et excepté les binaires dans bin/win32, sont compatibles et partageables avec teTeX ou le TeX Live Unix. Cela signifie que vous pouvez utiliser Samba, soit pour monter la distribution Unix sur un client Windows, ou un client Unix depuis un serveur NT. Plusieurs stratégies sont possibles :
Le fichier de configuration de dvips se trouve par défaut en C:\Program Files\TeXLive\texmf-var\dvips\config\config.ps. Il peut être ouvert avec n’importe quel éditeur de texte pour modifier certains paramètres :
La distribution TeX Live courante comprend la procédure permettant d’avoir toujours des fichiers fontmaps à jour pour Dvips et Pdftex. C’est le programme updmap qui le fait durant l’installation, comme lors de l’ajout de collection de fontes. Si vous ajoutez de nouvelles fontes à la main, éditez le fichier updmap.cfg dans $VARTEXMF/web2c.
Si le programme pdflatex est utilisé pour écrire directement en format PDF et qu’on utilise du papier au format US letter-size, éditer le fichier C:\Program Files\TeXLive\texmf-var\pdftex\config\pdftex.cfg et modifier « page_width » et « page_height ». Ces entrées doivent être :
Sauvegarder le fichier et sortir de l’éditeur.
GSView est maintenant distribué sous licence Aladdin et n’est donc plus inclus dans TeX Live.
Si vous voulez changer le format du papier, ouvrez GSView à partir du menu Démarrer et sélectionnez
MediaLetter. Le sous menu Display Settings vous permet également d’améliorer la netteté du rendu en
positionnant les deux valeurs Text Alpha et Graphics Alpha à 4 bits.
Pour ce qui est de l’impression, consulter la sous-section 7.8.
Les fichiers .ps et .eps seront automatiquement ouverts par GSView.
Lors de l’installation, les fichiers .dvi sont associés à Windvi.
Vous pouvez lancer Windvi à partir du menu DémarrerProgrammes
TeXLive
DVI Viewer ou en double
cliquant sur un fichier .dvi dans l’explorateur de fichiers.
Pour sélectionner un format de papier US Letter, allez dans le menu ViewOptions
Papertype et sélectionnez
« US (8.5"x11") » dans la liste déroulante Paper Type. Cliquez OK et fermez Windvi.
La première fois que vous ouvrirez un fichier .dvi, vous pouvez trouver le facteur de zoom trop important ; réduisez-le en tapant sur la touche « moins » du clavier numérique jusqu’à ce qu’il soit à votre goût.
Vous pouvez modifier le format de papier dans les options de Windvi (menu View, Options) ainsi qu’un certain nombre d’autres paramètres comme par exemple la capacité à exécuter des commandes système spécifiées dans le document (désactivé par défaut pour des raisons de sécurité).
Les paramètres de Windvi sont enregistrés dans un fichier de nom windvi.cnf. Vous pouvez le localiser de la manière suivante :
Si vous avez des problèmes avec Windvi, il est conseillé d’effacer le fichier de configuration, puis de refaire un test dans la configuration par défaut.
Pour des procédures génériques de vérification, voir section 4.2, page 31. Cette section décrit les tests
spécifiques à Windows. Vous pouvez tester l’installation en ouvrant le fichier sample2e.tex dans
votre éditeur (XEmac, WinShell). La source LaTeX doit apparaître à l’écran. Compilez-le en cliquant
sur le menu (XEmacs) CommandLaTeX ou sur l’icône LaTeX (WinShell) dans la barre d’outils,
ensuite affichez-le en cliquant sur le menu (XEmacs) Command
View DVI ou sur l’icône Preview
(Windvi).
La première fois que vous afficherez un document avec Windvi, il va créer les fichiers de fontes bitmaps qui ne sont pas installées. Après avoir visualisé quelques fichiers, vous aurez créé la plupart de ces fichiers et vous ne verrez plus souvent apparaître la fenêtre de création de fontes.
En cas de problèmes, reportez-vous à la sous-section 7.10.
Il est possible d’imprimer depuis Windvi. Dans ce cas, l’impression utilise le pilote unifié d’impression de Windows, il est donc par définition compatible avec toutes les imprimantes. Cependant, il y a un inconvénient : cette impression génère des fichiers (spool) très importants, quelques versions anciennes de Windows le supportent mal. L’avantage est que vous pouvez tirer parti de l’impression d’images BMP ou WMF par exemple. Il faut également faire bien attention à ce que les paramètres de l’imprimante soient correctement définis (sous-section 7.6.4) sous peine d’avoir un effet d’échelle (imprimer à 600 dpi sur une imprimante qui fait réellement 300 dpi aboutit à n’avoir qu’un seul quart de la page visible).
L’impression est souvent plus rapide en utilisant dvips, puis en imprimant le fichier .ps depuis GSView. Pour imprimer depuis GSView, sélectionner Print. . . dans le menu File. Une fenêtre de dialogue pour l’impression apparaît.
Si vous utilisez une imprimante Postscript, soyez sûr de sélectionner PostScript Printer en choisissant cette option dans Print Method en bas à gauche de la boîte de dialogue, faute de quoi l’impression échouera. Vous pouvez ensuite sélectionner une imprimante quelconque parmi celles installées.
Si vous utilisez une imprimante qui ne supporte pas PostScript, sélectionnez Ghostscript Device dans Print Method. Ensuite cliquez sur le bouton djet500 et sélectionnez votre imprimante.
Ce que recouvre la dénomination Win32 n’est pas un système d’exploitation. C’est un ensemble de fonctions très vaste (environ 12000 fonctions dans les fichiers d’en-tête du SDK Microsoft) que vous pouvez utiliser pour écrire des programmes pour différentes versions des systèmes d’exploitation de la famille Windows.
Windows se décline en plusieurs versions :
Win9x peut faire tourner des programmes 32 bits et des programmes 16 bits en même temps. Mais le système d’exploitation lui-même n’est pas entièrement écrit en mode 32 bits et ne fournit pas une protection mémoire entre les applications : les applications 16 bits peuvent écraser des parties du système d’exploitation en mémoire ! Des parties du système telles que le GDI (Graphical Device Interface) ne se voient allouer que des ressources de taille très limitée pour gérer les bitmaps, les pinceaux et les polices, et ces ressources sont allouées de manière globale pour tous les programmes qui tournent de manière concurrente. Par exemple, toutes les entêtes de bitmaps utilisés par tous les programmes qui tournent simultanément ne doivent pas requérir plus de 64 ko de mémoire. Ceci explique le comportement du moniteur de performance et le fait que vous pouvez mettre votre système à genoux en utilisant de manière intensive les objets graphiques.
NT, 2K et XP ne souffrent pas de ces limitations, ni d’aucune autre limitation de Win9x. Ce sont de vrais environnements multitâches, avec une vraie mémoire protégée. Ils répondent de manière plus fluide que Win9x de par leur meilleure gestion de la mémoire, leur système de gestion de fichiers plus performant, etc.
Vous allez demander : mais pourquoi diable devrais-je me préoccuper d’une ligne de commande alors que j’ai Windows ?
Bonne question. Le problème est de nature très générale. Toutes les opérations ne peuvent pas être accomplies très facilement à l’aide de la seule interface graphique. La ligne de commande vous donne la puissance de la programmation – si vous avez un bon interpréteur de commandes.
Mais le problème est plus fondamental : TeX est un outil qui fonctionne en batch, de manière non-interactive. TeX a besoin de calculer la meilleure mise en page pour chaque page, de résoudre les références croisées, etc. Ceci ne peut être réalisé que par un traitement global du document. Ce n’est pas encore une tâche qui peut être réalisée interactivement.
Ceci implique que vous devriez utiliser TeX depuis la ligne de commande. En fait la situation n’est pas si catastrophique. Il y a un avantage à écrire des outils en ligne de commande pour des tâches complexes : ils sont bien plus fiables, parce qu’ils n’héritent pas de la complexité inhérente aux interfaces graphiques. Il est ensuite possible de concevoir des outils graphiques qui servent d’interface aux outils en ligne de commande. C’est le cas de TeX : vous interagirez avec lui la plupart du temps au travers d’un éditeur de textes qui possède une interface graphique.
Cependant, il se peut que vous ayez besoin d’utiliser la ligne de commande dans certaines situations. Par exemple en cas de problèmes, parce que vous avez besoin de trouver une erreur dans votre installation – voir la section 7.10.
L’API Win32 admet les deux caractères / et \ comme séparateurs pour les noms de fichiers. Mais pas les interpréteurs de commande ! Donc, chaque fois qu’un nom de fichier est utilisé par un programme, vous pouvez utiliser l’un ou l’autre séparateur, mais sur la ligne de commande, vous devez utiliser \ comme unique séparateur. Ce qui explique que vous pouvez taper :
mais pas :
Dans le premier cas, seuls des programmes utiliseront le chemin que vous avez fourni, dans le deuxième cas, c’est l’interpréteur de commandes qui va vouloir s’en servir directement.
Tout ceci pour dire, ne soyez pas surpris de voir des noms de fichiers écrits avec des / en guise de séparateurs, à la mode Unix ; fpTeX est un portage de Web2C, dont l’objectif est d’être compatible avec toutes les plateformes. Pour cette raison, les fichiers de configuration utilisent la convention Unix des séparateurs dans les noms de fichiers.
Une des plus mauvaises caractéristiques de Win9x vis-à-vis de TeX est probablement ce qu’on appelle le système de fichiers FAT. TeX utilise une myriade de petits fichiers dont la taille varie entre 1ko et 5ko. Le système FAT est ancien et date d’une époque bien antérieure à l’apparition des disques de plusieurs Go qui sont monnaie courante aujourd’hui. Tout ceci pour dire qu’il n’est pas possible de gérer efficacement les dizaines de fichiers de TeX Live sur un disque dur formaté en FAT. Les fichiers se voient allouer chacun 32ko au minimum, donc l’installation de TeX Live utilise beaucoup plus de place que nécessaire.
Le seul moyen d’éviter ce problème consiste à passer en FAT32 ou NTFS. Ces systèmes sont plus récents et n’ont pas l’inconvénient de FAT. La taille des clusters par défaut y est de 4ko, leur accès est plus performant. NTFS est protégé, redondant et on peut même ajuster la taille des clusters jusqu’à un minimum de 512 octets à la création.
Il existe dans votre système des variables qui agissent un peu comme des variables globales à tous vos programmes. On appelle cet ensemble de variables l’environnement. Chaque programme hérite à son démarrage d’une copie de l’environnement. Il peut modifier les valeurs des variables, ajouter ou enlever des variables, mais les modifications ne sont effectives que pour sa propre copie et ne sont pas propagées aux autres programmes, sauf à ceux qu’il lance lui-même.
Votre variable PATH est une variable spéciale de l’environnement utilisée pour chercher les programmes lorsque vous en demandez l’exécution. Il y a une procédure différente pour modifier cette variable selon que vous êtes sous Win9x, ME ou NT/2K/XP.
Les modifications ne prendront effet qu’après redémarrage de la machine.
S’il y a déjà un PATH défini pour votre compte utilisateur, cliquez dessus. Dans le champ Variable apparaît PATH et dans le champ Valeur, la liste courante de répertoires séparés par des points-virgules. Ajoutez les répertoires où se trouvent vos exécutables (i.e. C:\Program Files\TeXLive\bin\win32). Si la variable PATH n’est pas encore définie, il suffit de taper son nom dans le champ Variable et la valeur initiale que vous souhaitez lui donner dans le champ Valeur. Important : cliquez sur le bouton Appliquer avant de cliquer sur Ok, de cette façon, les modifications seront propagées immédiatement à la session courante. Soyez prudent quand vous modifiez les variables d’environnement.
Le meilleur moyen de savoir si une variable a été correctement définie consiste à ouvrir une console et à taper
la valeur correspondante doit alors être affichée..
En lisant la documentation de Web2C, on voit que les différents programmes dérivés de TeX utilisent le même moteur de base. Par exemple, tex.exe et latex.exe sont des copies exactes du même programme, mais chacun utilise un fichier de format différent, en se basant sur le nom par lequel il a été invoqué.
Sous Unix, ce mode de fonctionnement est réalisé en faisant appel aux liens symboliques. On peut ainsi économiser un peu d’espace disque, car plusieurs moteurs de base sont utilisés avec différents fichiers de format.
L’API Win32 ne connaît pas les liens symboliques. Dans le but d’économiser presqu’autant d’espace disque, tous les moteurs TeX de base ont été mis dans des DLL (Dynamic Linked Library). Ceci se traduit par l’aspect suivant pour les fichiers :
Il existe même un outil générique appelé lnexe.exe qui permet de simuler les liens durs de Unix sous Win32, mais uniquement pour les fichiers .exe.
Vous pouvez également définir un niveau de trace :
La trace de l’exécution des commandes suivantes sera conservée dans le fichier err.log. Si vous voulez rediriger le flux stderr sur le flux stdout, ce qui n’est normalement possible sous aucune version de Windows, il vous suffit de faire :
De cette manière, vous pourrez rediriger à la fois stdout et stderr dans le même fichier.
kpsewhich -expand-path $SELFAUTOPARENT | C:/Program Files/TeXLive |
kpsewhich -expand-path $TEXMF | C:/Program Files/TeXLive/texmf |
kpsewhich -expand-path $TEXMFCNF | .;C:/Program Files/TeXLive/texmf/web2c; |
C:/Program Files/TeXLive/bin/win32; | |
C:/Program Files/TeXLive/bin; | |
C:/Program Files/TeXLive | |
kpsewhich -expand-var $TEXINPUTS | .;C:/Program Files/TeXLive/texmf/tex// |
kpsewhich cmr10.tfm | C:/Program Files/TeXLive/texmf/fonts/tfm/public/cm/cmr10.tfm |
kpsewhich latex.fmt | C:/Program Files/TeXLive/texmf/web2c/latex.fmt |
Il faut se poser plusieurs questions :
Le logiciel TeX Live est composé de centaines de programmes et de milliers de fichiers d’origines très diverses. Il est pratiquement impossible de prédire toutes les causes possibles de problèmes. Néammoins, nous ferons notre possible pour vous aider dans tous les cas (voir section 1.2, p. 8).
La totalité des fichiers source est disponible dans l’archive source/source.tar.bz2 de la distribution. Pour recompiler l’ensemble de la distribution pour Windows, il faut :
Il reste beaucoup de travail à faire pour rendre la compilation plus simple.
Le système TeX pour Windows inclus sur TeX Live s’appelle aussi fpTeX. L’organisation est différente, mais fpTeX n’est ni plus ni moins que la version courante de TeX pour Windows.
La page d’accueil de fpTeX se trouve à http://www.fptex.org.
La version courante de fpTeX est disponible sur tout site CTAN dans htp://www.ctan.org/tex-archive/systems/win32/fptex.
Le site de référence de fpTeX est ftp://ftp.dante.de/pub/fptex/ où on trouve les versions beta de fpTeX et divers autres outils. Ce site de référence est partiellement recopié tous les jours par tous les sites CTAN dans systems/win32/fptex.