DESCRIPTION :

  Cette archive contient des fichiers permettant de d'assister l'dition du code
  Caml, de colorer les parties importantes du code, d'excuter un toplevel Caml
  et d'excuter le dbogueur Caml avec GNU Emacs/XEmacs. Elle a t conue pour
  Objective Caml, mais elle supporte galement le code Camllight.


CONTENU :

  README             Version anglaise de ce fichier;
  LISEZMOI           Ce fichier;
  HISTORY            Changements par rapport  la version prcdente;
  tuareg.el          Un mode majeur pour diter du code Caml avec Emacs/XEmacs
  sym-lock.el        Une extension permettant d'afficher les symboles sous
                     XEmacs;
  camldebug.el       Permet d'excuter le dbogueur Caml sous Emacs;
  append-tuareg.el   Fichier de configuration pour une installation rapide;
  custom-tuareg.el   Exemple de personnalisation de Tuareg.

INSTALLATION :

  Si vous avez les droits d'criture sur le rpertoire site-lisp d'Emacs ou
  d'XEmacs, il vous suffit d'y copier les fichiers tuareg.el, camldebug.el
  et sym-lock.el (Sym-Lock ne fonctionnant qu'avec XEmacs).

  Sinon, choisissez un rpertoire, par exemple toto, et copiez y les trois
  fichiers tuareg.el, camldebug.el et sym-lock.el. Ensuite, ajoutez la
  ligne suivante dans votre .emacs en remplaant toto par le chemin complet
  du rpertoire choisi :

  (setq load-path (cons "toto" load-path))

CONFIGURATION RAPIDE :

  Si vous n'tes pas familier avec Emacs-Lisp, et que voulez utiliser
  Tuareg sans plus tarder, concatnez (ou copiez) `append-tuareg.el' 
  votre fichier de configuration `.emacs'. Cela permet  XEmacs de
  charger automatiquement Tuareg et Sym-Lock.

  Pensez  modifier votre fichier de configuration `.emacs'  la main si vous
  avez dj install Tuareg.

CONFIGURATION MANUELLE :

  Ajoutez les lignes suivantes dans votre fichier `.emacs' :

  (setq auto-mode-alist (cons '("\\.ml\\w?" . tuareg-mode) auto-mode-alist))
  (autoload 'tuareg-mode "tuareg" "Mode majeur pour diter du code Caml" t)
  (autoload 'camldebug "camldebug" "Excuter le dbogueur Caml" t)

  Le mode majeur Tuareg est charg automatiquement lorsqu'on visite un fichier
  avec l'extension .ml, .mli, .mly, .mll, .mlp... ou manuellement en tapant 
  M-x tuareg-mode. Cela permet  Emacs de reconnatre correctement la
  syntaxe Caml.

  Si vous utilisez XEmacs, le mode mineur Font-Lock est utilis conformment 
  vos paramtres de personnalisation.

  Dans Emacs, vous pouvez utiliser Font-Lock en rajoutant les lignes
  suivantes  votre fichier de configuration :

  (if (and (boundp 'window-system) window-system)
      (require 'font-lock))

  Avec XEmacs (et plus gnralement, si vous avez des polices de
  taille variable et si la librairie `atomic-extents' est supporte),
  vous pouvez aussi utiliser Sym-Lock. Attention : les versions MULE
  (multilingues) de XEmacs ne permettent pas de combiner plusieurs
  polices avec des encodages diffrents sur le mme buffer, et ne
  supportent donc pas Sym-Lock. La configuration de Tuareg avec Sym-Lock
  est la suivante :

  (if (and (boundp 'window-system) window-system)
      (if (string-match "XEmacs" emacs-version)
       	  (if (not (and (boundp 'mule-x-win-initted) mule-x-win-initted))
              (require 'sym-lock))
       	  (require 'font-lock)))

UTILISATION :

  Tuareg vous permet de compiler du code Caml  partir d'Emacs (en utilisant 
  M-x compile) et de naviguer dans les erreurs (avec C-x `). En tapant C-x `,
  vous placez le curseur au dbut de la partie errone du programme, et la
  marque  la fin. Sous Emacs, le code en question est temporairement
  surlign.

  M-x tuareg-run-caml lance un toplevel Caml dont les entres/sorties sont dans
  un buffer Emacs nomm `*caml-toplevel*'. Vous pouvez alors utiliser toute la
  puissance d'Emacs pour diter l'entre du toplevel Caml. Ce mode est bas sur
  comint, donc vous bnficiez de toutes les fonctionnalits de comint, y
  compris l'historique des commandes. Pour la personnalisation de Tuareg, vous
  pouvez utiliser `tuareg-interactive-mode-hook'.

  En tapant C-c C-e dans un buffer Caml, la fonction courante (contenant le
  curseur) est envoye au toplevel Caml, et y est value. Si vous tapez une de
  ces commandes avant M-x tuareg-run-caml, le toplevel dmarrera
  automatiquement.

  M-x camldebug FICHIER lance le dbogueur camldebug sur le fichier excutable
  FICHIER, avec des entres/sorties associes au buffer *camldebug-FICHIER*.
  Elle est similaire  la version d'avril 1996, avec quelques changements
  mineurs pour fonctionner avec XEmacs, Tuareg et OCaml. De plus, le paquetage
  `thingatpt' n'est plus requis.

PERSONNALISATION

  L'outil standard de personnalisation d'Emacs peut-tre utilis pour modifier
  les options de Tuareg. Il est accessible  partir du menu Options et du
  sous-menu Customize de Tuareg.

  Vous pouvez galement personnaliser l'apparence du code Caml en modifiant les
  variables listes au dbut du fichier tuareg.el (il vaut mieux utiliser
  `tuareg-mode-hook' que d'diter directement le fichier). Il suffit donc
  d'ajouter  votre fichier de configuration quelque chose du type :

  (add-hook 'tuareg-mode-hook
            '(lambda ()
               ... ; votre personnalisation
             ))

  `custom-tuareg.el' est un exemple de personnalisation standard. Vous
  pouvez le rajouter  votre `.emacs' ou l'utiliser comme un tutoriel.

FONCTIONNALITS, BOGUES CONNUS :

  Consulter l'aide en ligne.

REMERCIEMENTS

  Ian Zimmerman pour le mode prcdent, l'interface de compilation et
  l'amlioration du dbogueur.

  Jacques Garrigue amliora le mode de I. Zimmerman en l'adaptant  la syntaxe
  Objective Caml (et Labl). Bien que ce travail a t fait indpendamment, ses
  commentaires et son fichier de configuration ont t d'une grande aide.

  Michel Quercia pour ses remarques pertinentes, ses patches et ses
  contributions en emacs-lisp (compltes et prtes  fonctionner),
  spcialement pour le mode interactif Tuareg et pour les possibilits
  de navigation.

  Denis Barthou, Pierre Boulet, Jean-Christophe Fillitre et Rmi Vanicat pour
  leurs tests intensifs, leurs suggestions et leur aide.

  Ralf Treinen pour la maintenance du paquetage Debian GNU/Linux.

  Toutes les personnes qui m'ont signal des bogues, envoy des
  commentaires et des patches. Le mode s'en serait arrt  la version
  0.9.2 sans leur aide. Je remercie particulirement Eli Barzilay,
  Josh Berdine, Christian Boos, Carsten Clasohm, Yann Coscoy, Prakash
  Countcham, Alvarado Cuihtlauac, Erwan David, Gilles Dfourneaux,
  Philippe Esperet, Gilles Falcon, Tim Freeman, Alain Frisch,
  Christian Lindig, Claude March, Charles Martin, Dave Mason, Stefan
  Monnier, Toby Moth, Jean-Yves Moyen, Alex Ott, Christopher Quinn,
  Ohad Rodeh, Rauli Ruohonen, Hendrik Tews, Christophe Troestler,
  Joseph Sudish, Mattias Waldau and John Whitley.

COORDONNES :

  Le site officiel de Tuareg se trouve  l'adresse :

  http://www-rocq.inria.fr/~acohen/tuareg

  Vous pouvez signaler vos bogues, envoyer vos suggestions et
  encouragements, etc.  :

  Albert Cohen
  Charg de Recherche - INRIA Futurs

  E-Mail     : Albert.Cohen@inria.fr
