6- Les macros d'impression
Les macros sont obtenues en tapant sur F5 puis sur une touche, elles
contiennent un certain nombre d'éléments séparés généralement
par des macro espaces (obtenus en tapant F5 puis espace). Ces éléments
peuvent euxmêmes contenir des macros
.
[note]
Dans certains cas (matrices accolades et listes) des séparateurs de
ligne (F5 puis virgule) et des terminateurs (F5 puis point) sont utilisés.
Les éventuels arguments numériques sont délimités de la
même façon que pour les commandes. Certains paramètres cosmétiques
des macros sont modifiables par le menu «Options» (cf chapitre cidessus).
l'élément exp
est décalé vers le haut de telle façon que le bord inférieur
descende un peu en dessous du haut du caractère générique
de la fonte active au moment où la macro est rencontrée. Exemple :
![[formule]](img225.gif)
l'élément exp
est décalé vers le bas de telle façon que le bord supérieur
monte un peu en dessus du bas du caractère générique de
la fonte active au moment où la macro est rencontrée. Exemple :
![[formule]](img229.gif)
combine les deux opérations
précédentes au même niveau (pour se souvenir de l'ordre,
penser à l'ordre alphabétique ... e f g h i ...).
Exemple :
![[formule]](img233.gif)
fabrique une fraction de
numérateur num et dénominateur den. Exemple :
![[formule]](img237.gif)
fabrique une flèche
de limite avec cnd au dessus, var en dessous. Exemple :
f(t,x)
g(x) ![[formule]](img241.gif)
fabrique un sigma avec inf
dessous et sup dessus. Exemple :
i
![[formule]](img246.gif)
fabrique un pi avec inf
dessous et sup dessus. Exemple :
(i+1) ![[formule]](img250.gif)
fabrique une union avec
inf dessous et sup dessus. Exemple :
E
![[formule]](img255.gif)
fabrique une intersection
avec inf dessous et sup dessus. Exemple :
E
![[formule]](img260.gif)
fabrique une intégrale
avec inf en bas à droite et sup en haut à droite.
Exemple :
f(t)dt ![[formule]](img264.gif)
fabrique une racine avec
rad dedans. Exemple :
![[formule]](img269.gif)
fabrique un conjugué
de sur. ATTENTION : cette macro est avec Y la seule pour laquelle
il est obligatoire d'utiliser une majuscule (la macro x est la juxtaposition
horizontale). Exemple :
![[formule]](img273.gif)
fabrique sou souligné.
Exemple :
![[formule]](img277.gif)
met inf sous et sup
sur ope continue à droite de ope. Permet de réaliser
des opérateurs style sigma. Exemple :
f(i) ![[formule]](img281.gif)
met les lignes les unes
au dessus des autres, espacées de l'interligne incompressible (commande
), en les justifiant
en fonction de la justification en cours à l'appel de la macro.
t est un entier désignant le style : 0=sans rien
1=avec accolade 2=avec vermicelle
[note]
3=avec barre verticale 4=avec crochet 5=avec parenthèse. Exemple :
![[formule]](img290.gif)
met les lignes les unes
au dessus des autres, sans espacement vertical, en les justifiant en fonction
de la justification en cours à l'appel de la macro. t est un entier
désignant le style : 0=sans rien 1=entre crochet 2=entre parenthèses
3=entre barres -1=crochet à gauche -2=parenthèse à gauche
-3=barre à gauche. La différence avec la macro précédente
est que les lignes sont collées les unes au dessus des autres. Exemple :
![[formule]](img297.gif)
à p lignes et n colonnes.
t décrit le type d'encadrement : 0=sans rien 1=entre
crochets 2=entre parenthèses 3=entre barres verticales 4=dans un cadre
5=tableau en colonnes 6=tableau en lignes 7=tableau en cases. Si t=5,
6 ou 7 une colonne ou une ligne vide produit une ligne épaisse.
L'espacement vertical est donné par la commande
si l'encadrement est 0, 1, 2, 3, 4 ou 5, sinon, l'espacement vertical
est nul (limité par le cadre). L'espacement horizontal est un espace
de la fonte courante si l'encadrement est 0,1,2,3,4 ou 6, sinon l'espacement
horizontal est nul (limité par le cadre). Les éléments peuvent
être justifiés indépendamment les uns des autres avec la
convention suivante : La justification d'un élément se propage
par défaut à tous les éléments en dessous et à
droite de lui. Exemples :
![[formule]](img302.gif)
![[formule]](img304.gif)
![[formule]](img305.gif)
met exp en exposant
de la dernière lettre, une formule étant assimilée à
une lettre, cela permet de mettre un exposant à une formule. Exemple :
![[formule]](img308.gif)
![[formule]](img310.gif)
met ind en indice
de la dernière lettre, une formule étant assimilée à
une lettre, cela permet de mettre un indice à une formule. Exemple :
![[formule]](img313.gif)
![[formule]](img315.gif)
et
de taille n (entier positif
ou nul) soit n+1 fois la hauteur du caractère générique
de la fonte 1. Exemple :
![[formule]](img319.gif)
![[formule]](img320.gif)
![[formule]](img321.gif)
![[formule]](img322.gif)
![[formule]](img323.gif)
![[formule]](img325.gif)
et
de taille n (entier positif
ou nul) soit n+1 fois la hauteur du caractère générique
de la fonte 1. Exemple :
![[formule]](img329.gif)
![[formule]](img330.gif)
![[formule]](img331.gif)
![[formule]](img332.gif)
![[formule]](img333.gif)
![[formule]](img335.gif)
et
de taille n (entier positif
ou nul) soit n+1 fois la hauteur du caractère générique
de la fonte 1. Les caractères L ou J utilisés sont mnémotechniques,
l'empattement du L comme du J rappelle le sens du trait inférieur
du crochet ouvrant ou fermant. Exemple :
![[formule]](img339.gif)
![[formule]](img340.gif)
![[formule]](img341.gif)
![[formule]](img342.gif)
![[formule]](img343.gif)
![[formule]](img345.gif)
de c au dessus de C. Les deux caractères
sont espacés de façon constante. La macro peut être immédiatement
précédée d'un changement de couleur ou de fonte. ATTENTION :
cette macro est nécessairement en minuscule. Exemple :
,
et
![[formule]](img351.gif)
de c à la droite de C. Les deux caractères sont soudés.
ATTENTION : cette macro est nécessairement en minuscule. Cette
macro est influencée par les options
,
21 et 27. Exemple :
L
titia
uvre
dans
![[formule]](img358.gif)
de c et de C. L'espacement dans le mot est
celui de C. ATTENTION : cette macro est nécessairement en majuscule.
Exemple :
![[formule]](img363.gif)
permet de traiter tout un
texte comme s'il s'agissait d'une seule lettre. l est sa
largeur et h est sa hauteur minimale : si le texte
est moins haut que h il est centré verticalement au
milieu du bloc. L'alinéa peut être modifié dans la macro,
mais les alinéas négatifs ne sortent pas du bloc. Le texte peut
contenir des macro ou des commandes quelconques, sous la restriction que
(1) les commandes de coupe optionnelle, coupe avec tiret, chasse ligne,
retour à la ligne et superespace (
,
,
,
et
)
sont changées respectivement en macros de même nom (
,
,
,
et
)
(2) les commandes de saut de lignes et saut de page conditionnel
ou à la page impaire (
,
,
et
) sont interdites.
(3) La justification ainsi que les marges additionnelles utilisées
pour une ligne sont celles au niveau du
,
ou
.
(4) Certaines erreurs dans le texte peuvent être détectées
tardivement quand on donne la largeur du bloc : en particulier, les
mots trop longs, les alinéas ou les tabulations trop larges ne sont
détectés qu'après coup. Attention aussi aux macros non fermées
qui se «referment» sur la coupe optionnelle suivante.
similaire à la macro
précédente mais sur plusieurs colonnes de longueur approximativement
égales.
(si t>0) ou sur (si
t<0) le texte avec un grand caractère de regroupement (comme pour
la macro | c'est-à-dire 1=accolade, 2=trait ondulé 3=barre 4=crochet
et 5=parenthèse). Le bloc correspondant est ajusté dans la ligne
sans tenir compte de la largeur du commentaire, ni de celle du caractère
de regroupement. Le caractère de regroupement a une taille arrondie
au multiple de la hauteur de la fonte auxiliaire le plus proche.
Ceci
un
de macro W ![[formule]](img389.gif)
sur, au dessus et en dessous
de la ligne.
![[formule]](img392.gif)
sur, au dessus et en dessous
de la ligne. Si l ou h est nul, le pavé est invisible, mais il
occupe toujours de la place. Un tel pavé «invisible» peut
être utilisé pour repousser des éléments voisins. On
peut par exemple utiliser un tel pavé au dessus de la ligne avec
un déplacement de bloc (cf ci-dessous) pour accrocher les titres
de chapitres au premier paragraphe du chapitre (il suffit de taper le
titre juste au début du premier paragraphe et de le déplacer
vers le haut et d'ajouter un trait invisible qui monte au dessus de
la ligne d'un peu plus du décalage vertical. Une macro utilisateur
peut être définie pour faire cela de façon automatique).
![[formule]](img395.gif)
place derrière le bloc,
un pavé de la couleur courante (au moment du
final) dont les coins sont arrondis au rayon r (si 0 les
coins sont carrés) et décalé de dx vers la
droite et dy vers le bas (dx et dy
pouvant être négatifs). Si la macro est en majuscule (
)
le bloc résultat est plus grand de l'épaisseur d'un trait. Cette
macro sert à fabriquer des boîtes de titre et leurs ombres exemples :
![[formule]](img401.gif)
![[formule]](img403.gif)
Cette macro met une ombre
aux objets qu'elle contient. L'ombre est de la couleur courante au niveau
du
final,
et elle est déplacée de dx, dy (positifs
vers la droite et le bas). A la différence de la précédente,
elle ombre les composantes de l'objet et non pas le bloc. Comme elle
duplique le contenu du bloc, il vaut mieux utiliser la commande précédente
s'il faut ombrer un objet de forme rectangulaire (bloc avec fond ou image).
Exemples :
![[formule]](img408.gif)
![[formule]](img410.gif)
Le bloc inclus est positionné
en x et en y. Le positionnement peut être
relatif à la position courante, sinon c'est la distance entre le
bloc et les bords de la feuille (bord gauche/haut si x>0 et bord
droit/bas si x<0). Si t=0 ou 4 x et y
sont relatifs à la position courante, si t=1 y
seul est relatif, si t=2 x seul est relatif
et si t=3 aucun des deux n'est relatif. Cette fonction
est utilisable pour ajuster une position ou (avec la commande
)
pour placer un bloc arbitrairement dans la page
[note]
. La différence entre t=0 et 4 réside dans le
fait que si t
0
le bloc ne prend pas de place dans la ligne courante (ce qui permet
de déplacer un bloc de façon importante sans distordre la ligne
courante. Par exemple, dans le texte illustrant le chasse ligne, les trois
points colorés sont tapés au début de la phrase «Cette
commande permet...» avec t=4. Avec t=0,
les lignes voisines auraient été écartées et le début
de la phrase décalé vers la droite.
Exemple
de note marginale.
![[formule]](img418.gif)
Le bloc inclus est tourné
d'un angle a (entier en ° dans le sens antihoraire) et repositionné
en x et y. L'argument t à
la même signification que pour la macro précedente.
Exemple
de note tournée.
![[formule]](img422.gif)
substitué avant lecture
par le texte défini par la commande
correspondante. Noter (1) que les arguments sont terminés par des
caractères ; car les arguments peuvent ne contenir qu'une partie de
macro. (2) le corps d'une macro doit être contenu sur une seule
ligne physique, il vaut donc mieux définir une macro utilisateur «début»
et une autre macro utilisateur «fin» pour les opérations
devant contenir beaucoup de texte. (3) un argument peut éventuellement
contenir une autre macro utilisateur. (4) Si une erreur se produit
pendant l'expansion d'une macro, la ligne physique après extension
jusqu'au point d'erreur est mise dans le tampon ins/del. Il suffit d'enfoncer
la touche [Ins] sur une ligne vide pour voir la ligne déroulée
jusqu'au niveau de l'erreur (attention aux ligatures éventuellement
substituées et aux points de césures insérés automatiquement
qui apparaissent comme une commande
)
,
,
La première forme met le compteur numéro c à
la valeur n, les suivantes incrémentent/décrémentent
le compteur c de n. Les numéros de compteurs
vont de 1 à 9
[note]
.
,
,
Formes équivalentes aux précédentes sauf que les compteurs
sont en chiffres romains (limités à 5000) après l'opération.
Les macros
ci-dessus remettent le compteur en chiffres arabes.
,
,
Formes équivalentes aux précédentes sauf que les compteurs
sont en lettres capitales (1=A, B ... Z, A', B' ... Z',A", B" ... Z"=78)
après l'opération. Les macros
ou
ci-dessus
remettent le compteur en chiffres arabes ou romains respectivement.
,
,
Formes équivalentes aux précédentes sauf que les lettres sont
en minuscule (1=a, b ... z, a', b' .... z', a" ... z"=78).
numéro c. (c=0 est permis, le numéro
de page courante est inséré, mais attention, la première
ligne d'une page est généralement calculée pendant la page
précédente...
Une constante a un nom de 9 caractères au plus ne commençant
pas par un chiffre. (c=0 est permis, mais déconseillé
pour la même raison qu'au dessus).
de la constante.
page suivante . . . . . . . . . . . . . table des matières