GNT sans publicité, site mobile, fonctionnalitées exclusives...

coup de pouce ECB

Le
Sébastien Kirche
Bonsoir,

dernièrement on a reparlé ici d'ECB/semantic au sujet de la complétion du
code.

Je ne m'étais servi jusqu'ici d'ECB que comme explorateur de projet sur
quelques arbres cvs que je récupère chez moi (Emacs, PearPC, et quelques
bricoles) mais comme je fais du python en ce moment je m'y intéresse de plus
près.

Problème : si ECB reconnait bien la syntaxe d'un script python (C aussi) et
colorie correctement, je ne bénéficie pas des propositions de méthodes sur
un objet ou sur les membres d'une structure.

D'un autre côté dans les autres fenêtres d'ECB, je vois bien les prototypes
des fonctions qui s'affichent en fonction de la fonction sur laquelle je
suis.

J'ai vérifié que cette question n'était pas dans la faq, alors il me reste
la doc qui est conséquente.

Mais un habitué d'ici saurait peut-être me mettre sur la voie ? Merci.

--
Sébastien Kirche
Lire les 5 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Sébastien Kirche
Le #21724561
Le 20 fév 2005, Sébastien Kirche s'est exprimé ainsi :

J'ai vérifié que cette question n'était pas dans la faq, alors il me reste
la doc qui est conséquente.



Bon après avoir Googlisé pas mal, je suis tombé sur des éléments de
réponse : binder les touches . et > (pour ->) pour permettre l'appel de
semantic-ia-complete-tip, semantic-ia-complete-symbol et
semantic-ia-complete-symbol-menu

Il y aurait aussi le semantic-idle-completions-mode.

Je suis juste un peu surpris qu'ECB ne le propose pas en standard.

Ce qui peut donner :
(define-key c-mode-map ">" (lambda (arg)
(interactive "P")
(c-electric-lt-gt arg)
(when (looking-back "->")
(semantic-ia-complete-tip (point)))))
(define-key c-mode-map "." (lambda ()
(interactive)
(insert ".")
(semantic-ia-complete-tip (point))))

Mais je ne vois pas trop ce que ça vaut.

--
Sébastien Kirche
Sébastien Kirche
Le #21724511
Le 21 fév 2005, Sébastien Kirche a formulé :

Mais je ne vois pas trop ce que ça vaut.



Comme c'est un peu calme en ce moment, je me réponds ;)

Ces bindings sont inutiles. En fait en allant chercher des versions à jour
de cedet et ecb (et au passage en supprimant les paquets séparés de eieio,
speedbar, semantic et ede) ça marche beaucoup mieux.

Il ne reste plus que les trucs suivants :

(setq semantic-load-turn-everything-on t)
(when (file-exists-p "~/.elisp/cedet/common/cedet.el")
(load-library "~/.elisp/cedet/common/cedet.el")
;; Enabling SEMANTIC minor modes. See semantic/INSTALL for more ideas.
;;(semantic-load-enable-excessive-code-helpers)
)

Que je trouve pas spécialement élégant, et

(when (require 'ecb-autoloads nil t)
(setq semanticdb-default-save-directory "~/tmp"))

Quand aux tips et à la complétion, ils arrivent tout seuls après un instant
d'inactivité ou l'appui de tab.

Il semble que même en sid les paquets Debian de semantic ne soient pas
franchement récents.

Reste que même sur la version la plus récente de semantic subsiste un bug de
parse des fichiers python qui freeze parfois Emacs (heureusement débloquable
par C-g). Dommage :(

[Par contre j'ai enfin réussi à réparer mon emacs-snapshot avec lequel bbdb
et ecb étaient cassés depuis un moment : alors que je recompile des paquets
à jour de temps à autre, l'executable d'emacs restait le même depuis
plusieurs mois et forcément ça merdoyait quelque peu :/ ]

--
Sébastien Kirche
Vincent Bernat
Le #21724501
OoO En cette nuit striée d'éclairs du mardi 22 février 2005, vers
02:02, Sébastien Kirche disait:

[Par contre j'ai enfin réussi à réparer mon emacs-snapshot avec lequel bbdb
et ecb étaient cassés depuis un moment : alors que je recompile des paquets
à jour de temps à autre, l'executable d'emacs restait le même depuis
plusieurs mois et forcément ça merdoyait quelque peu :/ ]



A ce propos, il y a désormais des snapshots en paquets Debian :

Il s'agit de la branche multi-tty.
--
BOFH excuse #243:
The computer fletely, mouse and all.
Sébastien Kirche
Le #21724471
Le 22 Feb 2005, Vincent Bernat s'est exprimé ainsi :

A ce propos, il y a désormais des snapshots en paquets Debian :

Il s'agit de la branche multi-tty.



Merci de l'info.

Tu as des détails sur le contenu ?

Je sais que cette version permet d'invoquer plusieurs fois la même instance
d'Emacs à la façon de du client gnu|emacs, mais c'est comment par rapport à
la branche principale du CVS ? Ça suit ?

--
Sébastien Kirche
Vincent Bernat
Le #21724461
OoO En cette matinée ensoleillée du mardi 22 février 2005, vers 09:41,
Sébastien Kirche

Il s'agit de la branche multi-tty.



Merci de l'info.

Tu as des détails sur le contenu ?

Je sais que cette version permet d'invoquer plusieurs fois la même instance
d'Emacs à la façon de du client gnu|emacs, mais c'est comment par rapport à
la branche principale du CVS ? Ça suit ?



Oui, les mises à jour sont régulières (tous les 3 jours environ). Les
paquets Debian sont également à jour, mais comme c'est très
récent... Pour quelqu'un venait de XEmacs, je trouve cette branche
indispensable. Je laisse souvent mon Emacs tourner chez moi et m'y
connecte avec emacsclient.

A noter toutefois que c'est moins robuste que dans XEmacs : en cas de
coupure de connectivité, c'est tout Emacs qui tombe.
--
IT DOES NOT SUCK TO BE YOU
IT DOES NOT SUCK TO BE YOU
IT DOES NOT SUCK TO BE YOU
-+- Bart Simpson on chalkboard in episode AABF13
Publicité
Suivre les réponses
Poster une réponse
Anonyme