[PageD'Accueil] [IndexDesTitres] [IndexDesTermes

Il existe de nombreux éditeurs de texte et environnements de développement intégrés (IDE = Integrated Development Environment) qui supportent Python. En voici une liste non exhaustive (vous pouvez y ajouter tous les éditeurs de texte, entre autre ceux dédiés au HTML qui pour certains contiennent en plus des modules pour un petit suppport de Python - typiquement la coloration syntaxique).

Tableau Récapitulatif

Nom

Type

Windows

Linux

MacOS

Disponibilité

BBEdit

Editeur

_

_

X

Commercial

Black Adder

IDE

X

X

_

Commercial

ConTEXT

Editeur

X

_

_

Binaire

DrPython

Editeur+shell

X

X

_

GPL

Eclipse

Editeur+machine à café

X

X

X

libre open source

EditPlus2

Editeur

X

_

_

Commercial

Emacs

Editeur+machine à café

X

X

X

GPL

Eric3

IDE

_

X

_

?

IDLE

Editeur+shell

X

X

X

PSF

Kate

Editeur+shell

_

KDE

_

?GPL?

Komodo

IDE

X

X

_

Commercial

Notepad++

Editeur

X

_

_

GPL

PyOXIDE

Editeur

_

_

MacOSX

?

Pype

Editeur

_

X

_

?

PythonWin

Editeur+shell

X

_

_

libre

SciTE

Editeur+shell

X

X

_

libre (CNRI Python License)

Smultron

Editeur

_

_

MaxOSX

GPL

SPE

Editeur

X

X

X

GPL

pyScripter

Editeur

X

X

X

Freeware

TextPad

Helios Software Solutions

X

_

_

Commercial/Shareware

TextWrangler2

Editeur

_

_

X

Binaire

TurboPad

Editeur

X

_

_

libre

Vim

Editeur

X

X

X

charityware (compatible GPL)

Wing IDE

IDE

X

X

MacOSX

Commercial

#xRope

IDE

X

X

X

GPL

Un tableau de synthèse des fonctinnalités, plus détaillé, est disponible sur EditeursEtIDESynthese.


Informations

Tabulations

Quel que soit l'outil que vous utilisez pour éditer votre code, il est très fortement conseillé de le paramétrer afin qu'il n'utilise pas le caractère tabulation pour réaliser l'indentation, mais des espaces (généralement 4). Faute de quoi vous vous préparez à de longues chasses aux bugs d'indentation (pour Python 1 tab équivaut à 1 espace - mais graphiquement vous le voyez autrement dans votre éditeur - et comme en Python c'est l'indentation qui marque les blocs...).

Encodage des fichiers

Cette section est déplacée dans JouerAvecUnicode.

Discussions sur ce sujet

* sur AFPY

Pour les shell

Certains outils listés ici proposent directement un shell interactif Python, permettant de faire rapidement des petits tests. De nombreux utilisateurs utilisent aussi IPython qui est un shell Python avancé.

Petit glossaire

Code folding

Technique proposée dans les éditeurs pour permettre de condenser des parties de code logiquement dépendantes. Cela se traduit généralement par un ruban sur la gauche, et un indicateur graphique, qui permettent par un simple clic de réduire un bloc de code à sa première ligne, et par un autre clic, de le ré-afficher de nouveau.

Lignes d'indentation

Petites lignes affichées dans l'éditeur pour marquer les niveaux d'indentation. Permet de s'y retrouver plus facilement lorsque ces niveaux deviennent trop nombreux.

Limite de lignes

Petite ligne verticale affichée sur une colonne (réglable), permettant de voir une limite pour la largeur des sources (et d'éviter d'avoir des lignes trop longues).

Identification du parenthèsage

Lorsque le curseur est sur une parenthèse (crochet ou accolade), signale la parenthèse parente en respectant le nombre d'ouvertures/fermetures de parenthèses. Permet d'identifier rapidement lorsque l'on a une parenthèse en moins ou en trop.

Auto-complétion

Système permettant via l'appui d'une touche, que l'éditeur termine automatiquement la saisie en fonction du contexte.

Call-tips

Une petite zone d'information s'affiche lorsque l'on saisi les paramètres d'appel d'une fonction (ou méthode), et affiche les informations de documentation sur les paramètres de cette fonction.

RAD

Ou Rapid Application Development. Outils permettant de générer très rapidement des applications. Généralement les RAD permettent la création facile d'interfaces graphiques et leur liaison avec le code opérationnel. Certains RAD ont aussi des outils facilitant la mise en oeuvre des bases de données.

Window Splitting

Element d'interface utilisateur permettant de séparer une fenêtre en deux afin d'avoir deux vues différentes sur le même document.

Scintilla

Une librairie de base pour créer des éditeurs, avec un fonctionnement possible sous Windows (Win32) et sous Linux/Unix (via la librairie graphique GTK+), utilisée dans un certain nombre d'éditeurs listés ici. Plus de détails sur http://www.scintilla.org/.

wxPython et wxWidgets

WxWidgets (Anciennement wxWindows) est une librairie graphique permettent de développer des applications multi-plateformes (Windows, Unix). WxPython est la couche Python permettant d'utiliser cette librairie. Plus de détails sur http://www.wxpython.org/ et sur http://wxwidgets.org/.

Pour les rédacteurs

Pour lister les fonctionnalités supportées par les éditeurs et IDE, merci de s'inspirer de la liste ci-dessous, d'en dupliquer les fonctionnalités supportés par les outils, de compléter les lignes si nécessaires, et d'ajouter les fonctionnalités que j'aurais oublié (ici et dans l'éditeur concerné). Si une fonctionnalité nécessite un module à ajouter, l'indiquer en mettant (plugin) à côté. L.Pointal.

Fonctionnalités:

Note: Peut-être peut-on présenter ça sous forme d'un tableau synthétique qui reprenne les infos pour l'ensemble des outils, mais j'ai peur qu'il soit un peu trop grand à l'affichage...

J'ai mis une zone "Utilisé par:" pour chaque éditeur, vous pouvez y mettre votre nom/alias connu de façon à ce que les débutants puissent identifier les outils utilisés par des personnes qu'ils voient contribuer aux forums et listes de discussion (ou encore qu'ils voient les outils les plus utilisés...).


Les éditeurs et IDE

Vous trouverez ici des commentaires et des liens sur chaque éditeur/IDE.

BBEdit

Disponible sur: http://www.barebones.com/products/bbedit/index.shtml

Un éditeur historique sur Macintosh pour le développement, actuellement en version 8. Version de démonstration disponible sur différents sites de téléchargement (Apple Downloads, ZDNet). La version commerciale coûte environ 180$. Barebones propose aussi l'éditeur TextWrangler2.

Utilisé par:

BlackAdder

Disponible sur: http://www.thekompany.com/products/blackadder/

Pour les plateformes Windows et Linux.

Environnement de développement intégré de la société theKompany, il permet de générer des interfaces utilisateur basées sur la librairie Qt3 en faisant du RAD. Il intègre un module d'interface bases de données.

Version de démonstration ici.

Utilisé par:

ConTEXT

Disponible sur: http://www.context.cx/

Editeur de texte dédié développement sur la plateforme Windows. Très largement paramétrable, support de la coloration syntaxique pour de nombreux langages (on peut en ajouter via de simples fichiers textes). Librement utilisable, mais pas open source.

Utilisé par:

DrPython

Disponible sur: http://drpython.sourceforge.net/

Basé sur Scintilla et wxPython, contient un éditeur et une console avec un shell Python interactif. Détail des fonctionnalités sur http://drpython.sourceforge.net/#Features.

On peut de plus étendre le fonctionnalités de DrPython grace à un systeme de Plug-in. On pourra trouvé une liste des plugin disponible à l'adresse http://drpython.sourceforge.net/cgi-bin/SearchPlugins.py?searchtext=&type=All

Utilisé par:

Eclipse

Disponible sur: http://www.eclipse.org/
Voir le plugin ["http://pydev.sf.net/" pyDev].
Et voir le produit commercial TruStudio sur http://www.xored.com/trustudio disponible sous une version open source "foundation" et sous une version commerciale

Le projet Eclipse est issu d'IBM et est maintenant géré par une fondation regroupant de nombreuses sociétés. Il s'agit d'un environnement de développement en Java, ciblant initialement le langage Java, et disposant d'un mécanisme de plugins qui permettent de l'enrichir dans tous les sens, avec les inconvénients (vraie usine à gaz), et les avantages (plein d'outils disponibles, gestion de projet, tests unitaires,...).

Demande une machine assez puissante, et un temps d'adaptation. Mais permet après de développer aussi dans d'autres langages en utilisant cet environnement.

Utilisé par:

Edit Plus 2

Disponible sur: http://www.editplus.com/

Editeur commercial destiné à la programmation, dispose d'une extension pour la coloration syntaxique des sources Python.

Utilisé par:

GNU Emacs

Disponible sur http://www.gnu.org/software/emacs/emacs.html
Il y a un mode Python sur: http://sourceforge.net/projects/python-mode/

Faut-il encore le présenter... "Emacs is the extensible, customizable, self-documenting real-time display editor". L'outil de prédilection pour certains, qui permet de tout faire sans en sortir. Une usine à gaz pour d'autres. Si vous n'avez pas encore pris d'autres habitudes, ça sera un environnement que vous pourrez réutiliser à d'autres moments, l'apprentissage sera rentable ; si vous avez déjà des habitudes le passage sera plus difficile.

Possibilité de faire communiquer emacs et python (ie: étendre Emacs en Python) avec pymacs : http://pymacs.progiciels-bpi.ca/ Outre les fonctionnalités usuelles (colorisation, indentation etc), le mode Python d'Emacs permet de lancer un interpréteur Python comme sous-process d'Emacs et d'évaluer dynamiquement tout ou partie du fichier en cours d'édition. En ajoutant ECB (Emacs Code Browser, une extension Emacs pour naviguer dans le code) et l'intégration à un contrôleur de code source (CVS, SVN, Arch...), on obtient un IDE complet et très puissant.

Aides:

http://www.linux-france.org/article/appli/emacs/manuel/html/index.html

http://www.emacswiki.org/cgi-bin/emacs-fr/

Utilisé par: Bruno Desthuilliers (Modulix)

Eric3

Disponible sur: http://www.die-offenbachs.de/eric/index.html

Un environnement de développement open source, ciblant le développement d'applications avec la librairie Qt3. L'environnement est complet: RAD, éditeur, débogueur, intégration SVN, ...

Il peut aussi fonctionner sous Windows... à la condition de trouver une version de Qt3 avec son bonding Python qui fonctionne sur cette plateforme (note: l'éditeur de Qt a récemment annoncé qu'il y aurait une version GPL de Qt pour Windows, cela devrait faciliter les choses).

Note : en plus de Qt, l'installation d'eric3 nécessite les modules Pyqt, SIP et QScintilla.

Utilisé par: Julien Vienne (traducteur officiel!)

IDLE

Disponible sur: votre machine :-) mais il y a un site http://www.python.org/idle/.

Il s'agit de l'environnement de développement installé en standard avec Python. Il utilise la librairie graphique Tkinter (adaptation sous Python de la librairie Tk du langage TCL). Il intègre un shell Python avec affichage de l'aide sur les fonctions dans des infobulles.

Note: si vous testez des applications graphiques Python, il vaut mieux les lancer directement, car Tkinter risque sinon d'interférer avec ces applications.

Utilisé par:

Kate

Disponible sur: http://kate.kde.org/

Le KDE Advanced Text Editor est un éditeur de texte orienté développement, bien adapté pour Python, dispose d'une zone shell dans laquelle on peut lancer une session Python interactive pour faire des tests. Bonne gestion des marques dans le texte pour des déplacements rapides, code folding, lignes d'indentation. Il s'agit d'une application de KDE, donc bien intégrée dans cet environnement, et il est possible de lui adjoindre des plugins.

Utilisé par: Laurent Pointal

Komodo

Disponible sur: http://www.activestate.com/Products/Komodo/

Outil commercial d'ActtiveState.

Notepad++

Disponible sur: http://notepad-plus.sourceforge.net/

Très bon éditeur de sources sous Windows, qui plus est sous license GPL. Zoom rapide avec ctrl+molette.

Permet d'ajouter ce que l'on veut pour l'auto-complétion.

Utilisé par: Laurent Pointal

PyOXIDE

Disponible sur: http://projects.gandreas.com/pyoxide/index.html

Editeur sous Mac OS X écrit en partie en Objective-C et en partie en Python. Dispose d'un débogueur à distance. Gestion de projets. Complétion du code, texte de description des fonctions. Dommage que l'application ne soit pas très stable.

Utilisé par: Laurent Pierron

Pype

Disponible sur: http://pype.sourceforge.net/

Editeur écrit en Python, basé sur wxPython pour l'interface graphique.

Utilisé par:

PythonWin

Disponible sur: http://sourceforge.net/projects/pywin32/

Editeur ajouté en standard lorsque l'on installe le module d'extension Win32 sous Windows. Intègre des outils pour le support de COM/DCOM sous Windows.

Utilisé par: Michel Orengo

PyScripter

Disponible sur: http://mmm-experts.com/Downloads.aspx?ProductId=4 Grande référence en matière de développement en Python dans l'industrie. Une rolls, freeware de surcroît : autocomplétion, navigation, vérification syntaxique, debugger, expression régulier, génération de TU, etc... le tout en 3 Mo ! Utilisé par: Alcatel Postal, Thales, Nasa ...

SciTE

Disponible sur: http://www.scintilla.org/SciTE.html

Editeur de texte pour Python basé sur Scintilla pour X ou Win32. Intègre la coloration syntaxique, la complétion et le pliage de code. Un fichier de configuration permet de régler de nombreux paramètres assez simplement. Bonne documentation (en anglais).

Utilisé par: Julien Vienne

Smultron

Disponible sur: http://smultron.sourceforge.net/

Editeur de texte générique avec coloration syntaxique pour MacOS X. Edition multifichier agréable, une seule fenêtre et une vue permanente de tous les fichiers en cours permet éventuellement de les enregistrer sous forme de projet. Une bibliothèque de morceaux de codes, très pratique pour le HTML et les entêtes de fichiers Python. Exécutable depuis une fenêtre Terminal.

Utilisé par: Laurent Pierron

SPE

Disponible sur: http://spe.pycs.net/

Le Stani's Python Editor. Editeur dédié Python.

Utilisé par:

TextPad

Utilisé par: MCI

Rapide, multi-fichiers, macro-commandes, multi-langages (il existe des fichiers de configuration pour Python), en français, largement configurable, support ANSI, DOS, UTF-8, binaire (à peu près).

La version shareware affiche, de temps en temps, une message.

Ce que j'apprécie beaucoup, c'est la persistance du positionnement horizontal, lors des déplacements verticaux (y compris insertions) ; cela facilite les traitements multi-lignes.

TextWrangler 2

Disponible sur: http://www.barebones.com/products/textwrangler/index.shtml

Plus avancé que la version allégée de BBEdit de la même société.

Utilisé par:

TurboPad

Disponible sur: http://turbopad.sourceforge.net/

Utilisé par:

Vim

Disponible sur: http://www.vim.org/

Le vi amélioré (vi improved). En recherchant Python sur le site vim.org, vous trouverez divers liens (outils, trucs et astuces, configurations...) concernant l'utilisation de VIM pour l'édition de sources Python, voir pour l'utilisation de Python comme langage outil de script dans VIM. On a ainsi dans vim l'auto-complétion, le code folding, l'aide en ligne sur les librairies...

Utilisé par: Wilk (william dodé)

La page Vim du wiki : Vim

Wing IDE

Disponible sur: http://wingware.com/wingide
Version démo sur: http://wingware.com/wingide/trial

Environnement de développement multi-plateformes ayant bonne réputation. Il existe une version "professional" et une version "personal". Le source de la version professional est accessible sous NDA (voir la license).

Utilisé par:

xRope

Disponible sur: http://sourceforge.net/projects/xrope/

Environnement de développement intégré, version beta: Utilise, python, Tkinter, Pmw et Rope (comme éditeur). Auteur: Serge Hulne. Utilisé par: Developpeurs


CategoryHomepage


2016-06-05 21:42