1
0
Fork 0
doc/devel/scheme/bibliography/bibliography.fr.tm

331 lines
11 KiB
Plaintext
Raw Normal View History

2011-08-28 15:59:50 +08:00
<TeXmacs|1.0.7.3>
<style|tmdoc>
<\body>
<tmdoc-title|Styles bibliographiques pour <TeXmacs>>
<section|Styles bibliographiques>
Il est possible d'associer <20> une bibliographie BibTeX un ou plusieurs
styles, qu'ils soient standards ou personnalis<69>s. Les styles BibTeX sont
d<>not<6F>s par leur nom usuel. Les styles personnalis<69>s propres <20> <TeXmacs>
sont syst<73>matiquement pr<70>fix<69>s par <verbatim|tm-> (par exemple, le syle
<verbatim|tm-plain> correspond au style <verbatim|plain> de <TeXmacs>).
D'autres styles peuvent <20>tre ajout<75>s dans le r<>pertoire
<verbatim|$TEXMACS_PATH\\prog\\bibtex>.
Pour l'<27>diteur, chaque style correspond <20> un fichier <verbatim|.scm>. Les
fichiers correspondant <20> chaque style sont trait<69>s comme des programmes
Scheme ordinaire : il est n<>cessaire de respecter scrupuleusement
l'utilisation des fonctions sp<73>cifiques aux styles bibliographiques.
<section|Styles BibTeX>
Actuellement, les styles BibTeX suivants ont <20>t<EFBFBD> impl<70>ment<6E>s :
<verbatim|abbrv>, <verbatim|alpha>, <verbatim|ieeetr>, <verbatim|plain> et
<verbatim|siam>. Leur utilisation ne n<>cessite pas l'installation de
BibTeX.
<section|Cr<43>ation de styles bibliographiques>
Si les fichiers de style standards de <TeXmacs> ne sont pas adapt<70>s <20> vos
besoins, vous pouvez en cr<63>er d'autres. N<>anmoins, la cr<63>ation d'un fichier
de style <20> partir de rien est une t<>che complexe. Nous vous recommandons
donc de vous servir des fichiers de style ou des modules existants ou de
les personnaliser.
<subsection|<7C>tude d'un exemple>
Un fichier de style bibliographique est un<with|font-shape|italic|> fichier
plac<61> dans le r<>pertoire <verbatim|$TEXMACS_PATH/prog/bibtex> portant le
nom du style suivi de l'extension <verbatim|.scm>, par exemple
<verbatim|example.scm> pour un style <verbatim|example> ; ce dernier sera
d<>not<6F> par <verbatim|tm-example> lors de son utilisation dans un document
<TeXmacs>.
Tout fichier de style doit se d<>clarer en tant que module <20> l'aide de la
d<>claration suivante :
<\scm-fragment>
(texmacs-module (bibtex example)
\ \ (:use (bibtex bib-utils)))
</scm-fragment>
Le module <verbatim|bib-utils> contient toutes les fonctions n<>cessaires <20>
la r<>dation et <20> l'interpr<70>tation d'un fichier de style bibliographique.
Tout fichier de style doit se d<>clarer en tant que style bibliographique <20>
l'aide de la commande suivante :
<scm-fragment|(bib-define-style "example" "plain")>
Le premier param<61>tre de la fonction <scm|bib-define-style> est le nom du
style courant, et le second param<61>tre est le nom du style par d<>faut,
<verbatim|plain> dans notre cas. Si une fonction n'est pas d<>finie dans le
style courant, la version du style par d<>faut est alors utilis<69>e
automatiquement.
Ainsi, notre fichier de style minimal a l'aspect suivant :
<\scm-fragment>
(texmacs-module (bibtex example)
\ \ (:use (bibtex bib-utils)))
\;
(bib-define-style "example" "plain")
</scm-fragment>
Chaque fonction de formatage d<>finie dans le style par d<>faut peut <20>tre
surcharg<72>e dans le fichier de style courant. Par exemple, la fonction de
formatage de la date dans le style <verbatim|plain> s'appelle
<scm|bib-format-date> ; elle red<65>finissable dans notre style de la mani<6E>re
suivante :
<\scm-fragment>
(tm-define (bib-format-date e)
\ \ (:mode bib-example?)
\ \ (bib-format-field e "year"))
</scm-fragment>
Toute fonction export<72>e doit <20>tre pr<70>fix<69>e par <verbatim|bib->. Une
fonction surcharg<72>e doit <20>tre suivie de la directive <scm|(:mode
bib-example?)>, dans laquelle <verbatim|example> est le nom du style en
cours.
Voici maintenant <20> quoi ressemble notre fichier de style
<verbatim|example.scm> :
<\scm-fragment>
(texmacs-module (bibtex example)
\ \ (:use (bibtex bib-utils)))
\;
(bib-define-style "example" "plain")
\;
(tm-define (bib-format-date e)
\ \ (:mode bib-example?)
\ \ (bib-format-field e "year"))
</scm-fragment>
<subsection|Fonctions utiles pour la cr<63>ation de fichiers de style>
<\explain>
<scm|(bib-abbreviate name dot spc)><explain-synopsis|abbr<62>viation d'un
nom>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> correspondant <20> l'abbr<62>viation du
nom contenu dans <scm|name> (un arbre <TeXmacs>) : on r<>cup<75>re la liste
des premi<6D>res lettres de chaque mot, suivi de <scm|dot> (un arbre
<TeXmacs>) et s<>par<61>es par <scm|spc> (un arbre <TeXmacs>).
</explain>
<\explain>
<scm|(bib-add-period tm)><explain-synopsis|ajout d'un point>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> en ajoutant un point <20> la fin de
l'arbre <TeXmacs> <scm|tm>.
</explain>
<\explain>
<scm|(bib-default tm)><explain-synopsis|arbre <TeXmacs> par d<>faut>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> sans occurence du label
<verbatim|keepkase>.
</explain>
<\explain>
<scm|(bib-define-style name default)><explain-synopsis|d<>claration d'un
style>
<|explain>
Cette fonction d<>clare un style nomm<6D> <scm|name> (de type string) avec
<scm|default> (de type string) le style par d<>faut. Le style est alors
s<>lectionn<6E> en choisissant <verbatim|tm-><scm|name> lors de l'ajout d'une
bibliographie <20> un document. Quand une fonction de formatage n'est pas
d<>finie dans le style, celle du style <scm|default> est <20>valu<6C>e en
remplacement.
</explain>
<\explain>
<scm|(bib-emphasize tm)><explain-synopsis|mise en italique>
<|explain>
Cette fonction renvoie un arbre <TeXmacs> correspondant <20> la mise en
italique de l'abre <TeXmacs> <scm|tm>.
</explain>
<\explain>
<scm|(bib-empty? entry field)><explain-synopsis|test <20> z<>ro d'un champ>
<|explain>
Cette fonction renvoie le bool<6F>en <scm|#t> si le champ de l'entr<74>e
<scm|entry> dont le nom est <scm|field> (de type string) est vide ou
inexistant ; elle renvoie <scm|#f> dans le cas contraire.
</explain>
<\explain>
<scm|(bib-field entry field)><explain-synopsis|r<>cup<75>ration d'un champ>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> correspondant au contenu du champ
de l'entr<74>e <scm|entry> dont le nom est <scm|field> (de type string),
sans aucun formatage. Dans certains cas, une donn<6E>e sp<73>cifique est
renvoy<6F>e :
<\itemize-dot>
<item>si <scm|field> est <20>gal <20> <scm|"author"> ou <scm|"editor">, la
donn<6E>e renvoy<6F>e est un arbre dont le label est <verbatim|bib-names>,
contenant une liste de noms d'auteurs ; chaque nom d'auteur est un
arbre dont le label est <verbatim|bib-name> et qui contient quatre
<20>l<EFBFBD>ments, dans l'ordre : le pr<70>nom, la particule, le nom et un
qualificatif (junior ou senior).
<item>si <scm|field> est <20>gal <20> <scm|"page">, la donn<6E>e contient une
liste d'entiers : soit une liste vide, soit un singleton contenant la
page r<>f<EFBFBD>renc<6E>e, soit un couple d<>notant l'intervalle des pages
r<>f<EFBFBD>renc<6E>es.
</itemize-dot>
</explain>
<\explain>
<scm|(bib-format-field entry field)><explain-synopsis|formatage basique
d'un champ>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> correspondant au contenu du champ
de l'entr<74>e <scm|entry> dont le nom est <scm|field> (de type string),
avec un formatage basique.
</explain>
<\explain>
<scm|(bib-format-field-Locase entry field)><explain-synopsis|formatage
sp<73>cial d'un champ>
<|explain>
Cette fonction est similaire <20> la fonction <scm|bib-format-entry> ; mais
le champ est format<61> en minuscules, avec une majuscule en t<>te.
</explain>
<\explain>
<scm|(bib-locase tm)><explain-synopsis|mise en minucule>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> en mettant en minuscule toutes les
lettres de l'arbre <TeXmacs> <scm|tm>, sauf celles englob<6F>es dans un bloc
<verbatim|keepkase>.
</explain>
<\explain>
<scm|(bib-new-block tm)><explain-synopsis|nouveau bloc>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> consistant en un bloc contenant
l'arbre <TeXmacs> <scm|tm>.
</explain>
<\explain>
<scm|(bib-new-list sep ltm)><explain-synopsis|liste s<>par<61>e>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> en concat<61>nant tous les <20>l<EFBFBD>ments
de la liste <scm|ltm> (ses <20>l<EFBFBD>ments sont des arbres <TeXmacs>) en les
s<>parant par l'arbre <TeXmacs> <scm|sep>.
</explain>
<\explain>
<scm|(bib-new-list-spc ltm)><explain-synopsis|liste s<>par<61>e par des
blancs>
<|explain>
Cette fonction est <20>quivalente <20> l'appel de <scm|(bib-new-list " " ltm)>.
</explain>
<\explain>
<scm|(bib-new-sentence ltm)><explain-synopsis|nouvelle phrase>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> correspondant <20> une phrase
correctement ponctu<74>e, contenant tous les <20>l<EFBFBD>ments de la liste <scm|ltm>
(ses <20>l<EFBFBD>ments sont des arbres <TeXmacs>) s<>par<61>s par des virgules.
</explain>
<\explain>
<scm|(bib-null? v)><explain-synopsis|test <20> z<>ro>
<|explain>
Cette fonction renvoie le bool<6F>en <scm|#t> si la valeur <scm|v> est vide
(<with|font-shape|italic|i.e.> la donn<6E>e vide correspondant <20> son type,
comme la liste vide pour le type list) ; elle renvoie <scm|#f> dans le
cas contraire.
</explain>
<\explain>
<scm|(bib-prefix tm nbcar)><explain-synopsis|pr<70>fix d'un arbre <TeXmacs>>
<|explain>
Cette fonction renvoie une cha<68>ne de caract<63>res contenant les <scm|nbcar>
premiers caract<63>res de l'arbre <TeXmacs> <scm|tm>.
</explain>
<\explain>
<scm|(bib-purify tm)><explain-synopsis|applatissement d'un arbre
<TeXmacs>>
<|explain>
Cette fonction cr<63>e une cha<68>ne de caract<63>res <20> partir des suites de
lettres de l'arbre <TeXmacs> <scm|tm>.
</explain>
<\explain>
<scm|(bib-simplify tm)><explain-synopsis|simplification d'un arbre
<TeXmacs>>
<|explain>
Cette fonction renvoie un arbre <TeXmacs> correspondant <20> la
simplification de l'abre <TeXmacs> <scm|tm>, c'est-<2D>-dire la
concat<61>nation des cha<68>nes de caract<63>res adjacentes, l'<27>limination des
n<>uds inutiles, etc.
</explain>
<\explain>
<scm|(bib-text-length tm)><explain-synopsis|longueur d'un arbre
<TeXmacs>>
<|explain>
Cette fonction renvoie le nombre de caract<63>res de l'arbre <TeXmacs>
<scm|tm>.
</explain>
<\explain>
<scm|(bib-translate msg)><explain-synopsis|traduction>
<|explain>
Cette fonction traduit le message <scm|msg> (de type string) de l'anglais
vers la langue du document en cours d'<27>dition.
</explain>
<\explain>
<scm|(bib-upcase tm)><explain-synopsis|mise en majuscule>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> en mettant en majuscule toutes les
lettres de l'arbre <TeXmacs> <scm|tm>, sauf celles englob<6F>es dans un bloc
<verbatim|keepkase>.
</explain>
<\explain>
<scm|(bib-upcase-first tm)><explain-synopsis|majuscule en t<>te>
<|explain>
Cette fonction cr<63>e un arbre <TeXmacs> en mettant en majuscule la
premi<6D>re lettre de l'arbre <TeXmacs> <scm|tm>, sauf si elle est englob<6F>e
dans un bloc <verbatim|keepkase>.
</explain>
<\explain>
<scm|(bib-with-style style expr)><explain-synopsis|style local>
<|explain>
Cette fonction ex<65>cute l'expression <scm|expr> comme si le style en cours
<20>tait <scm|style> (de type string).
</explain>
</body>
<\initial>
<\collection>
<associate|language|french>
<associate|preamble|false>
</collection>
</initial>