2010-10-04 7 views
4

Après avoir utilisé C# pendant longtemps, j'ai finalement décidé de passer en Python. La question à laquelle je fais face pour le moment concerne l'auto-complétion. Je suppose que je suis gâté par C# et surtout par resharper et je m'attendais à quelque chose de similaire à Python.Achèvement du code Python

Mon éditeur de choix est emacs et après avoir fait quelques recherches, j'ai autocomplete.pl, yasnippet et la corde bien qu'il ne soit pas clair pour moi si et comment ils peuvent être installés dans un système à base de Cygwin qui est ce que je l'utilise depuis tous les associés la documentation semble être spécifique à linux ...

La version d'emacs que j'utilise actuellement est 23.2.1 qui regroupe le mode python qui, bien qu'utile, est loin derrière tout ce que la recherche peut offrir.

Ma question aux utilisateurs de python doit faire sur la façon dont est commun autocomplete vs frappe manuelle (en utilisant M-/ si possible)?

Je pense juste à mémoriser des fonctions intégrées de python comme len, append, extend etc. et revenir à un mode d'édition pré-autocomplete. En quoi une telle approche est-elle différente de ce que font les autres pythonistes?

+0

Quelle plate-forme, mode texte ou interface graphique? Vos développements ciblent-ils un framework comme le django? –

+0

La plate-forme est cywin en utilisant à la fois le mode texte et wxPython pour GUI. Pour l'instant, je ne prévois pas d'utiliser django. – JohnP

+0

Plus je lis attentivement votre question, moins je suis sûr de ce que vous demandez. Est-ce votre question: Que font les autres programmeurs Python pour l'auto-complétion, et y a-t-il un choix commun? – JasonFruit

Répondre

4

Je trouve ce poste

My Emacs Python environment

être la liste la plus utile et complète des instructions et des références sur la façon de configurer un environnement de développement de Python décent dans Emacs quelle que soit la plate-forme OS. Il reste encore un peu de travail à faire, mais au moins cela couvre les paquets et les composants populaires généralement recommandés pour Python dans Emacs qui fournissent des fonctionnalités d'auto-complétion.

J'ai utilisé cet article comme guide pour effectuer la configuration sur mon ordinateur Windows avec Emacs 23.2.1 et Python 2.6.5. Bien que j'ai installé Cygwin dans certains cas au lieu d'exécuter les commandes shell * nix mentionnées dans la publication, je télécharge simplement les paquets via un navigateur web, les décomprime avec 7zip, et les copie dans le répertoire plugin d'Emacs.

Aussi, pour installer Pymacs, Rope, et Ropemacs, j'ai utilisé le gestionnaire de paquets EasyInstall de Python. Pour l'utiliser, j'ai téléchargé et installé the setuptools package using the Windows install version. Une fois installé, à la ligne de commande, cd à leur emplacement de téléchargement respectifs et exécutez la commande

easy_install .

au lieu des commandes shell indiquées dans le poste.

En général, je sauvé tous les fichiers *.el dans mon ~\.emacs.d\plugins (par exemple dans %USERPROFILE%\Application Data\.emacs.d\), puis mis à jour mon dossier .emacs pour les référencer comme indiqué dans le poste.

En dépit de tout cela, à l'occasion, j'ai utilisé DreamPie, car il a une meilleure auto-complétion de la boîte que ma configuration Emacs.

4

Je suis gâté par Intellisense aussi. Les extensions PyDev pour Eclipse offrent un très bon substitut automatique.

+0

Je suis au courant de PyDev ... Je préférerais rester avec emacs si possible mais je vais essayer PyDev et voir si cela correspond à mes habitudes de codage – JohnP

1

Je trouve que PyDev + Eclipse peut répondre à la plupart de mes besoins. Il y a aussi PyCharm de l'équipe Intellij. PyCharm a l'avantage supplémentaire d'une intégration en douceur avec git.

0

J'ai utilisé PyScripter, un IDE pour Windows, depuis quelque temps maintenant, et je l'ai trouvé très bon. Il a l'autocomplétion parmi beaucoup d'autres dispositifs. Il est écrit en Delphi - pas qu'il n'y a rien de mal à cela - il me dérange un peu, mais ...

0

Jetez un oeil à Spyderlib, soutenir la plupart des fonctionnalités, y compris la complétion de code

0

OMI, de loin la meilleure façon de tirer parti des outils de python disponibles pour emacs est de tirer parti des paramètres par défaut qui sont tous mis en place à: https://github.com/gabrielelanaro/emacs-for-python

en fait, je pris le temps pour obtenir pymacs et ropemacs et python-mode tout travailler de façon indépendante avant de trouver ce petit bijou, et maintenant je m'en fie entièrement à toutes mes personnalisations basées sur python. Si vous êtes nouveau, je commencerais certainement là.

Questions connexes