{{tag>Trusty programmation python ide}} ---- ====== Eric IDE====== Eric est un environnement de développement intégré ([[IDE]] - pour Integrated Development Environment) très complet adapté à la programmation [[Python]] et [[Ruby]]. Son développement s'appuie sur le langage [[python]] et le framework [[Qt]] via la librairie [[pyQt]]. Eric intègre le composant d'édition open-source [[http://www.scintilla.org/|Scintilla]] ainsi que les outils de développement proposés par Qt tels que Qt Designer et Qt Assistant. Son système d'extensions (plugin) fait de lui un IDE modulable qui convient aussi bien aux programateurs débutants qu'aux professionels, en particulier pour le développement de logiciels graphiques aliant Python et Qt. Il fût un temps où deux versions d'Eric (4 et 5) coexistaient pour des installations respectives avec python2 et python3. Ce temps est révolu depuis la sortie d'Eric 5.5, qui permet aussi bien une installation avec python2 et python3. Dès lors, le support d'Eric 4 a été abandonné. A noter que l'installation de Ercic 5 requiert Qt4 alors que celle de Eric 6 est basée sur Qt5. ===== Pré-requis ===== * Disposer des [[:sudo|droits d'administration]]. * Disposer d'une connexion à Internet configurée et activée. ===== Installation ===== ==== Version stable : Eric 5.5 ==== L'installation d'Eric 5.5 peut se faire, au choix, avec les version 2 ou 3 de Python. Dans tous les cas, l'installation sera effectuée gràce au framework Qt4, ce qui n'empeche pas qu'Eric permette le développement d'applcations basées sur les deux versions de Python (2 et 3) et de Qt (4 et 5); === Installation des dépendances === * Pour une installation avec **Python2** : sudo apt-get install python-qscintilla2 python-qt4 python-qt4-sql * Pour **Python3** : sudo apt-get install python3-pyqt4 python3-pyqt4.qsci python3-pyqt4.qtsql === Téléchargement des sources === wget -qO- http://sourceforge.net/projects/eric-ide/files/eric5/stable/5.5.0/eric5-5.5.0.tar.gz/download | tar xvz #Sources wget -qO- http://sourceforge.net/projects/eric-ide/files/eric5/stable/5.5.0/eric5-i18n-fr-5.5.0.tar.gz/download | tar xvz #Traductions françaises cd eric* [ajout d'un utilisateur] Ou la version plus récente : wget -qO- http://sourceforge.net/projects/eric-ide/files/eric5/stable/5.5.2/eric5-5.5.2.tar.gz/download | tar xvz #Sources wget -qO- http://sourceforge.net/projects/eric-ide/files/eric5/stable/5.5.2/eric5-i18n-fr-5.5.2.tar.gz/download | tar xvz #Traductions françaises cd eric* * Pour une installation avec **Python2** : sudo apt install eric * Avec **Python3** : sudo python3 install.py ==== Version en développement : Eric 6 ==== La version en cours de développement d'Eric nécessite une version de Qt supérieure à la v5.3, disponible à ce jour dans les dépots officiels Ubuntu à partir de la version Utopic. Pour les versions précédentes d'Ubuntu il faut installer Qt, PyQt5 et PyQt5.qsci à partir des sources. Il semblerait toutefois que la version de python3-pyqt5.qsci des dépôts ne soit pas adaptée à celle de python3-pyqt5([[https://bugs.launchpad.net/ubuntu/+source/qscintilla2/+bug/1391056|bug]]). Nous allons donc la recompiler. * __Installation de dépendances__ sudo apt-get install mercurial build-essential qt5-default qtbase5-dev qttools5-dev-tools libqt5scintilla2-11 python3-pyqt5.qtwebkit python3-pyqt5.qtsvg python3-pyqt5.qtsql * __Création d'un dossier temporaire pour le téléchargement des sources__ mkdir temp cd temp * __Téléchargement des sources de qscintilla__ sudo apt-get source python3-pyqt5.qsci cd qscintilla2-2.8.3+dfsg/Python * __Configuration de l'installation__ sudo python3 configure.py --pyqt=PyQt5 \ #On indique qu'on souhaite utiliser pyqt5 -q /usr/lib/x86_64-linux-gnu/qt5/bin/qmake \ #Chemin du compilateur qmake livré avec qt5 -d /usr/lib/python3/dist-packages/PyQt5 # Chemin d'installation de PyQt5 * __Compilation de la librarie python3-pyqt5.qsci__ sudo make * __Installation de python3-pyqt5.qsci__ sudo make install * __Retour à la base du dossier temporaire__ cd ../.. * __Téléchargement des sources de Eric6 et installation__ hg clone http://die-offenbachs.homelinux.org:48888/hg/eric cd eric sudo python3 install.py ===== Lancement de l'application ===== Une fois l'installtion effectuée, Eric 5.5 et Eric 6 sont disponibles dans vos menus sous l'onglet Développement. Vous pouvez également le lancer en ligne de commande : eric5 ou eric6 ===== Installations complémentaires ===== ====Outils de développement de Qt ==== Eric 5.5 peremet de faire le lien avec des outils externes tels que QtDesigner (création d'interfaces graphiques), Qt Assistant (aide), et les outils de traduction d'application Qt Linguist et Qt Translation Converter. * __Pour installer ces outils dans leur version **Qt4** :__ sudo apt-get install qt4-designer qt4-dev-tools * __Pour la version **Qt5** :__ sudo apt-get install qttools5-dev-tools Il faut ensuite configurer Eric pour utiliser ces outils. Pour celà, aller dans le menu //Configuration>Préférences>Qt>Outils Qt// afin de changer le paramètre **Qt-Prefix**. Selon que vous ayez une architecture 32 ou 64 bits, et que vous souhaitiez utiliser Qt4 ou Qt5, indiquer l'une des directions suivantes : /usr/lib/i386-linux-gnu/qt4/bin/ /usr/lib/i386-linux-gnu/qt5/bin/ /usr/lib/x86_64-linux-gnu/qt4/bin/ /usr/lib/x86_64-linux-gnu/qt5/bin/ Se rendre ensuite dans //Configuration>Afficher les outils externes// et cliquer sur //Rechercher// afin de vérifier que ces outils ont bien été détectés. ====Documentations ==== De même que pour les outils de dévellopement, vous pouvez installer diverses documentations qui seront intégrées au menu **Aide** d'Eric : Installer, au choix, les documentations suivantes **[[apt>python2.7-doc|Python2]], [[apt>python3-doc|Python3]], [[apt>qt4-doc-html|Qt4]], [[apt>qt5-doc-html|Qt5]], [[apt>python-qt4-doc|PyQt4]] et [[apt>pyqt5-doc|PyQt5]]** Pour installer toutes les documentations en une seule commande : sudo apt-get install python2.7-doc python3-doc qt4-doc-html qt5-doc-html python-qt4-doc pyqt5-doc Renseigner ensuite la direction des différentes documentations à utiliser dans le menu : //Configuration>Préférences>Aide>Sources de documentation// __Python2 :__/usr/share/doc/python2.7/html/index.html __Python3 :__/usr/share/doc/python3/html/index.html __Qt4 :__/usr/share/doc/qt4-doc-html/html/index.html __Qt5 :__/usr/share/doc/qt5-doc-html/html/index.html __Pyqt4 :__ /usr/share/doc/python-qt4-doc/html/index.html __Pyqt5 :__ /usr/share/doc/pyqt5-doc/html/index.html ====Compilateurs de ressources et de fenètres et extracteur de traductions==== Installer **[[apt>pyqt4-dev-tools]]** ou **[[apt>pyqt5-dev-tools]]** ====Coloration syntaxique Pygments==== Eric supporte par défaut la coloration syntaxique de nombreux langage par l'utilisation de la librairie QScintilla. Si vous souhaitez bénéficier d'une coloration syntaxique pour un langage spécifique, installer simplement le paquets **[[apt>python-pygments]]** ou **[[apt>python3-pygments]]** qui supporte encore plus de langage. Definir ensuite dans les préférences la coloration à utiliser en fonction du type de fichier //Configurartion>Préférences>Editeurs>Analyseurs syntaxinques>Types de fichiers// ===Exemple du ReStructuredText=== Par exemple, pour bénéficier de la coloration syntaxique des fichiers de type ReStructuredText (utilisés notament pour la documentation [[sphinx]] des programmes python), modifier les paramètres de la manière suivante : //Configurartion>Préférences>Editeurs>Analyseurs syntaxinques>Types de fichiers// __Patern de nom de fichier :__ *.rst __Analyseur syntaxique :__ Alternatif __Analyseur alternatif :__ ReStructuredText **__Remarque :__** Il est également possible de bénéficier d'une fonction très pratique d'aperçu pour ce type de fichier et d'autres, en installant le paquet **[[apt>python-docutils]]** ou **[[apt>python3-docutils]]** ====Correction orthographique PyEnchant==== Installer les paquets **[[apt>python-enchant]]** ou **[[apt>python3-enchant]]** Activer et configurer ensuite la fonctionalité dans le menu //Configuration>Préférence>Editeur>Correction orthographique// ====Auto-complétion et calltips==== L'autocomplétion et les calltips sont effectués grace à des **APIs** interprétés par **Qscintilla**. Pour utiliser un API particulier, il faut le compiler. Pour cela : * Ouvrir le menu //>Configuration>Préférences>Éditeurs>APIs// * Sélectionner l'option //Compiler les APIs automatiquement// * Séléctionner votre //language// de programmation, par exemple //Python3// * Ajouter un API //à partir des APIs installés// ou //à partir des APIs de plugins// * Cliquer sur compiler les APIs * Configurer à votre gout les paramètres de //>Configuration>Préférences>Éditeurs>Autocomplétion// et //>Configuration>Préférences>Éditeurs>Calltips// Par défaut, seuls les APIs de Eric (Fonctions internes de l'IDE, utiles uniquement à son développement) et de [[http://zope.org/|Zope]] sont installés. * Pour avoir accès à l'autocomplétion des module de **Python** (dans ses différentes versions), il faut tout d'abord installer le paquet **[[apt>libqscintilla2-doc]]**. * En ce qui concerne l'API de **PyQt4**, il semble qu'il soit absent des paquets Debian/Ubuntu (dites moi si je me trompe...). Pour le récupérer chez nos amis d'Archinux et l'installer en une ligne de commande : * __Pour Eric 5.5 :__wget -qO- https://www.archlinux.org/packages/extra/x86_64/pyqt4-common/download/ | unxz | tar x -O usr/share/qt4/qsci/api/python/PyQt4.api | sudo tee /usr/share/qt4/qsci/api/python/PyQt4.api * __Pour Eric 6 :__wget -qO- https://www.archlinux.org/packages/extra/x86_64/pyqt4-common/download/ | unxz | tar x -O usr/share/qt4/qsci/api/python/PyQt4.api | sudo tee /usr/share/qt5/qsci/api/python/PyQt4.api * Idem pour **PyQt5.api** : * __Pour Eric 5.5 :__wget -qO- https://www.archlinux.org/packages/extra/x86_64/pyqt5-common/download/ | unxz | tar x -O usr/share/qt/qsci/api/python/PyQt5.api | sudo tee /usr/share/qt4/qsci/api/python/PyQt5.api * __Pour Eric 6 :__wget -qO- https://www.archlinux.org/packages/extra/x86_64/pyqt5-common/download/ | unxz | tar x -O usr/share/qt/qsci/api/python/PyQt5.api | sudo tee /usr/share/qt5/qsci/api/python/PyQt5.api ===== Configuration ===== L'essentiel de la configuration a lieu dans le menu //Configuration// et en particulier //Configuration>Préférences// Les différentes barres d'outils sont entièrement paramétrables et même détachables par clics-droit et glisés-déposés. Le menu //Configuration>Barres d'outils// aide également à cette tâche ===== Installation d'extensions ===== Une des forces d'Eric réside dans ses nombreux plugins. Contrairement à ce que l'on pourrait croire, l'installation de nouveaux plugins ne se fait pas par l'onglet //Plugins>Installation de plugins// mais par celui //Plugins>Référentiels de plugins// ===== Utilisation ===== FIXME: A compléter par les utilisateurs. Vos différentes expériences sont les bienvenues ===== Voir aussi ===== * **(en)** [[http://eric-ide.python-projects.org|Site officiel du logiciel]] * **(en)** [[http://www.scintilla.org/|Page officielle de Scintilla]] * **(en)** [[http://qt-project.org/|Page officielle du projet Qt]] * **(en)** [[http://www.riverbankcomputing.com/software/pyqt/intro|Page officielle de PyQt]] * **(fr)** [[http://forum.ubuntu-fr.org/viewtopic.php?id=1720471|Fil de discussion sur le forum Ubuntu-fr]] ---- //Contributeurs principaux : [[utilisateurs:Davy39|Davy]].//