Komodo Edit : Adieu eclipse !

Cet article fait suite à l’article ‘web’ de Daniel Chetboul paru sur le planet, et le programme présenté étant génial, j’ai décidé de vous en parler un peu plus.

Introduction

Dans une autre dimension, j’utilisais PsPad comme éditeur de texte pour développer (en PHP). Léger, indentation, auto-complétion (mais basique, par rapport à une liste de fonctions prédéfinie) et gestion de projet. Quand je suis passé sous linux, Quanta+ remplissait aussi la même fonction à quelques détails près, et j’étais content,

Puis, grâce à Lilian, j’ai découvert Eclipse, avec des fonctionnalités géniales, tels que l’auto-complétion[1] sur les fonctions des classes et les simples fonctions (avec prise en compte des commentaires). De plus, il inclut tout un système de plugins pour entendre ses fonctionnalités (PHP, svn). Mais à la longue, on se rend compte qu’Eclipse…. c’est lourd. Très lourd. Trop lourd. Et je ne parle pas de travail avec un lecteur réseau distant (ssh) : 15 minutes pour ouvrir un projet. Malheureusement, les fonctionnalités sont bien, et on ne peut pas trop s’en passer une fois que l’on voit ce que l’on peut faire..

Komodo

Et je découvris donc sur le planet… komodo. La différence saute tout de suite aux yeux: c’est léger, et ça fait la même chose, et même plus.

Le programme est en XUL (voir liens, mais c’est une technologie assez intéressante, notamment utilisée pour firefox et ses plugins, que j’ai rencontrée lors du développement de firegpg), disponible sur toutes les plates-formes (XUL y aide), et disponible en deux versions (une gratuite, une payante, évidemment avec plus de fonctionnalités).

On retrouve dans la version de base (Komodo EDIT)

  • Gestion de projets (plusieurs même, c’est un peu le but)
  • Support (complet) du PHP, Javascript, HTML, Css, Python, Ruby, Tcl, XML MAIS PAS du Java (ça ne fait pas tout mais bon)
  • Support (basique) d’un bon nombre de fichiers (environ 50), par exemple SQL, Pascal, bash, etc.
  • Support de libraires (par exemple Rails pour le Ruby)
  • Coloration du code, indentation du code
  • Recherche dans les fichiers du projet
  • Interaction avec d’autres programmes dans le cadre du projet (par exemple une console)
  • Gestion de serveurs distants
  • Extensible avec des thèmes et plugins (aucun n’existe pour le moment, mais c’est possible)
  • Gestionnaire de raccourcis claviers bien développé (peut par exemple se baser sur Vi ou Emacs)
  • Et pleins d’autres choses…
Malheureusement disponible qu’en version complète (et à 295$) (Komodo IDE) :
  • Travail de groupe (SVN, CVS, …)
  • Débugage
  • Inspecteur HTML, DOMViewer, explorateur de code (fonctions, classes)
  • Créateur d’expressions régulières
(Basé sur leur site web, je n’ai pas testé)

Le programme à néanmoins quelques défauts :

  • Propriétaire. (Remarquons que les développeurs semble se servir beaucoup de l’open source, c’est bien)
  • En anglais
La différence entre eclipse et komodo question légèreté est flagrante (sans parler de l’utilisation du CPU) : 50Mo contre 200Mo de mémoire résidante et 187Mo conte 760Mo en mémoire virtuelle.

Installation sur ubuntu

L’installation sur ubuntu est théoriquement très simple. Normalement, vous ne devriez pas avoir à installer question librairies et nouveaux programmes, mais si cela ne fonctionnerait pas, installez libstdc++6, libstdc++5, xorg-x11-deprecated-libs.

Pour l’installation, il vous suffit de faire :

cd /tmp wget http://downloads.activestate.com/Komodo/Linux/4.0/Komodo-Edit-4.0.3-278227-linux-libcpp6-x86.tar.gz tar xvf Komodo-Edit-4.0.3-278227-linux-libcpp6-x86.tar.gz cd Komodo-Edit-4.0.3-278227-linux-libcpp6-x86/ sudo ./install.sh

Si tout c’est bien passé, Komodo est apparu dans le menu (Sous développement), ou vous pouvez le lancer en tapant /opt/Komodo-Edit-4.0/bin/komodo dans un terminal.

Si vous êtes avec un noyau 64 bits, ça peut ne pas fonctionner (je n’ai pas rencontré de problèmes personnellement), dans ce cas :

  • Installez les librairies 32 bit : sudo apt-get install ia32-libs lib32asound2 lib32ncurses5 ia32-libs-sdl ia32-libs-gtk gsfonts gsfonts-x11 linux32. Réessayez de lancer komodo. Si ça ne marche pas, continuez.
  • Créez un fichier /etc/pango32/pangorc, et entrez le texte suivant :
[Pango] ModuleFiles=/etc/pango32/pango.modules [PangoX] AliasFiles=/etc/pango/pangox.aliases
  • Avant de lancer komodo dans un terminal, tapez export GTK_PATH=/usr/lib32/gtk-2.0/ et export PANGO_RC_FILE=/etc/pango32/pangorc, puis lancez komodo, cela devrait fonctionner. Pour éviter de taper trois commandes à chaque fois, vous pouvez créer un petit script shell.
(Source)

Quelques captures

Komodo - Css Édition d’un fichier (une CSS).

Komodo-recherche sur le projet Une recherche sur tout le projet.

Komodo-navigateur intégré. Un navigateur est intégré ! Très pratique afin d’éviter de switcher entre deux fenêtres !

komodo-Aide bien faite. L’index de l’aide de komodo, extrêmement bien faite, avec tutoriels et tout et tout !

Quelques Liens

Le site de komodo (en) | La liste complète des fonctions de komodo (en) | Les différences entre komodo IDE et Edit | Xul sur la wikipedia

Notes

[1] Quelqu’un connait le mot en français ?

Comments

Bonjour,

Sait tu si il existe des raccourcis claviers pour rajouter les snippet .. exemple : je tape doctype puis touche spéciale et j’ai la def du doctype entièrement. Pour l’instant j’ai pas trouvé..



Samuel MARTIN, 2007-04-22 13:45:12

Coucou,
Il me semble que l’on dit bien auto-complétion en français.
Sinon Quanta fait aussi l’auto-complétion. Il faut l’activer dans les extensions (plugins). Il me semble cependant qu’elle ne la propose pas pour les fonctions PHP.
Sinon Eclipse est effectivement très très lourd. Je trouve cependant que c’est la solution idéale pour développer en Java.
Merci pour cet article.



djib, 2007-04-22 14:27:13

Quanta fait de l’autocomplétion avec brio
Il va même jusqu’à vous proposer les classes que vous auriez définie et incluse dans un fichier externe (classieu)

Malheureusement la gestion de l’indentation est hasardeuse et il manque tjrs un code beatifer qui m’était vraiment utile dans phpedit sous windows



tenshu, 2007-04-22 14:37:18

djib -> Sinon pour le Java il y a aussi NetBeans (un peut moins lourd), que je trouve pas mal.

Samuel MARTIN -> Il semblerait que ce ne soit pas possible, sauf avec des racoursis claviers… Regarde un peut plus profondément dans l’aide, mais j’ai rien trouvé.

tenshu/djib -> À voir chez moi, je n’ai pas le pugin… Et si ça ne supporte pas le PHP c’est dommage. (Je viens d’essayer (sans plugin))


The_Glu, 2007-04-22 14:44:27

Personnellement, je me refuse à utiliser tout logiciel qui existe à la fois dans une version gratuite et dans une version payante.

L’un des attraits de Linux c’est de pouvoir accéder aux nouvelles versions et aux nouvelles fonctionnalités des logiciels sans soucis. Là, c’est typiquement le cas où de nouvelles fonctionnalités vraiment intéressantes seront en priorité ajoutées à la version payante, et je refuse de cautionner cela, ce qui est le cas même en se limitant à la version gratuite.



EvilDead, 2007-04-22 14:50:49

Tu ‘es trompé dans le lien vers le site de Komodo, il renvoie vers ton billet.
Voila le vrai:
http://www.activestate.com/products...
Sinon, je suis d’accord avec EvilDead: c’est pas libre donc bof…



Jorkar, 2007-04-22 17:06:58

Jorkar -> C’est fait merci !


Concernant le ‘non-libre’, il faut bien un peut de propriétaire non ? ‘ToutLibre’, je trouve un peut borné comme vision…



The_Glu, 2007-04-22 17:10:23

Mais un peu ça peut devenir beaucoup si ce type d’initiative a du succès et pour ma part je n’ai pas vraiment envie que Linux se rapproche de l’univers commercial de Windows.

Après c’est une question de point de vue, mais il y a tellement d’alternatives libres que je préfère toujours soutenir ces dernières, quitte à avoir quelques fonctionnalités en moins.



EvilDead, 2007-04-22 19:29:22

Typos :

Aideu –> Adieu (a moins que ce soit un blague de geek qui m’echappe ;-)

Bach –> Bash (laissez le tranquille)

Sinon pour l’integration svn… rapidSVN est tres commode.



Ju., 2007-04-22 20:19:48

Ju -> Merci. Quand on passe plus de 3 heures sur un billet, la relecture est difficile…



The_Glu, 2007-04-22 20:24:48

L’ouverture très longue des projets sous eclipse est due à notamment au validateur HTML qui scanne out le projet à l’ouverture. Il suffit d’ouvrir la vue Progress et cliquer le bouton Stop et c’est réglé.



thierrybo, 2007-04-22 20:32:13

thierrybo -> Si je l’enlève, j’ai le souvenir qu’il veut le refaire dès que j’ouvre un fichier, alors bon.



The_Glu, 2007-04-22 20:56:33

Juste pour dire que le lien du planet ubuntu qui redirige vers tous tes billets est faux, peut-être que cela vient de ton flux rss ou du robot du planet, je sais pas, toujours est-il que ca serait mieux de réparer ca :)



Matt.Rixx, 2007-04-23 09:21:07

Matt.Rixx -> C’est le planet qui est en cause (tous les blogs DC2 ont le problème).



The_Glu, 2007-04-23 10:20:49

Sans suport SVN … pour moi c’est non merci



macsim, 2007-04-23 17:30:28

Je voulais savoir si il était possible via cet éditeur d’accéder directement à un fichier sur un serveur windobe via un partage samba ?
( je n’y suis pas arrivé )



Smashou, 2007-04-24 11:03:48

Je viens de tester sous w$ (patapé), c’est plus léger que des solution types Aptana mais beaucoup moins rapide au démarrage que Pspad.
Bref, ça fait lourd quand même;
L’auto-complétion est par contre une réussite, c’est rare sur des logiciels gratuits (d’ailleurs à part aptana, les autres n’ont pas l’auto-complétion automatique avec liste de choix apparaissant à la frappe -cad sans tapper sur une touche pour faire apparaitre la liste)
Donc bien mais dommage pour le démarrage…



Anis, 2007-04-24 13:46:12

B)
Bonjour , je suis te remercie pour ton conseil avisé ,que je me suis empressé de suivre . j’ai donc installé dotclear sur mon site et vais pouvoir enfin mettre en ligne ce qui me tient coeur , à savoir l’astronomie, le dev (toutes plateformes confondues) et bien sûr , Ubuntu ;)

A une prochaine fois peut être , et merci encore

Daniel , dit Dchsoft



Dchsoft, 2007-04-24 16:00:09

Smashou -> Si t’est sous ubuntu, un petit ‘Se connecter à un serveur’ dans le menu Raccourcis devrais suffir non ?



The_Glu, 2007-04-24 17:51:45

J’ai toujours entendu parlé de komodo, mais je n’ai jamais testé, à cause de sa licence …
Ton billet m’a donné envie de l’essayer, comme ça, car effectivement, eclipse est vraiment trop lourd.
Pour du python j’ai vraiment essayé enormément d’editeurs. Et bien komodo est un cran au dessus, l’auto completion est au-dessus de pydev/eclipse. Son système de toolbox est du pur bonheur (même eclipse me semblait trop limité … là c nickel)
Vraiment bluffant, je lui ferai qques reproches mineures, mais j’ai enfin trouvé un éditeur pas trop mal (dommage pour le svn ;-(, mais super pour les macros en python et tout le reste ).
Activestate étant une boite qui supporte bien le gpl, je ne serai pas surpris qu’il libère "komodo edit" (de plus je crois qu’il y a des conflit avec la MPL) sous peu …
Merci d’avoir fait ce billet ! mes programmes te remercient ;-)



manatlan, 2007-04-27 14:00:49

(l) Komodo est pas mal du tout, merci pour ce billet 8)

J’ai juste une chtite question, avez vous trouvé une fonction de conversion de caractères spéciaux en entités HTML ? (è en è automatiquement ?)
J’ai cherché, en vain… c’est la seule fonction qui me manque par rapport a mon éditeur sous Windows.

Thx.



Damien ALEXANDRE, 2007-04-28 21:48:54

Salut lmao :‘(

et avec tout cela et à ce pris il me fait mon diné me le livre et me fait manger.
plutôt commode ce Komodo!



sysyphe, 2007-05-31 19:54:35

As tu une idée de la source de téléchargement a mettre dans les sources de mise a jour de Synaptic pour que les mises a jours ce fasse toutes seul, si c’est possible, pour passer a la 4.1 par exemple.
Désolé, Newbie inside sous Linux.



Jah, 2007-06-04 23:44:17
Eclipse s’amuse a valider tous les fichiers du projet. Affiche les @todo , les “warnings” et les erreurs de tout le projet.

Il réalise une autocomplétion des fichiers même si ceux-ci sont fermés. Donc l’utilisation d’Eclipse à travers un réseau et généralement lente (ce qui me semble logique vu tout ce qu’il fait en tache de fond).

Mon seul regret avec Eclipse c’est l’autocomplétion des fonctions PHP elles-mêmes qui ne semble pas vouloir s’activer :( …

Un environnement de dev convenable pour le web (surtout en PHP (qui possède encore un environnement léger)) devrait être en local sur les poste des développeurs couplé à SVN pour le travail en équipe.

koukou, 2008-06-04 09:33:58