Développement Scala sous Emacs

Voici un petit guide pour configurer Emacs et profiter de la coloration syntaxique ainsi que des snippets pour Scala.

yasnippet

Yasnippet est un ensemble de scripts qui vise à apporter des fonctionnalités inspirées de l'éditeur mac textmate sous Emacs. Il permet ainsi la complétion de fonctions à partir de la saisie de premiers caractères. Le projet est hébergé sous google code à l'adresse : http://code.google.com/p/yasnippet/

Téléchargement

Le téléchargement se fait à partir de http://code.google.com/p/yasnippet/downloads/list. On sélectionne la dernière version sous la forme yasnippet-x.x.x.tar.bz2. Par la suite, les x.x.x sont à remplacer par le numéro de version de yasnippet bien évidemment :)

Installation

1. S'il n'existe pas encore, créer le réperteroire ~/.emacs.d/plugins

$ mkdir -p ~/.emacs.d/plugins

2. décompresser l'archive récupérée lors du téléchargement dans le répertoire ~/.emacs.d/plugins

$ cp yasnippet-x.x.x.tar.bz2  ~/.emacs.d/plugins
$ tar jxvf yasnippet-x.x.x.tar.bz2
$ rm yasnippet-x.x.x.tar.bz2

configuration

Ajouter les entrées suivantes dans le fichier de configuration d'emacs ~/.emacs

(add-to-list 'load-path "~/.emacs.d/plugins/yasnippet-x.x.x")
(require 'yasnippet) ;; not yasnippet-bundle
(yas/initialize)
(yas/load-directory "~/.emacs.d/plugins/yasnippet-x.x.x/snippets")

scala-mode

Téléchargement

On récupére la dernière version disponible en ligne dans le répostory subversion :

$ cd ~/.emacs.d/plugins/
$ svn co http://lampsvn.epfl.ch/svn-repos/scala/scala-tool-support/trunk/src/emacs/ scala-mode

Configuration

Ajouter les entrées suivantes dans le fichier de configuration d'emacs ~/.emacs

(add-to-list 'load-path "~/.emacs.d/plugins/scala-mode")
(require 'scala-mode-auto)
(setq yas/my-directory "~/.emacs.d/plugins/scala-mode/contrib/yasnippet/snippets")
(yas/load-directory yas/my-directory)
(add-hook 'scala-mode-hook
          '(lambda ()
              (yas/minor-mode-on)
              ))

Liens utiles

scala_emacs.txt · Dernière modification: 2009/10/14 23:35 par spiroid