diff --git a/development/scons/scons_manifest.py b/development/scons/scons_manifest.py index e2dd171078..6ef24013a1 100644 --- a/development/scons/scons_manifest.py +++ b/development/scons/scons_manifest.py @@ -2519,6 +2519,8 @@ lib_examples_fr_files = Split(''' multicol.lyx simplecv.lyx splash.lyx + xyfigure.png + xypic.lyx ''') diff --git a/lib/Makefile.am b/lib/Makefile.am index bab07328c9..da8c6ede91 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -129,7 +129,9 @@ dist_frexamples_DATA = \ examples/fr/ListesPuces.lyx \ examples/fr/multicol.lyx \ examples/fr/simplecv.lyx \ - examples/fr/splash.lyx + examples/fr/splash.lyx \ + examples/fr/xyfigure.png \ + examples/fr/xypic.lyx glexamplesdir = $(pkgdatadir)/examples/gl dist_glexamples_DATA = \ diff --git a/lib/examples/fr/schemas_xy_figure.png b/lib/examples/fr/schemas_xy_figure.png new file mode 100644 index 0000000000..3cd021002a Binary files /dev/null and b/lib/examples/fr/schemas_xy_figure.png differ diff --git a/lib/examples/fr/xypic.lyx b/lib/examples/fr/xypic.lyx new file mode 100644 index 0000000000..4a4c3e488c --- /dev/null +++ b/lib/examples/fr/xypic.lyx @@ -0,0 +1,3705 @@ +#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass scrartcl +\begin_preamble +\usepackage[all]{xy} + +% define new commands used in sec. 5.1 +\newcommand{\xyR}[1]{ + \xydef@\xymatrixrowsep@{#1}} +\newcommand{\xyC}[1]{ + \xydef@\xymatrixcolsep@{#1}} + +\newdir{|>}{!/4.5pt/@{|}*:(1,-.2)@^{>}*:(1,+.2)@_{>}} + +% a pdf-bookmark for the TOC is added +\let\myTOC\tableofcontents +\renewcommand\tableofcontents{% + \pdfbookmark[1]{\contentsname}{} + \myTOC } + +% redefine the \LyX macro for PDF bookmarks +\def\LyX{\texorpdfstring{% + L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} + {LyX}} +\end_preamble +\options BCOR7.5mm +\use_default_options false +\language french +\inputencoding auto +\font_roman lmodern +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing single +\use_hyperref true +\pdf_title "Utilisation de XY-pic dans LyX" +\pdf_author "H. Peter Gumm" +\pdf_subject "manual de XY-pic" +\pdf_keywords "LyX, documentation" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 2 +\pdf_breaklinks false +\pdf_pdfborder false +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true,pdfstartview=XYZ, plainpages=false, pdfpagelabels" +\papersize a4paper +\use_geometry false +\use_amsmath 2 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language french +\papercolumns 1 +\papersides 2 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Utilisation de +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic dans LyX +\end_layout + +\begin_layout Author +H. + Peter Gumm +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Traduction française Jean-Pierre Chrétien, novembre 2009 +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Abstract +Avec les versions récentes de LyX et grâce à la possibilité d'afficher un + aperçu sur le vif offerte par la distribution LaTeX, le paquetage de tracé + de diagrammes +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\family default +-pic peut être utilisé confortablement dans LyX: les diagrammes peuvent + être affichés et modifiés dans le fenêtre principale de LyX. + Nous décrivons ici comment utiliser la commande +\family typewriter + +\backslash +xymatrix +\family default + de +\family typewriter +xypic +\family default + depuis LyX pour tracer, modifier et visionner des diagrammes utilisés typiqueme +nt dans la théorie des catégories, l'algèbre et les disciplines voisines. + +\end_layout + +\begin_layout Abstract +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Section +Introduction +\end_layout + +\begin_layout Standard +Le paquetage +\family typewriter +xypic +\family default + est utilisé depuis longtemps comme un outil approprié pour construire facilemen +t des graphiques et des diagrammes en LaTeX. + Malheureusement, son utilisation depuis LyX était limitée par les infâmes + boîtes de code TeX, ce qui faisait que la fenêtre LyX ne pouvait afficher + que les sources LaTeX et non pas le diagramme résultant. + Le mode LaTeX +\begin_inset Quotes fld +\end_inset + +Aperçu sur le vif +\begin_inset Quotes frd +\end_inset + + ( +\emph on +preview-style +\emph default +), inclus dans le projet AUCTeX +\begin_inset CommandInset citation +LatexCommand cite +key "AUCTeX" + +\end_inset + +, permet enfin la modification et l'affichage des diagrammes +\family typewriter +xypic +\family default +, qui peuvent être construits, modifiés et visionnés depuis LyX. +\end_layout + +\begin_layout Standard +\begin_inset VSpace defskip +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +\begin_inset Graphics + filename schemas_xy_figure.png + lyxscale 60 + width 75col% + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset VSpace defskip +\end_inset + + +\end_layout + +\begin_layout Standard +Dans ce manuel, nous décrivons comment utiliser +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic depuis la fenêtre LyX, et comment créer et modifier des diagrammes. + Nous avons testé ce qui suit avec LyX (versions 1.3.7 à 1.6), exécuté sur + Windows +\begin_inset space \thinspace{} +\end_inset + +XP ou Windows Vista. + +\end_layout + +\begin_layout Standard +Deux façons de procéder sont offertes: pour commencer, et pour quelques + tests préliminaires, il peut être plus facile de saisir d'abord le code + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic dans la fenêtre LyX, de le sélectionner en entier et de le convertir + dans sa représentation graphique en pressant +\family sans +Ctrl-m +\family default + ou +\family sans +Ctrl-M +\family default +. + Si vous devez utiliser +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic plus fréquemment, ou si vous désirez modifier votre diagramme initial, + vous préférerez assembler et modifier vos figures à l'aide de l'éditeur + mathématique de LyX. +\end_layout + +\begin_layout Standard +Lorsque le curseur se trouve superposé à un diagramme, celui-ci est affiché + comme une tableau de nœuds et de flèches. + Ceux-ci peuvent être modifiés interactivement. + Quand le curseur quitte la zone d'édition, le diagramme réapparaît. +\end_layout + +\begin_layout Standard +Dans les deux premiers chapitres de la documentation, nous expliquons comment + utiliser LyX dans le premier mode mentionné ci-dessus et nous introduisons + toutes le fonctionnalités de +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic qui peuvent être utiles pour tracer des diagrammes commutatifs, des + graphes ou de automates. + Le chapitre +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:math-editor" + +\end_inset + + explique comment utiliser les commandes +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic dans une +\begin_inset Quotes fld +\end_inset + +zone d'édition mathématique +\begin_inset Quotes frd +\end_inset + +. +\end_layout + +\begin_layout Standard +Ce n'est pas notre intention d'écrire une nouvelle introduction à +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic, notre motivation est plutôt de montrer comment les commandes les plus + importantes fonctionnent dans LyX, puisque les combinaisons de saisies + décrites dans le manuel +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic +\begin_inset CommandInset citation +LatexCommand cite +key "xypic manual" + +\end_inset + + ne sont pas toutes interprétées dans LyX. +\end_layout + +\begin_layout Section +Préparation +\end_layout + +\begin_layout Standard +Ce qui suit nécessite que les paquetages LaTeX +\family typewriter +xypic +\family default + et +\family typewriter +preview +\family default + fassent partie de la distribution LaTeX. + Ils sont disponibles sur CTAN, voir à +\begin_inset CommandInset citation +LatexCommand cite +key "instant-preview" + +\end_inset + +, resp. + à +\begin_inset CommandInset citation +LatexCommand cite +key "xypic" + +\end_inset + +. + Si vous devez les installer, il est nécessaire d'exécuter +\family sans +Outils\SpecialChar \menuseparator +Reconfigurer +\family default + dans le menu principal de LyX. + Les étapes pour créer un premier diagramme dans LyX sont alors les suivantes: + +\end_layout + +\begin_layout Enumerate +Activation et aperçu de test +\end_layout + +\begin_deeper +\begin_layout Enumerate +Ouvrir LyX, choisir +\family sans +Outils\SpecialChar \menuseparator +Préférences\SpecialChar \menuseparator +Apparence\SpecialChar \menuseparator +Affichage écran +\family default + et positionner +\emph on +Aperçu sur le vif +\emph default + sur +\emph on +Activé +\emph default +; +\end_layout + +\begin_layout Enumerate +Dans +\family sans +Document\SpecialChar \menuseparator +Paramètres...\SpecialChar \menuseparator +Options mode math +\family default +, décocher +\emph on +Utiliser automatiquement le paquetage math AMS +\emph default + et cocher +\emph on +Utiliser le paquetage math AMS; +\end_layout + +\begin_layout Enumerate +Tester si l'aperçu sur le vif fonctionne en ouvrant un document LyX et en + saisissant n'importe quelle formule mathématique, par exemple +\begin_inset Formula $a+b=c$ +\end_inset + +; +\end_layout + +\begin_layout Enumerate +Déplacer le curseur en-dehors de la formule, et constatez qu'elle prend + l'aspect du résultat imprimable DVI, PostScript ou PDF. +\end_layout + +\end_deeper +\begin_layout Enumerate +Activer et tester +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic +\family typewriter +: +\end_layout + +\begin_deeper +\begin_layout Enumerate +Dans votre document, saisissez le texte +\family typewriter + +\begin_inset Newline newline +\end_inset + + +\backslash +xymatrix{A +\backslash +ar[r] & B} +\family default + ; +\end_layout + +\begin_layout Enumerate +Sélectionner tout ce texte et choisir +\family sans +Insérer\SpecialChar \menuseparator +Math\SpecialChar \menuseparator +Formule hors ligne +\family default +, ou pressez le raccourci clavier correspondant +\family sans +Ctrl-M; +\end_layout + +\begin_layout Enumerate +Déplacer le curseur en-dehors de la zone d'édition mathématique et attendre + une fraction de seconde pour voir apparaître une flèche: +\begin_inset Formula $\xymatrix{A\ar[r] & B} +$ +\end_inset + +. +\end_layout + +\end_deeper +\begin_layout Section +Diagrammes commutatifs +\end_layout + +\begin_layout Standard +Le diagramme ci-après, qui est extrait de la documentation +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic +\begin_inset CommandInset citation +LatexCommand cite +key "xypic manual" + +\end_inset + + écrite par son créateur Kristoffer H. + +\noun on +Rose +\noun default +, va nous fournir un exemple illustrant de nombreuses fonctionnalités de + ce paquetage. + Son code source est le suivant: +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{ +\begin_inset Newline newline +\end_inset + + U +\backslash +ar@/_{1pc}/[ddr]_ +\backslash +psi +\backslash +ar@/^{1pc}/[drr]^ +\backslash +varphi +\begin_inset Newline newline +\end_inset + + +\backslash +ar@{.>}[dr]|-{(x,y)} +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & X +\backslash +times_Z Y +\backslash +ar[d]^q +\backslash +ar[r]_p & X +\backslash +ar[d]_f +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & Y +\backslash +ar[r]^g & Z } +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout Standard +De nouveau, pour convertir ce code sous forme graphique, le sélectionner + en entier depuis +\family typewriter + +\backslash +xymatrix{ +\family default + \SpecialChar \ldots{} + jusqu'à l'accolade fermante \SpecialChar \ldots{} + +\family typewriter +} +\family default + et le convertir en mode mathématique hors ligne comme expliqué plus haut. + Peu après que que le curseur quitte la zone d'édition mathématique, vous + devriez voir apparaître le diagramme dans toute sa beauté graphique ci-dessous: +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +\xymatrix{U\ar@/_{1pc}/[ddr]_{\psi}\ar@/{}^{1pc}/[drr]^{\varphi}\ar@{.>}[dr]|-{(x,y)}\\ + & X\times_{Z}Y\ar[d]^{q}\ar[r]_{p} & X\ar[d]_{f}\\ + & Y\ar[r]^{g} & Z} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsection +Le format matriciel des diagrammes +\end_layout + +\begin_layout Standard + +\family typewriter +xymatrix +\family default + utilise une matrice pour définir la disposition des sommets d'un diagramme. + Pour l'exemple ci-dessus, nous avons besoin d'une matrice 3x3, 5 positions + étant utilisées pour les sommets +\begin_inset Formula $U$ +\end_inset + +, +\begin_inset Formula $X\times_{Z}Y$ +\end_inset + +, +\begin_inset Formula $X$ +\end_inset + +, +\begin_inset Formula $Y$ +\end_inset + +, +\begin_inset Formula $Z$ +\end_inset + +, les autres positions restant vides. + Dans ce cas, la matrice suivante définit le format: +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{ +\begin_inset Newline newline +\end_inset + + U +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & X +\backslash +times_Z Y & X +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & Y & Z } +\end_layout + +\begin_layout Standard +La structure semble familière aux connaisseurs de LaTeX: nous voyons trois + lignes, les deux premières étant terminées par le marqueur de fin de ligne +\family typewriter + +\backslash + +\backslash + +\family default + . + Chaque ligne comporte des cellules, séparées par une esperluette +\family typewriter +& +\family default +. + +\end_layout + +\begin_layout Subsection +Flèches +\end_layout + +\begin_layout Standard +Une fois les sommets saisis, nous ajoutons des flèches entre eux. + La commande +\family typewriter +xypic +\family default + de base pour produire une flèche est +\family typewriter + +\backslash +ar +\family default + , elle est saisie dans la cellule de la matrice d'où part la flèche. + La direction de la flèche est spécifiée par les commandes de direction + +\family typewriter +u +\family default + (haut), +\family typewriter +d +\family default + (bas), +\family typewriter +l +\family default + (gauche), ou +\family typewriter +r +\family default + (droite). + Celles-ci peuvent être combinées sous forme d'un chemin et encloses entre + crochets. + Par exemple, les flèches partant du sommet +\begin_inset Formula $U$ +\end_inset + + en haut à gauche allant vers le bas et à droite vers les sommets +\begin_inset Formula $X\times_{Z}Y$ +\end_inset + +, +\begin_inset Formula $Y$ +\end_inset + +, et +\begin_inset Formula $X$ +\end_inset + + sont définies respectivement par +\family typewriter + +\backslash +ar[dr] +\family default +, +\family typewriter + +\backslash +ar[ddr] +\family default + et +\family typewriter + +\backslash +ar[drr] +\family default +. + Le diagramme ci-dessus enrichi par les flèches devient donc: +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{ +\begin_inset Newline newline +\end_inset + + U +\backslash +ar[ddr] +\backslash +ar[drr] +\backslash +ar[dr] +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & X +\backslash +times_Z Y +\backslash +ar[d] +\backslash +ar[r]& X +\backslash +ar[d] +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & Y +\backslash +ar[r] & Z } +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +\xymatrix{U\ar[ddr]\ar[drr]\ar[dr]\\ + & X\times_{Z}Y\ar[d]\ar[r] & X\ar[d]\\ + & Y\ar[r] & Z} +\] + +\end_inset + + +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout Subsection +Étiquettes +\end_layout + +\begin_layout Standard +Les étiquettes sont associées aux flèches en les créant en tant qu'exposants + et indices des commandes +\family typewriter + +\backslash +ar +\family default +. + Ainsi, +\family typewriter + +\backslash +ar[drr]^ +\backslash +varphi +\family default + définit une flèche allant vers le bas d'une cellule, vers la droite de + deux cellules et étiquetée au-dessus par +\begin_inset Formula $\varphi$ +\end_inset + +. + Pour étiqueter au-dessous, insérer un indice inférieur comme dans +\family typewriter + +\backslash +ar[ddr]_ +\backslash +psi +\family default +. + Cette explication n'est cependant correcte que pour les flèches pointant + vers la droite. + Plus précisément, imaginez que vous suivez la flèche dans la direction + pointée. + Alors un indice supérieur étiquette à gauche et un indice inférieur étiquette + à droite. + De ce fait, une flèche pointant de droite à gauche, comme +\family typewriter + +\backslash +ar[l]^ +\backslash +alpha_ +\backslash +beta +\family default + aura l'étiquette +\begin_inset Formula $\alpha$ +\end_inset + + au-dessous et l'étiquette +\begin_inset Formula $\beta$ +\end_inset + + au-dessus de la flèche, c'est-à-dire +\begin_inset Formula $\xymatrix{\ & \ \ar[l]_{\beta}^{\alpha}.} +$ +\end_inset + + En utilisant le caractère | au lieu de ^ ou _ , il est même possible de + placer l'étiquette sur la flèche, en masquant une partie de son corps. +\end_layout + +\begin_layout Standard +Normalement, une étiquette est placée à mi-chemin entre l'objet débutant + la flèche et l'objet la terminant. + Dans le premier diagramme, la flèche centrale partant de +\begin_inset Formula $U$ +\end_inset + + porte l'étiquette +\begin_inset Formula $(x,y)$ +\end_inset + + au milieu du corps de la flèche, plutôt qu'à mi-chemin entre les objets + qu'elle connecte. + Ceci est obtenu en préfixant l'étiquette par un tiret, ici: +\family typewriter + +\backslash +ar[dr]|-{(x,y)} +\family default +. +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{ +\begin_inset Newline newline +\end_inset + + U +\backslash +ar[ddr]_ +\backslash +psi +\backslash +ar[drr]^ +\backslash +varphi +\backslash +ar[dr]|-{(x,y)} +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & X +\backslash +times_Z Y +\backslash +ar[d]^q +\backslash +ar[r]_p& X +\backslash +ar[d]_f +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + & Y +\backslash +ar[r]^g & Z } +\end_layout + +\begin_layout LyX-Code +\begin_inset Formula \[ +\xymatrix{U\ar[ddr]_{\psi}\ar[drr]^{\varphi}\ar[dr]|-{(x,y)}\\ + & X\times_{Z}Y\ar[d]^{q}\ar[r]_{p} & X\ar[d]_{f}\\ + & Y\ar[r]^{g} & Z} +\] + +\end_inset + + +\end_layout + +\begin_layout Standard +Avec +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic, il est possible de décaler les étiquettes vers l'origine ou l'extrémité + d'une flèche en préfixant l'étiquette avec un coefficient, comme par exemple + +\family typewriter +(.3) +\family default +. + Avec LyX, ceci ne fonctionne qu'avec les étiquettes placées au-dessus de + la flèche, par exemple +\family typewriter + +\backslash +ar[r]|(0.3){ +\backslash +phi} +\family default +. + +\end_layout + +\begin_layout Standard +Pour les étiquettes placées sur la gauche ou la droite de la flèche, ceci + ne fonctionne pas: le code +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic correspondant (e. +\begin_inset space \thinspace{} +\end_inset + +g. + +\family typewriter + +\backslash +ar[r]^(.3) +\backslash +phi +\family default + ou +\family typewriter + +\backslash +ar[r]_(.3) +\backslash +psi +\family default +) n'est pas correctement interprété par l'éditeur mathématique de LyX. + Deux solutions alternatives sont suggérées dans le dernier chapitre de + cette note. +\end_layout + +\begin_layout Subsection +Modifications d'une flèche: apparence +\end_layout + +\begin_layout Standard +La modification de l'apparence, de la forme ou de la position des flèches + sont obtenues à l'aide du caractère arobase +\family typewriter +@ +\family default +. + Il est suivi d'une paire de symboles appariés, ou la forme de la paire + de symboles, +\family typewriter +{ } +\family default + ou +\family typewriter +< > +\family default + ou +\family typewriter +/ / +\family default + indique si l'on veut modifier l'apparence, la forme ou la courbure de la + flèche. + Plusieurs modifications peuvent être apportées à une flèche en même temps. +\end_layout + +\begin_layout Subsubsection +Apparence de la flèche +\end_layout + +\begin_layout Standard +Différentes apparences comme +\emph on +solide +\emph default +, +\emph on +pointillée +\emph default +, +\emph on +tiretée +\emph default + ou +\emph on +dédoublée +\emph default + sont offertes pour le corps d'une flèche. + Ils peuvent être combinés avec des plumages et des dards variés. + En général, l'apparence d'une flèche est obtenue en faisant immédiatement + suivre la commande +\family typewriter + +\backslash +ar +\family default + par une arobase +\family typewriter +@ +\family default + et une paire d'accolades{\SpecialChar \ldots{} +} contenant des caractères décrivant le plumage, + le corps et le dard de la flèche. + Ces caractères sont choisis pour évoquer une équivalence ASCII du résultat + désiré. + Par exemple, +\family typewriter + +\backslash +ar@{>..>>} +\family default + produit une flèche avec une plume divisée, un corps pointillé et un dard + double. + Plusieurs autres apparences sont décrites dans le tableau ci-dessous. + Notez que les plumes des flèches inclusives +\begin_inset Formula $\xymatrix{A\ar@{^{(}->}[r] & B} +$ +\end_inset + + sont obtenues en mettant en indice ou en exposant des parenthèses ouvrantes, + comme dans +\family typewriter + +\backslash +ar@{^(->}[r]. +\begin_inset VSpace defskip +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular + + + + + + +\begin_inset Text + +\begin_layout Plain Layout +Résultat +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +Code source LyX +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{-->}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{-->} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{..>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{..>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{~>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{~>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{->>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{->>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{-->>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{-->>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{>->>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{>->>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{_{(}->}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{_(->} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{^{(}->}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{^(->} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{|-|}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{|-|} +\end_layout + +\end_inset + + + + +\end_inset + + +\end_layout + +\begin_layout Standard +\noindent +\begin_inset VSpace defskip +\end_inset + +En faisant suivre le caractère +\family typewriter + +\begin_inset space ~ +\end_inset + +@ +\family default + par les chiffres +\begin_inset space ~ +\end_inset + +2, 3, un caractère souligné +\begin_inset space ~ +\end_inset + +_, ou bien un chapeau +\begin_inset space ~ +\end_inset + +^, nous pouvons créer des flèches avec un corps double ou triple, ou des + flèches n'affichant que la moitié haute ou la moitié basse de leur dard + ou de leur plumage. + Les flèches peuvent n'avoir ni dard ni plumage, comme le montre le dernier + exemple: +\begin_inset VSpace defskip +\end_inset + + +\begin_inset Tabular + + + + + + +\begin_inset Text + +\begin_layout Plain Layout +Résultat +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +Source code for LyX +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@2[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@2 +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@3[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@3 +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@_{->}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@_{->} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@^{->}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@^{->} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@^{>>->>}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@^{>>->>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@{^{<}-_{>}}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@{^<-_>} +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +\begin_inset Formula \xymatrix{\ \ar@2{--}[r] & \ } + + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\family typewriter + +\backslash +ar@2{--} +\end_layout + +\end_inset + + + + +\end_inset + + +\end_layout + +\begin_layout Subsubsection +Conception de vos propres flèches +\end_layout + +\begin_layout Standard +Dans une certaine mesure, il vous est possible de concevoir vos propres + flèches, à l'aide des caractères +\family typewriter +><|ox+/()[ +\family default +,en utilisant la commande +\family typewriter + +\backslash +newdir +\family default + dans le préambule. + Pour les détails, nous renvoyons au manuel +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\family default +-pic, d'où nous extrayons cet exemple: +\end_layout + +\begin_layout Standard + +\family typewriter + +\backslash +newdir{|>}{!/4.5pt/@{|}*:(1,-.2)@^{>}*:(1,+.2)@_{>}} +\family default +. +\end_layout + +\begin_layout Standard +\noindent +Ceci définit un nouveau dard, référencé par +\family typewriter +|> +\family default + dans +\family typewriter + +\backslash +ar@{-|>}[r] +\family default +, et qui s'affiche correctement dans LyX comme: +\begin_inset Formula \[ +\xymatrix{A\ar@{-|>}[r] & \ \ B} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsection +Positionnement d'une flèche +\end_layout + +\begin_layout Standard +Les flèches sont décalées latéralement à l'aide du modificateur +\family typewriter +@< +\family default + +\begin_inset Formula $\ldots$ +\end_inset + + +\family typewriter +> +\family default + où les points de suspension sont remplacés par une valeur positive ou négative. + Par exemple, pour obtenir une paire de flèches s'opposant mutuellement + entre deux nœuds, nous les décalons pour pouvoir les voir séparément. + Notez que la direction du décalage est positive quand on suit la flèche + du regard: de ce fait +\end_layout + +\begin_layout Standard + +\family typewriter + +\backslash +xymatrix{ +\backslash +circ +\backslash +ar@<1ex>[r]& +\backslash +circ +\backslash +ar@<1ex>[l]} +\end_layout + +\begin_layout Standard +\noindent +produit +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + + +\begin_inset Formula \[ +\xymatrix{\circ\ar@<1ex>[r] & \circ\ar@<1ex>[l]} +\] + + +\end_inset + +. +\end_layout + +\begin_layout Subsubsection +Diagramme en ligne ou centrés hors ligne +\end_layout + +\begin_layout Standard +Les flèches et les diagrammes peuvent être utilisés en ligne, comme celui-ci: + +\begin_inset Formula $\xymatrix{\circ\ar@<1ex>[r] & \circ\ar@<1ex>[l]} +$ +\end_inset + +. + Quand, le code est saisi dans LyX comme précédemment, sélectionnez-le et + pressez soit +\family sans +Ctrl-m +\family default + four une disposition en ligne, soit +\family sans +Ctrl-M +\family default + pour une disposition centrée hors ligne. + Les diagrammes disposés en ligne peuvent être positionnés hors ligne plus + tard, via +\family sans +Éditer\SpecialChar \menuseparator +Math +\family default + +\family sans +\SpecialChar \menuseparator +Changer le type de formule +\family default + (il faut que le curseur soit dans la formeule pour que ce menu apparaisse). +\end_layout + +\begin_layout Subsection +Flèches courbes +\end_layout + +\begin_layout Standard +Il existe deux méthodes simples pour courber les flèches. + La première consiste à préciser numériquement de combien le point central + du corps est élevé ou abaissé, la seconde consiste à forcer la flèche à + quitter son point de départ dans une direction prescrite et à atteindre + la cible dans une autre direction prescrite: la courbure nécessaire est + alors déterminée automatiquement. + Nous décrirons les deux méthodes. +\end_layout + +\begin_layout Subsubsection +Élever le corps +\end_layout + +\begin_layout Standard +Pour courber les flèches nous utilisons le modifieur +\family typewriter +@/ +\family default + +\begin_inset Formula $\ldots$ +\end_inset + +/ . + Les points de suspension représentent une mesure TeX, qui doit être introduite + en exposant ou en indice. + Alors que dans +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\family default +- +\family typewriter +pic +\family default +, nous pouvions l'écrire simplement, par exemple +\family typewriter + +\backslash +ar@/_1pc/ +\family default +, pour obtenir une flèche courbée vers le bas de +\family typewriter +1pc +\family default +, ceci ne peut plus être fait directement dans LyX. + Il est nécessaire d'enclore la mesure dans une paire d'accolades, comme + par exemple +\family typewriter + +\backslash +ar@/_{1pc}/ +\family default +. + À titre d'exemple, voici deux flèches opposées entre +\begin_inset Formula $A$ +\end_inset + + et +\begin_inset Formula $B$ +\end_inset + +, courbées chacune de .5 pica, et produites par le code suivant: +\end_layout + +\begin_layout Standard + +\family typewriter + +\backslash +xymatrix{A +\backslash +ar@/_{.5pc}/[r] & B +\backslash +ar@/_{.5pc}/[l]} +\end_layout + +\begin_layout Standard + +\family typewriter +\begin_inset Formula \[ +\xymatrix{A\ar@/_{.5pc}/[r] & B\ar@/_{.5pc}/[l]} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsubsection +Spécifier les directions de départ et d'arrivée +\end_layout + +\begin_layout Standard +La seconde solution pour courber les flèches consiste à spécifier leur direction + géographique lorsqu'elles quittent leur source et atteignent leur objectif. + Au lieu de nord, nord-est, est, etc., les directions sont nommées +\family typewriter +u +\family default +, +\family typewriter +ur +\family default +, +\family typewriter +r +\family default +, +\family typewriter +dr +\family default +, +\family typewriter +d +\family default +, +\family typewriter +dl +\family default +, +\family typewriter +l +\family default +, +\family typewriter +ul +\family default +, pour haut, haut-droite, bas-droite, etc. + Une direction est spécifiée par +\family typewriter +@( +\emph on +out +\emph default +, +\emph on +in +\emph default +) +\family default + où +\emph on +out +\emph default + est la direction au départ du premier objet et +\emph on +in +\emph default + la direction d'arrivée au second. + Ci-dessous, nous montrons quelques flèches courbes et une boucle, qui prend + naissance quand nous ne spécifions pas d'objectif pour une flèche, juste + ses directions de départ et d'arrivée: +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{A +\backslash +ar@(dr,dl)[r] +\backslash +ar@(dr,dl)[rr] +\begin_inset Newline newline +\end_inset + + &B +\backslash +ar@(d,r)[dl] &C +\backslash + +\backslash + +\begin_inset Newline newline +\end_inset + + E +\backslash +ar@(ul,ur)} +\begin_inset Formula \[ +\xymatrix{A\ar@(dr,dl)[r]\ar@(dr,dl)[rr] & B\ar@(d,r)[dl] & C\\ +E\ar@(ul,ur)} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsection +Modification des sommets +\end_layout + +\begin_layout Standard +L'exemple ci-dessus rappelle un diagramme d'automate, sauf que dans un tel + diagramme les états seraient entourés d'un petit cercle, les états finaux + étant représentés par un cercle double. +\end_layout + +\begin_layout Subsubsection +Encadrement d'objets +\end_layout + +\begin_layout Standard +Avec +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic, les éléments peuvent être pourvus d'un encadrement simple ou double, + comme +\begin_inset Formula $\xymatrix{*+[F]{A}} +$ +\end_inset + + ou +\begin_inset Formula $\xymatrix{*+[F=]{B}} +$ +\end_inset + + en préfixant l'élément avec +\family typewriter +*[F-] +\family default + or +\family typewriter +*[F=] +\family default + et en enserrant la partie de l'élément à encadrer entre accolades. + Normalement le cadre serait très serré, et il doit être relâché en préfixant + par +\family typewriter ++ +\family default + ou par +\family typewriter +++ +\family default +. + Les cadres ronds, comme +\begin_inset Formula $\xymatrix{*++[o][F]{A}} +$ +\end_inset + + et +\begin_inset Formula $\xymatrix{*++[o][F=]{B}} +$ +\end_inset + + sont obtenus en précisant la forme par +\family typewriter +[o]. + +\family default + Le dernier exemple a donc été construit par le code *++[o][F=]{B}. + De cette façon, l'automate suivant +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +\xymatrix{\txt{start}\ar[r] & *++[o][F]{1}\ar[r] & *++[o][F=]{2}\ar@(ur,dr)\ar@(ur,ul)[l]} +\] + +\end_inset + + +\end_layout + +\begin_layout Standard +\noindent +peut être obtenu en saisissant +\end_layout + +\begin_layout LyX-Code + +\backslash +xymatrix{ +\backslash +txt{start} +\backslash +ar[r] +\end_layout + +\begin_layout LyX-Code + & *++[o][F]{1} +\backslash +ar[r] +\end_layout + +\begin_layout LyX-Code + & *++[o][F=]{2} +\backslash +ar@(ur,dr) +\backslash +ar@(ur,ul)[l] +\end_layout + +\begin_layout LyX-Code + } +\end_layout + +\begin_layout Standard +Les commandes LaTeX +\family typewriter + +\backslash +entrymodifiers={ +\family default +\SpecialChar \ldots{} + +\family typewriter +} +\family default + rendront implicites certains style d'éléments, qui pourront bien entendu + être remplacés par des éléments individualisés. + Ainsi, après +\family typewriter + +\backslash +entrymodifiers={++[o][F-]} +\family default +, tous les éléments des matrices +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + seront entourées d'un cercle. +\end_layout + +\begin_layout Subsubsection +Encadrement rectangulaires +\end_layout + +\begin_layout Standard +Encadrer par un rectangle complet une partie d'une matrice +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + est obtenu avec la paire de macro-instructions +\family typewriter + +\backslash +save ... + +\backslash +restore +\family default +. + La dimension du rectangle est précisé par la paire pointée +\begin_inset Formula $P_{0}.P_{1}$ +\end_inset + + des points dénotant le point en haut à gauche et le point en bas à droite + du rectangle. + Chaque point, à son tour, est spécifié par une paire d'accolades doubles + +\begin_inset Quotes fld +\end_inset + + +\begin_inset Formula $x,y$ +\end_inset + + +\begin_inset Quotes frd +\end_inset + + précisant la ligne +\begin_inset Formula $x$ +\end_inset + + et la colonne +\begin_inset Formula $y$ +\end_inset + +. + Celles-ci sont suivies des commandes d'encadrement, pour produire par exemple + la figure suivante: +\begin_inset Formula \[ +\xymatrix{A & B\ar@(d,r)[dl]\sp(0.2)\phi\sp(0.7)\psi\save"1,1"."2,1"*+[F=]\frm{}\restore\,\\ +C & \save"1,1"."1,2"*++[F]\frm{}\restore} +\] + +\end_inset + + Ici, le code +\family typewriter + +\backslash +save"1,1"."2,1"*+[F=] +\backslash +frm{} +\backslash +restore +\family default + crée le rectangle doublement encadré, tandis que le code pour le rectangle + supplémentaire horizontal est +\family typewriter + +\begin_inset Newline newline +\end_inset + + +\backslash +save"1,1"."1,2"*++[F] +\backslash +frm{} +\backslash +restore +\family default +. + Ce code peut être placé dans n'importe quelle cellule de la matrice. +\end_layout + +\begin_layout Section +Utilisation de l'éditeur mathématique de LyX +\begin_inset CommandInset label +LatexCommand label +name "sec:math-editor" + +\end_inset + + +\end_layout + +\begin_layout Standard +Au lieu de saisir le code +\family typewriter +xypic +\family default +, puis de le transformer en environnement mathématique en le sélectionnant + et en pressant +\family sans +Ctrl-m +\family default +, ou +\family sans +Ctrl-M +\family default +, il est possible de construire et de modifier la totalité d'un diagramme + +\family typewriter +xypic +\family default + en utilisant l'éditeur mathématique. + Nous allons décrire les différentes étapes pour une figure comme celle + présentée ci-dessus. +\end_layout + +\begin_layout Subsection +Attention à la saisie les accolades +\end_layout + +\begin_layout Standard +Rappelez-vous que, dans l'éditeur mathématique de LyX, toute paire d'accolades + destinée à enclore un paramètre de macro-instruction doit être saisie en + ne tapant que +\family typewriter + +\backslash +{ +\family default + : l'accolade fermante est créée automatiquement et une boîte apparaît entre + elles où saisir le paramètre. + Avec les diagrammes +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +, ceci s'applique en particulier aux modifications des flèches qui sont + normalement saisies par +\family typewriter +@{ +\family default + \SpecialChar \ldots{} + +\family typewriter +} +\family default +, où les points de suspension représentent la description de la forme du + plumage, du corps et du dard: dans l'éditeur mathématique, ne saisissez + que +\family typewriter +@ +\backslash +{ +\family default + et laissez LyX afficher l'accolade fermante et la boîte de saisie destinée + à la description de la flèche. +\end_layout + +\begin_layout Standard +Les accolades saisies sans la barre inclinée +\begin_inset space ~ +\end_inset + + +\family typewriter + +\backslash + +\family default + apparaîtront telles quelles, mais ne pourront accueillir de paramètres. + Elles seront utiles par contre pour désigner des ensembles, par exemple + dans +\family typewriter +{x +\backslash +in X +\backslash +mid x +\backslash +notin x} +\family default + qui va s'afficher ainsi +\begin_inset Formula $\{x\in X\mid x\notin x\}$ +\end_inset + +. +\end_layout + +\begin_layout Subsection +Construction de la matrice +\end_layout + +\begin_layout Standard +En pressant +\family sans +Ctrl-m +\family default + ou +\family sans +Ctrl-M, +\family default + ouvrez un environnement de formule et saisissez : +\family typewriter + +\backslash +xymatrix +\family default +. + Ceci crée une matrice +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +. + Ajoutez des lignes supplémentaires en pressant +\family sans +Ctrl-Enter +\family default + et ajoutez des colonnes en pressant +\family sans +Alt-m c i +\family default +. + +\end_layout + +\begin_layout Standard +Ensuite, vous pourrez ajouter lignes et colonnes quand vous le désirerez, + en utilisant les commandes du menu +\family sans +Éditer\SpecialChar \menuseparator +Math, +\family default + leurs raccourcis qui débutent par +\family sans +Alt-m c +\family default + pour les commandes de colonnes ou par +\family sans +Alt-m w +\family default + pour les commandes de lignes. + Plus simplement, il vous suffira d'utiliser les icônes de la palette mathématiq +ue, en l'activant si ce n'est déjà fait via +\family sans +Visualiser\SpecialChar \menuseparator +Barres d'outils. +\end_layout + +\begin_layout Subsection +Saisie des nœuds, des flèches et des étiquettes +\end_layout + +\begin_layout Standard +Saisissez d'abord les nœuds dans les cases appropriées de la matrice. + Si vous déplacez le curseur en dehors de la matrice, vous devriez avoir + un premier aperçu de l'apparence des nœuds. + Ensuite, ajoutez les flèches depuis les nœuds origines en saisissant +\family typewriter + +\backslash +ar[ +\family default +\emph on +p +\family typewriter +\emph default +] +\family default +, où +\emph on +p +\emph default + peut être n'importe quel chemin construit à partir des caractères +\begin_inset space ~ +\end_inset + + +\family typewriter +u +\family default +, +\family typewriter +d +\family default +, +\family typewriter +l +\family default +, +\family typewriter +r +\family default +. + Vérifiez que le chemin mène bien à un nœud existant dans la matrice, sinon + votre figure ne s'affichera pas quand le curseur sortira de la zone d'édition. +\end_layout + +\begin_layout Standard +Ensuite, étiquetez les flèches en associant un texte en tant qu'indice ou + d'exposant à la fin du chemin décrivant le flèche. + Comme habituellement dans l'éditeur mathématique de LyX, un caractère souligné +\begin_inset space ~ +\end_inset + + +\family typewriter +_ +\family default + ouvre une boîte pour un indice et un caractère accent circonflexe +\begin_inset space ~ +\end_inset + + +\family typewriter +^ +\family default + (suivi éventuellement d'un espace) ouvre une boîte pour un exposant. + Vous pouvez saisir n'importe quel code LaTeX dans une étiquette. +\end_layout + +\begin_layout Subsection +Modification des flèches +\end_layout + +\begin_layout Standard +Finalement, vous pouvez modifier l'apparence des flèches en saisissant les + modificateurs +\begin_inset space ~ +\end_inset + +@: +\family typewriter +@{ +\family default +\SpecialChar \ldots{} + +\family typewriter +} +\family default +, +\family typewriter +@< +\family default +\SpecialChar \ldots{} +>, +\family typewriter +@( +\family default +\SpecialChar \ldots{} +,\SpecialChar \ldots{} +) or +\family typewriter +@/ +\family default +\SpecialChar \ldots{} + +\family typewriter +/ +\family default +. + L'avertissement vu plus haut ne s'applique que dans le premier cas: elle + doit être saisie sous la forme +\family typewriter +@ +\backslash +{ +\family default + avec la description de la flèche saisie dans le boîte LyX. + Si cette boîte reste vide, vous aurez spécifié une flèche vide, ce qui + est une construction utile également, comme vous le verrez dans la section + suivante. +\end_layout + +\begin_layout Standard +Les autres modificateurs, +\family typewriter +@< +\family default +\SpecialChar \ldots{} + +\family typewriter +> +\family default +, +\family typewriter +@( +\family default +\SpecialChar \ldots{} +,\SpecialChar \ldots{} + +\family typewriter +) +\family default +et +\family typewriter +@/ +\family default +\SpecialChar \ldots{} + +\family typewriter +/ +\family default +sont saisis comme indiqué en remplaçant les points de suspension par la + description correspondante. + Le code pour la courbure des flèches, qui dans +\family typewriter +xypic +\family default + est +\family typewriter +@/_mesure/ +\family default +ou +\family typewriter +@/ +\emph on +^ +\emph default +mesure/ +\family default +où +\emph on +mesure +\emph default + est n'importe quelle mesure TeX, doit être saisi en LyX comme l'indice + ou l'exposant de la première barre inclinée +\begin_inset space ~ +\end_inset + +/: vérifiez bien que la barre inclinée finale ne fait pas partie de l'indice + ou de l'exposant. +\end_layout + +\begin_layout Subsection +Quoi faire si quelque chose ne va pas +\end_layout + +\begin_layout Standard +En construisant un diagramme, vous +\series bold +devez +\series default + vérifier de temps en temps, en déplaçant le curseur hors de la zone d'édition, + que l'aperçu la convertit correctement dans sa version graphique. + Si cela ne se produit pas, cela peut venir du fait que l'aperçu n'est pas + +\begin_inset Quotes fld +\end_inset + +conscient +\begin_inset Quotes frd +\end_inset + +, pour une raison ou une autre, de la nécessité de la conversion graphique. + Survoler le zone et ressortir peut +\begin_inset Quotes fld +\end_inset + +réveiller +\begin_inset Quotes frd +\end_inset + + l'aperçu. +\end_layout + +\begin_layout Standard +Une raison plus profonde peut être une erreur de syntaxe dans la saisie: + dans de cas, la zone d'édition mathématique disparaît. + Si nécessaire, défaites les dernières modifications, en pressant +\family typewriter +Ctrl+Z +\family default + ou via l'icône de la barre d'outils principale, ou essayez de traduire + le fichier LyX en +\family typewriter +DVI +\family default + en pressant +\family typewriter +Ctrl +\emph on ++D +\family default +\emph default + ou en sélectionnant +\family sans +View\SpecialChar \menuseparator +DVI +\family default +, ou encore via l'icône de la barre d'outil de création des sorties imprimables. + Ceci provoquera un message d'erreur, qui vous donnera probablement une + indication sur l'origine de l'erreur. + +\end_layout + +\begin_layout Section +Astuces +\end_layout + +\begin_layout Standard +Certaines choses ne fonctionnent pas depuis LyX. + Celles qui manquent (manquaient) le plus sont les mises à l'échelle verticale + et horizontale des diagrammes, et le positionnement correct des flèches. + Nous décrivons ci-après quelques solutions alternatives. +\end_layout + +\begin_layout Subsection +Mises à l'échelle horizontale et verticale +\end_layout + +\begin_layout Standard +Il est fréquemment pratique d'étirer ou de comprimer la dimension horizontale + ou verticale d'un diagramme entier en utilisant l'espacement des lignes + ou des colonnes. + Suivant le manuel +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +, par exemple +\family typewriter + +\backslash +xymatrix@R=1pc{ +\family default +\SpecialChar \ldots{} + +\family typewriter +} +\family default + définit une matrice +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + munie d'un espacement de lignes de 1 pica. + De même, +\family typewriter + +\backslash +xymatrix@C= +\family default +\SpecialChar \ldots{} + +\family typewriter +{ +\family default +\SpecialChar \ldots{} + +\family typewriter +} +\family default + permet de modifier l'espacement entre colonnes. + Malheureusement, ces commandes ne fonctionnent pas encore dans LyX, du + fait que le caractère +\begin_inset space ~ +\end_inset + + +\family typewriter +@ +\family default + est interprété par LyX comme terminant la macro-instruction matrice- +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +. + +\end_layout + +\begin_layout Standard +Sachant que +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + range les valeurs d'espacement pour les lignes et les colonnes dans les + variables +\family typewriter + +\backslash +xymatrixrowsep@ +\family default + et +\family typewriter + +\backslash +xymatrixrowsep@ +\family default +, ajoutez la macro suivante au préambule ( +\family sans +Document\SpecialChar \menuseparator +Paramètres...\SpecialChar \menuseparator + +\family typewriter +Préambule +\family default +): +\begin_inset Newpage pagebreak +\end_inset + + +\end_layout + +\begin_layout LyX-Code + +\backslash +newcommand{ +\backslash +xyR}[1]{% +\end_layout + +\begin_layout LyX-Code + +\backslash +xydef@ +\backslash +xymatrixrowsep@{#1}} +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout Standard +Une macro dénommée +\family typewriter + +\backslash +xyC +\family default + peut être définie de la même manière en remplaçant +\family typewriter + +\backslash +xymatrixrowsep@ +\family default + par +\family typewriter + +\backslash +xymatrixcolsep@ +\family default +. + Maintenant, une figure peut être mise à l'échelle en saisissant +\backslash +xyR{...} dans la matrice +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +. + Placez le curseur dans la matrice, juste avant la première cellule, puis + saisissez +\family typewriter + +\backslash +xyR +\backslash +{ +\family default + ou +\family typewriter + +\backslash +xyC +\backslash +{ +\family default + ou les deux. + N'oubliez pas les barres inclinées inverses et rappelez-vous que l'accolade + fermante est fournie par LyX. + Insérez les dimensions entre les accolades, la valeur implicite étant +\family typewriter +2pt +\family default +. + Vous voyez ici un diagramme qui est compressé verticalement et étiré horizontal +ement à l'aide de +\family typewriter + +\backslash +xyR{9pc} +\backslash +xyC{.5pc} +\family default +: +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +\xyR{.5pc}\xyC{9pc}\xymatrix{A\ar[r]\ar[d] & B\\ +C\ar@{}[ur]|{\text{{étirement\,\ horizontal}}}} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsection +Positionnement des étiquettes +\end_layout + +\begin_layout Standard +Une autre commande +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + utile permet de positionner correctement les étiquettes autour du corps + des flèches. + Cette fonctionnalité est parfois nécessaire, lorsque le positionnement + implicite de l'étiquette perturbe le graphique, ou bien même se superpose + à d'autre éléments, comme les intersections de flèches dans l'exemple ci-après. + Pour déplacer une étiquette le long du corps d'une flèche, +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + permet de préfixer l'étiquette par un nombre décimal entre parenthèses, + spécifiant la fraction de la distance le long de la flèche où positionner + l'étiquette.: par exemple, le code +\family typewriter + +\backslash +ar[r]|(0.3) +\backslash +varphi +\family default + placera l'étiquette sur le corps, à peu près au tiers du corps de la flèche. +\end_layout + +\begin_layout Standard +Procéder de même pour les étiquettes au-dessus ou au-dessous des flèches + comme avec +\family typewriter + +\backslash +ar[dr]^(0.3) +\backslash +varphi, +\family default + respectivement +\family typewriter + +\backslash +ar[ur]_(0.3) +\backslash +phi +\family default +, ne fonctionne pas depuis LyX. + 0 la place, il faut remplacer l'accent circonflexe +\begin_inset space ~ +\end_inset + +^, resp. + le caractère souligné +\begin_inset space ~ +\end_inset + +_, par les macros +\family typewriter + +\backslash +sp +\family default +, resp. + +\family typewriter + +\backslash +sb +\family default +, ce qui s'écrit +\family typewriter + +\backslash +ar[dr] +\backslash +sp(0.3) +\backslash +varphi +\family default +et +\family typewriter + +\backslash +ar[ur] +\backslash +sb(0.3) +\backslash +phi. + +\family default +Il est de ce fait possible d'insérer plusieurs étiquettes le long du chemin + par cette méthode et les positionnement des étiquettes est correct, même + si la flèche est courbée. + Dans la figure suivante, la flèche courbe et ses quatre étiquettes a été + créée par +\family typewriter + +\backslash +ar@(r,r)[d] +\backslash +sp(0.2){ +\backslash +phi_{1}} +\backslash +sp(0.4){ +\backslash +phi_{2}} +\backslash +sb(0.6){ +\backslash +phi_{3}} +\backslash +sp(0.8){ +\backslash +phi_{4}}. +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +\xyC{4pc}\xymatrix{\bullet\ar[dr]\sp(0.3)\varphi & \circ\ar@{}[d]|\vdots\ar@(r,r)[d]\sp(0.2){\phi_{1}}\sp(0.4){\phi_{2}}\sb(0.6){\phi_{3}}\sp(0.8){\phi_{4}}\\ +\circ\ar[ur]\sb(0.3)\phi & \bullet} +\] + +\end_inset + + +\end_layout + +\begin_layout Subsection +Flèches étirées invisibles +\end_layout + +\begin_layout Standard +Une astuce plus générique utilise les flèches invisibles pour placer n'importe + quel objet à peu près partout dans un diagramme: créer une flèche invisible, + la raccourcir (ou l'allonger) en deçà ou au-delà de sa cible en ajoutant + un nombre décimal, e. +\begin_inset space \thinspace{} +\end_inset + +g. + +\family typewriter +(0.6) +\family default + ou +\family typewriter +(1.4) +\family default +, à son chemin, et attacher une étiquette à la flèche. + +\end_layout + +\begin_layout Standard +De cette façon, la flèche pointant vers la bas avec son étiquette +\begin_inset space ~ +\end_inset + + +\begin_inset Formula $\varphi$ +\end_inset + + à +\begin_inset space ~ +\end_inset + +(0.3) de sa longueur aurait aussi bien pu être produite en ajoutant à la + flèche normale +\family typewriter + +\backslash +ar[dr] +\family default +une flèche invisible étiquetée par +\begin_inset space ~ +\end_inset + + +\begin_inset Formula $\varphi$ +\end_inset + + +\family typewriter + +\backslash +ar@{}[dr(0.6)]^ +\backslash +varphi +\family default +, restreinte à 0.6 de sa longueur: son étiquette apparaîtra maintenant à + 0.3 de la longueur de la flèche normale. +\end_layout + +\begin_layout Standard +Cette astuce a deux inconvénients mineurs: d'abord, elle ne fonctionne pas + avec les flèches courbes; ensuite, prolonger une flèche invisible au-delà + de la dimension normale de la figure va élargir la boîte contenant la figure, + et donc créer trop d'espacement vertical entre la figure et le paragraphe + suivant ou le paragraphe précédent (sauf a créer un espacement négatif + à l'aide de +\family sans +Insérer\SpecialChar \menuseparator +Typographie spéciale\SpecialChar \menuseparator + +\family typewriter +Espacement vertical +\family default +). +\end_layout + +\begin_layout Standard +Néanmoins, les flèches invisibles constituent un outil très utile puisqu'elles + permettent de placer théoriquement des informations n'importe où dans un + diagramme. + Dans la figure ci-dessus, par exemple, nous avons utilisé une flèche invisible + pour importer +\family typewriter + +\backslash +vdots +\family default + comme étiquette, et dans la figure précédente nous avions utilisé une flèche + invisible pour importer le texte +\family typewriter + +\begin_inset Quotes fld +\end_inset + +Étirement horizontal +\family default + +\begin_inset Quotes frd +\end_inset + + au centre de la figure. +\end_layout + +\begin_layout Subsection +Autres astuces pour +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Nous nous sommes concentrés ici sur la commande +\family typewriter + +\backslash +xymatrix +\family default +, qui n'est qu'une des fonctionnalités disponibles dans le remarquable paquetage +\begin_inset space ~ +\end_inset + + +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + +\family default + créé par Kris +\noun on +Rose +\noun default +. + Le manuel +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\family default +-pic +\begin_inset CommandInset citation +LatexCommand cite +key "xypic manual" + +\end_inset + + illustre les nombreuses possibilités de ce paquetage. + Attention cependant, son style est laconique et vous devrez sans doute + expérimenter en modifiant les nombreux exemples. + Lauda +\begin_inset CommandInset citation +LatexCommand cite +key "Lauda" + +\end_inset + + explique comment utiliser +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + +-pic pour créer des tresses, des diagrammes de cobordisme ou de chaînes, + et bien plus. + Une bonne introduction, assez systématique, aux matrices +\begin_inset space ~ +\end_inset + + +\family typewriter + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy{} +\end_layout + +\end_inset + + +\family default + est +\begin_inset CommandInset citation +LatexCommand cite +key "Ouvaton" + +\end_inset + + (même si comme moi vous ne parlez ni ne lisez l'espéranto, vous pourrez + comprendre l'essentiel). + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "1" +key "xypic manual" + +\end_inset + +Kristoffer H. + +\noun on +Rose +\noun default +: +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\emph on +-pic User's Guide +\emph default +. + Version 3.7, Feb. + 16, 1999. + Disponible avec le paquetage LaTeX +\family typewriter +xypic +\family default +. + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "2" +key "instant-preview" + +\end_inset + + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.tug.org/tex-archive/help/Catalogue/entries/preview-latex.html +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "3" +key "xypic" + +\end_inset + + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.tug.org/tex-archive/help/Catalogue/entries/xypic.html +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "4" +key "AUCTeX" + +\end_inset + + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.gnu.org/software/auctex/ +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "5" +key "Lauda" + +\end_inset + +Aarlon +\noun on +Lauda +\noun default +: +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\emph on +-pic +\emph default + +\emph on +tutorial with an archive of examples +\emph default +. +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.dpmms.cam.ac.uk/~al366/xytutorial.html +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +label "6" +key "Ouvaton" + +\end_inset + +Filipp Ouv +\noun on +a +\noun default +ton: +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +Xy +\end_layout + +\end_inset + + +\emph on +-pic +\emph default +: +\emph on +Enkonduko pri Xymatrix +\emph default +. + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://filip.ouvaton.org/xypic/xymatrix/index.html +\end_layout + +\end_inset + + +\end_layout + +\end_body +\end_document diff --git a/lib/examples/xypic.lyx b/lib/examples/xypic.lyx index 3d9e6249a4..3ebfd31ca8 100644 --- a/lib/examples/xypic.lyx +++ b/lib/examples/xypic.lyx @@ -6,7 +6,6 @@ \begin_preamble \usepackage[all]{xy} - % define new commands used in sec. 5.1 \newcommand{\xyR}[1]{ \xydef@\xymatrixrowsep@{#1}} @@ -76,7 +75,6 @@ \output_changes false \author "" \author "" -\author "" \end_header \begin_body @@ -194,7 +192,7 @@ xypic \align center \begin_inset Graphics filename xyfigure.png - scale 50 + width 75col% BoundingBox 0bp 0bp 580bp 440bp clip