J'utilise cedet avec emacs. J'ai essayé d'utiliser la version de cédet dans Debian mais il a quelques bogues donc je l'ai désinstallé et téléchargé la version cvs de http://sourceforge.net/projects/cedet/develop
Je l'ai compilé dans mon répertoire ~/tmp/emacs-stuff/puis ajouté les lignes suivantes à mon ~/.emacs.d/fichier custom.el:
;;needed if cedet is in a custom location
(load-file "~/tmp/emacs-stuff/cedet/common/cedet.el")
;; Enable EDE (Project Management) features
(global-ede-mode t)
;;to enable code folding
(global-semantic-tag-folding-mode)
;; Enabling Semantic (code parsing, smart completion) features
;; (select only one)
;;(semantic-load-enable-minimum-features)
;;(semantic-load-enable-code-helpers)
(semantic-load-enable-gaudy-code-helpers)
;;(semantic-load-enable-all-exuberent-ctags-support)
(global-semantic-idle-scheduler-mode 1) ;The idle scheduler with automatically reparse buffers in idle time.
(global-semantic-idle-completions-mode 1) ;Display a tooltip with a list of possible completions near the cursor.
(global-semantic-idle-summary-mode 1) ;Display a tag summary of the lexical token under the cursor.
;;to work with my include files and cedet
(semantic-add-system-include "~/include" 'c++-mode)
(semantic-add-system-include "~/include" 'c-mode)
;;To use additional features for names completion, and displaying of information for tags & classes,
;; you also need to load the semantic-ia package. This could be performed with following command:
(require 'semantic-ia)
;;to work with systme include files and gcc
(require 'semantic-gcc)
;;integrate semantic with Imenu
(defun my-semantic-hook()
(imenu-add-to-menubar "TAGS"))
(add-hook 'semantic-init-hooks 'my-semantic-hook)
;;load Semanticdb
(require 'semanticdb)
;;(global-semanticdb-minor-mode 1)
;;working with tags
;; gnu global support
(require 'semanticdb-global)
(semanticdb-enable-gnu-global-databases 'c-mode)
(semanticdb-enable-gnu-global-databases 'c++-mode)
;; ctags
(require 'semanticdb-ectag)
(semantic-load-enable-primary-exuberent-ctags-support)
(defun my-semantic-hook()
(imenu-add-to-menubar "TAGS"))
(add-hook 'semantic-init-hooks 'my-semantic-hook)
Ce fichier est appelé par mon fichier ~/.emacs que la ligne suivante dans le: (charge-fichier « ~ /.emacs.d/custom.el ")
Maintenant, lorsque vous tapez une variable et appuyez sur CTRL + MAJ + ENTRÉE, un menu de sélections vous proposera des suggestions. En outre, si vous avez défini une variable sémantique-complète-inline-analyzer-idle-displayor-class pour citer semantic-displayor-tooltip, une info-bulle avec suggestions apparaîtra également après un certain temps d'inactivité (1 ou 2 secondes) .
Pour une courte intro, voir http://xtalk.msk.su/~ott/en/writings/emacs-devenv/EmacsCedet.html
Pour cedet docs, voir: http://cedet.sourceforge.net/
Bonne chance.
http://stackoverflow.com/questions/129257/eclipse-sytle-function-completions-in-emacs-for-cc-and-java, http://stackoverflow.com/questions/1285971/emacs-code -completion-for-cc –