8
votes

Emacs achève ou intellisense le même que sur Visual Studio

emacs 22.2.1 sur Linux

Je fais une programmation C / C ++ à l'aide de EMACS. Je me demande que EMACS aide les acheminements (IntelliSense in Visual Studio).

Par exemple, lors de la remplissage des structures, je voudrais voir la liste des membres lorsque je saisie l'opérateur de points ou l'opérateur de flèche.

La même chose irait pour les signatures de fonction qui me donnent les types que je passe afficherait.


6 Réponses :


3
votes

Je pense que vous recherchez des étiquets. http://tulrich.com/GeekstStuff/emacs.html

Rechercher des tags.


0 commentaires

6
votes

méta - / n'est pas vraiment intelligent, mais cela fait itérale à travers des noms connus.

Ce projet fournit les menus de style déroulant que vous utilisiez:

http://ecb.sourceforge.net/


1 commentaires

+1 pour Meta + /. Ce n'est pas intelligent mais fait le travail la plupart du temps.



5
votes

Vous devez prendre la dernière version de paquet CEDET (mieux, directement à partir de CVS). Vous pouvez la configurer, comme décrit dans la documentation sur ce site


1 commentaires

Il existe également des packages (mode d'entreprise, compléter automatiquement), qui utilisent du CEDET pour obtenir des données à réalisation, mais mettre en œuvre différents styles d'achèvement (de CEDET)



4
votes

J'utilise cedet avec Emacs. J'ai essayé d'utiliser la version Cedet à Debian, mais il a quelques bugs, donc je désinstallé et téléchargée la version CVS de http : //sourceforge.net/projects/cedet/develop

Je l'ai compilé dans mon ~ / TMP / EMACS-Stuff / Stuff / Ajoutez les lignes suivantes à mon ~ / .emacs.d / personnalisé. EL Fichier: P>



;;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)


0 commentaires

0
votes

Si vous souhaitez utiliser Stock Emacs pour effectuer l'achèvement de votre projet et de votre bibliothèque, citons des fichiers, essayez cette réponse


0 commentaires

0
votes

J'ai ceci dans mes .emacs, ce qui rend les choses un peu plus faciles.

(exiger 'c-eldoc) (Mode C-TURN-ON-ON-ELDOC 'CRA-ON-ELDOC' CRA-ILDOC)

De cette façon, je n'ai pas à rechercher les définitions de la fonction.

Je n'écris pas cela beaucoup, mais je conviens que les balises sont également une fonctionnalité très utile.


0 commentaires