Emacs pour le projet GL

De Ensiwiki.

Aller à : Navigation, rechercher
Construction.png Cette section est vide, pas assez détaillée ou incomplète. Votre aide est la bienvenue !

(un volontaire pour développer ?)

Sommaire

  • 1 Pour les débutants
  • 2 Compiler depuis Emacs
  • 3 Emacs et Ada
  • 4 Naviguer dans du code source avec Emacs
  • 5 Subversion depuis Emacs
    • 5.1 Vc-svn
    • 5.2 Psvn
  • 6 Gdb depuis Emacs
  • 7 Emacs pour éditer les fichiers .deca et .ass

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.

Naviguer dans du code source avec 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.

Récupérée de « http://ensiwiki.ensimag.fr/index.php/Emacs_pour_le_projet_GL »
Catégories : Ada | Projet GL | Emacs
Powered by MediaWiki
Attribution-Share Alike 3.0 Unported
  • Dernière modification de cette page le 20 janvier 2009 à 12:27.
  • Cette page a été consultée 1 261 fois.
  • Contenu disponible sous Attribution-Share Alike 3.0 Unported.
  • Politique de confidentialité
  • À propos de Ensiwiki
  • Avertissements
 
Affichages
  • Page
  • Discussion
  • Voir le texte source
  • Historique
Outils personnels
  •  
  • Connexion
Actualité
  • Stage Unix de rentrée
  • Soutenances de PFE
  • Projet système
  • Projets spécialité
  • Lexique franco-anglais
  • Projet C
  • Plannings des stages
Navigation
Ensimag
  • Accueil
  • FAQ
  • Mode d'emploi
  • Droit d'auteur
  • Modifications récentes
  • Page au hasard
Boîte à outils
  • Pages liées
  • Suivi des pages liées
  • Pages spéciales
  • Version imprimable
  • Lien historique
  • Principaux contributeurs