Emacs pour le projet GL
De Ensiwiki.
(un volontaire pour développer ?)
Sommaire |
Pour les débutants
Si vous avez raté le début, vous pouvez lire Premiers pas avec Emacs et Ada.
Compiler depuis Emacs
M-x compile RET
Emacs et Ada
- http://www.gnu.org/software/emacs/manual/html_mono/ada-mode.html
- Contenu du menu Ada d'Emacs.
Pour s'y retrouver plus facilement dans le code fourni, il est utile de disposer d'une fonction de recherche de définition de fonction, afin de pouvoir vérifier rapidement son prototype par exemple. Pour faire ceci dans emacs, il faut tout d'abord créer un fichier de tags :
find ~/gl /usr/local/GL/Global/Commun/Src/ -name '*.ad[bs]' | xargs etags -o ~/.emacs.d/TAGS
(en remplacant les chemins par ceux correspondant à votre configuration). Cette commande va inspecter vos fichiers adb et ads dans les dossiers fournis en paramètre, et va produire un fichier TAGS, à stocker dans un répertoire quelconque. Ensuite, dans emacs, on indique où trouver les tags par :
(setq tags-table-list '("~/.emacs.d"))
Il suffit ensuite de faire M-. dans Emacs avec le curseur sur le nom d'une fonction, ou d'une variable (et probablement d'autres choses) pour trouver où celle-ci est définie. Et pour revenir où on en était avant : M-*.
On peut automatiser la construction de la table pour éviter d'avoir à répéter la commande à chaque fois qu'on rajoute une fonction, par exemple avec cron (crontab -e pour éditer votre fichier de configuration cron, man 5 crontab pour la documentation sur le format)
(Note si un vimiste s'égare sur cette page : il est possible de faire pareil sous Vim avec Ctags.)
Subversion depuis Emacs
Il existe deux modes principaux pour interagir avec svn depuis Emacs. Premièrement, vc-svn, qui est le module svn du système global vc (supportant plusieurs autres systèmes). Il permet d'avoir à portée de raccourci clavier des commandes utiles (voir plus loin). Il fait partie d'emacs, est déjà installé sur ensibm, et se charge automatiquement quand vous ouvrez un fichier sous gestionnaire de version. Pour une interaction plus poussée, on peut utiliser psvn.el, qui est un frontend plus complet (interface similaire à dired).
Vc-svn
On peut voir la liste complète des raccourcis avec C-x v C-h, voici les plus utiles :
- diff C-x v =
- revert C-x v r
- commit du fichier en cours C-x v v : ouvre un nouveau buffer pour écrire le message de commit
- add C-x v i
- log C-x v l
Psvn
On accède à psvn par la commande svn-examine, qui ouvre un buffer à partir duquel on a la liste des fichiers du dossier courant (mettre les variables svn-status-hide-unknown et svn-status-hide-unmodified à t si la vue par défaut vous semble trop encombrée : cela n'affichera que les fichiers modifiés par défaut). Voir l'aide (C-h m) pour la liste des actions qu'il est possible d'effectuer.
Gdb depuis Emacs
Cf. Debugger un programme Ada (gdb, ddd, Emacs)
Emacs pour éditer les fichiers .deca et .ass
Il suffit d'ajouter au .emacs :
(setq auto-mode-alist (cons '("\\.ass$" . asm-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.deca$" . java-mode) auto-mode-alist))
Ceci associera les bons modes pour les fichiers .deca et .ass, et vous aurez donc la colorisation syntaxique.
