Atelier IDE LinuxEmacs + JDEE + ANT
(X)Emacs
Histoire
Emacs signifie Editor MACroS.
Projet initié en 1976
par Richard StallMan au MIT
poursuivi par Guy Steele et James gosling
repris par RMS sous le projet GNU.
Pourquoi emacs ?
Avantages
•extensible
•personnalisable
•auto-documenté
•rapide
•stable (trop ?)
•Open Source
•GNU
•pas graphique
Inconvénients
•difficile à apprendre
•lourd en mémoire
•pas graphique
•pas comme windoz
Que faire avec emacs ?
•Java, python, perl, c, c++, asm, html,xml, sgml, xsl, tex, latex, texte, pascal, fortran, bash, basic, lisp, etc.
•cvs
•ftp
•lire ses mails
•lire les news groups
•faire de l ’icq
•contrôler une cafetière
Plug-ins programmés en E-Lisp
Lancer emacs
Konsole : emacs &
ou
KDE : ALT+F2 emacs
Prise en main
Raccourcis clavier Options à cocher
Prise en main
Téléchargez le fichier http://www.ift.ulaval.ca/~alikcaem/ateliers/.emacs
La configuration de base d ’Emacs n’est pas évidente
Le fichier .emacs contient toute la config d ’emacs
Prise en main
Ouvrir et créer des fichiers
Pour créer un fichier, il suffit d ’ouvrir un fichier qui n’existe pas
Prise en mainSauver un fichier
On peut enregistrer un fichier en sauvant le buffer courant.
Nomenclature des raccourcis clavier
<lettre>
C-<lettre>
M-<lettre>
C-M-<lettre>
Appuyer sur la lettre
appuyer sur la lettre en enfonçant CTRL
appuyer sur la lettre en enfonçant ALT (ou windoz)
appuyer sur la lettre en enfonçant ALT et CTRL
Exemple :
C-x C-f : Appuyer sur x et f en maintenant CTRL enfoncée
C-x i : Appuyer sur x en enfonçant CTRL puis appuyer sur i
Cette notation est standard dans Emacs.C-g permet d ’annuler toute action en cours.
Copier coller et undo
Placer une marque : C-<space>
Puis utiliser les flèches.
M-w : Copier la région.
C-y : Coller la région (yank).
-->C-y M-y M-y … M-y (historique)
C-w : Couper la région.
C-_ : undo / redo
sisi, on s ’habitue ;)
Les buffers
Buffer 1
Buffer 2
MiniBuffer
Un buffer est un espace d’édition ou de lecture
Permet d ’intéragir avec emacsLine mode
Les buffers
C-x 2 : coupe horizontalement le buffer courant
C-x 3 : coupe verticalement le buffer courant
C-x 0 : supprime le buffer courant (reste actif)
C-x k : tue le buffer courant
C-x 1 : passe le buffer en plein fenêtre
C-x o : change de buffer
Appels de fonctions
M-x <nom de commande> permet d’appeler TOUTES les fonctions de emacs
TAB !
Emacs est homogène
Recherche et remplacement
C-s : déclenche une recherche incrémentale. Tapez un mot dans le minibuffer, Emacs recherche le mot au fur et à mesure de la frappe. C-s permet de passer à l ’occurrence suivante.
C-M-% : remplacement d ’expressions régulières avec confirmation.
M-x search-forward : recherche une chaîne en avant.
M-x search-backward : recherche une chaîne en arrière du curseur.
M-x search-regexp-forward : recherche une regexp en avant du curseur.
….
…. --> Et bien d ’autres méthodes encore. Choisissez !
…..
Avec Emacs, vous avez l ’embarras du choix.! Faîtes en ce que vous voulez !
Aide et documentation
Emacs contient sa propre documentation.
M-x apropos : recherche dans la documentation par mot-clef
C-h t :tutorial sur Emacs (bof :( )
C-h F : FAQ
M-x describe-bindings : donne les raccourcis
Recenter est une fonction pratique
Personnalisation
Emacs permet de paramétrer presque tout ce qui est paramétrable
M-x customize-group : permet de paramétrer un groupe d ’options.
M-x Custom-set : permet d ’appliquer le changement de configuration.
M-x Custom-save : permet de sauver la configuration.
Un environnement de développement pour java :
Java Beans, EJB, coloration de syntaxe, audit de code, gestion de jdk multiples, gestion de projet, repérage des erreurs, compilation, exécution d ’applets et d ’applications, débugage, débugage distant, patrons de code personnalisables, génération de code dynamique, jikes, javac, javac-server, jar, javadoc, ant, indentation automatique, 2 modes d ’accolades,raccourcis fantastiques, …………………………………………………………..
Créer une classe java
M-x jde-gen-console(-buffer) permet
de créer une nouvelle classe exécutable.
M-x jde-TAB !
Créer un projet
M-x jde-create-new-project demande le répertoire qui contient le fichier de projet.
M-x jde-cr TAB
Paramétrer un projet
M-x customize-group jde-project permet de régler de nombreuses options
du projet comme le classpath.
jde- TAB Insérer ..
Paramétrer un projet
Après avoir paramétrer une option, tapez M-x Custom-set, puis C-c C-v C-p
Compiler
Pour compiler : C-c C-v C-c
Exécuter une application
Pour exécuter : C-c C-v C-r
Génération de code
jdee permet de générer du code de plusieurs façons : M-x jde-gen-get-set,
M-x jde-gen*, C-c C-v C-l, et possède un mode abréviation.
Type : int
name : toto
Audit de code
System.e F5 F5 F5!
jdee possède un mécanisme sophistiqué permettant de compléter les méthodes,
les données membres avec enchaînement.
C-q !
Documentation
Jdee permet d ’avoir accès à la documentation javadoc et de la générer.
M-x jde-help-class :affiche la javadoc de la classe de la variable sous le curseur
M-x jde-browse-jdk : affiche la documentation de la jdk
M-x jde-javadoc-* : génération de documentation javadoc dans le code selon des patrons de code (personnalisables).