Planet

16 Mai 2013 à 09:37

Migration de Bash à zsh via Quack1

Depuis quelques temps, je vois de plus en plus de personnes utilisant zsh comme shell par défaut en lieu et place de Bash. J'ai dont été tenté moi aussi d'essayer zsh.

Ce qui m'a fait sauter le pas en début de semaine, ce fût cette présentation disponible sur Slideshare et partagée sur Twitter par @UnixToolTip :

Why Zsh is Cooler than Your Shell from jaguardesignstudio

Lien de téléchargement de la présentation. Attention, SlideShare fournit un pdf un peu pouri et quasiment inutilisable.. :/

Les points qui m'ont vraiment attiré sont :

  • Rétro compatibilité avec Bash
  • Lors de l'auto-complétion, affichage des choix possibles avec seulement 1 TAB (au lieu de 2 avec Bash)
  • L'auto-complétion des options de nombreux outils, donc Git, Make, etc... Par exemple, avec Git, lors d'un git add, zsh va ne lister avec TAB que les fichiers modifiés depuis le dernier commit, ce qui est très pratique.
  • Un historique des commandes lancées en temps-réel. Si vous avez plusieurs shells ouverts, une commande lancée dans l'un sera accessible dans l'historique (en remontant avec la flèche haut ou par une recherche Ctrl-R) dans l'autre directement sans avoir à rouvrir le shell.
  • Une gestion des séparateurs améliorée par rapport à Bash.

Je m'explique sur ce dernier point. Quand, dans Bash, on fait un ^W pour supprimer le dernier "mot" tapé, Bash supprime tout jusqu'au prochain espace. Exemple :

quack@spiderman $ cd /home/quack/work^W quack@spiderman $ cd

Au contraire, zsh gère les séparateurs tels que le slash dans ^W, et supprimera tout jusqu'au prochain mot "réel" :

╭────<quack@spiderman >───< ~ > ╰───[8:53:11] $ cd /home/quack/work^W ╭────<quack@spiderman >───< ~ > ╰───[8:53:11] $ cd /home/quack/

C'est une fonctionnalité que j'attendais et que j'ai pu retrouver ici.

 

Il y a sûrement d'autres choses très bien dans zsh, mais toutes ne m'ont pas forcément parues exceptionnelles tout simplement parce que je ne vais pas les utiliser souvent.

Un dernier avantage est la communauté qu'il y a derrière, et surtout derrière oh-my-zsh, qui maintient une base de fichiers de configuration pour zsh, qui permet d'obtenir un super shell sans avoir à se plonger dans les méandres de la documentation à peine zsh installé. J'ai pu ainsi retrouver un shell identique à celui que je m'étais fait sur Bash simplement en modifiant un thème présent dans oh-my-zsh.

Si vous voulez essayer zsh

Pour l'installer sur votre système (chez moi Ubuntu) un simple apt-get install zsh suffit. On change ensuite son shell par défaut pour utiliser zsh :

quack@spiderman $ chsh Mot de passe : Changement d'interpréteur de commandes initial pour quack Entrez la nouvelle valeur ou « Entrée » pour conserver la valeur proposée Interpréteur de commandes initial [/bin/bash]: /bin/zsh quack@spiderman $ $

Et après une déconnexion/reconnexion, on se retrouve avec un "beau" shell zsh :

spiderman%

Et voilà!

Retrouvez également le bon article de Julien sur son blog, où il explique plus en détail que moi l'installation et les premières étape de configuration!

 raspberrypi_bw

Travaillant en ce moment sous la solution de TOIP Elastix, j’ai voulu voir si Raspberry Pi serait capable de l’encaisser. Il s’avère qu’il existe une version (officielle!) de Elastix pour les micro PC sous ARM : micro-Elastix. Voyons comment elle tourne sur le Raspberry Pi.

Matériel :

  • RaspBerry Pi Model B + carte SDHC 4Go (acheté grâce à Idealo sur Amazon)
  • Switch TP-Link TL-SF1008P + Téléphones IP Aastra

raspberrypi (13)

URL de téléchargement de  l’image micro-elastix (700Mo environ) : http://elx.ec/armimg

Site officiel micro-elastix : http://uelastix.org

uelastix_logo

 J’ai procédé à la préparation et à l’installation de micro-elastix depuis mon portable sous Linux Mint (donc les manip seront les même sous Ubuntu).

Préparation de la carte SD

Avec gparteg, on crée 2 partitions sur la carte SD, une première de 512Mo en FAT16, étiquetée « BOOT », et une seconde en EXT3, étiquetée « rootfs », du reste de la taille de la carte (3500Mo). Les partitions ainsi créées se sont montées sur mon système dans les dossiers /media/timcruz/BOOT et /media/timcruz/rootfs. Reste maintenant à copier Elastix sur la SD.

 

Copie de micro-elastix sur la carte SD

L’image de micro-elastix optimisée pour Raspberry Pi est disponible ici. Il s’agit d’une archive tar contenat deux autres archives : BOOT.tar.gz et rootfs.tar.gz (jusque là tout est très logique). On décompresse donc ce tar pour avoir les 2 archives dans un dossier.

Maintenant on va extraire le contenu des archives dans la partition du même nom :

tar -C /media/timcruz/BOOT/ -xzf BOOT.tar.gz
tar -C /media/timcruz/rootfs/ -xzf rootfs.tar.gz

La carte SD est maintenant prête et il ne reste plus qu’à démarrer son Raspberry Pi avec sa carte SD branchée.

 

Micro-Elastix sur le Raspberry-Pi

Par défaut, le Raspberry démarre avec l’ip 192.168.1.251 et avec le service DHCP désactivé, Elastix sera donc simplement accessible à l’URL http://192.168.1.251. Presque tous les services de Elastix sont opérationnels (ne fonctionnent pas : la messagerie instantanée, le service Fax et le Call Center). La version d’Elastix embarquée lors de mon test est la 2.4.0.

eslatix_version

Le compte par défaut pour accéder à Elastix est admin, son mot de passe étant palosanto. Le compte sera le même pour l’accès en SSH (ouvert par défaut).

microelastix_dashboard

Par contre, le processeur du Raspberry Pi prend très cher et le dashboard annonce une charge CPU de 100%. Pour mes tests, j’ai utilisé (avec succès) mon Raspberry Pi sous MicroElastix avec un switch TP-LINK TL-SF1008P (qui a le double avantage d’être abordable et PoE) et des téléphones Aastra.

Concrètement, on a ici une plateforme de test opérationnelle sur laquelle on connectera 1-2 téléphones à condition d’avoir overclocké un minimum le processeur de votre Pi (procédure simple et qui maintient la garantie du Raspberry Pi). Pour 80€ le serveur, qui dit mieux?

Depuis que j’ai effectué la mise à niveau de ma distribution favorite, je n’arrive plus lorsque j’utilise l’environnement Unity à faire fonctionner mon lecteur de radio favori : Radiotray.

Chaque fois que je lance l’application, l’icône Radiotray n’apparaît pas dans mon tableau de bord alors que cela fonctionne très bien lorsque j’utilise l’environnement GNOME Schell. J’ai essayé de lancer l’application via le terminal afin de voir si j’avais un message d’erreur mais rien de significatif n’est apparu.

radio00

J’ai alors effectué quelques recherches sur internet et je suis tombé sur un billet du blog Reformed Musings donnant une solution très simple pour résoudre ce problème.

Dans un premier temps, nous allons éditer le fichier de configuration de Radiotray afin de le modifier. Pour ce faire, ouvrons un terminal et entrons la commande:

gedit ~/.local/share/radiotray/config.xml

radio01

On lit très clairement en ligne 8 qu’il existe trois options de configuration pour l’icône: appindicator, systray et chooser. Dans mon fichier, à la ligne 9, c’est systray qui est sélectionné et qu’il faut modifier par appindicator.

radio02

 

Une fois cette modification effectuée, il ne reste plus qu’à enregistrer le fichier de configuration et à lancer radiotray qui désormais apparaît bien dans le tableau de bord.

radio04

Amusez-vous bien.

 

Si comme moi vous utilisez Shotwell pour gérer vos photos numériques, il est très simple de faire un diaporama photo avec ce logiciel. Ce peut etre très agréable en effet de faire défiler vos photos de famille ou voyage sur grand ecran (connexion du pc portable avec la TV du salon) lors d’un repas familial ou entre amis. La solution mis en oeuvre ici est très simple.

Le logiciel shotwell classe donc vos photos par date et les affiche de cette facon :

Le menu de diaporam est accessible par F5 en se positionnant sur un répertoire de date comme sur l’image ci-dessus. Cependant, comment faire pour afficher des photos de plusieurs répertoires en meme temps ?

Très facile en fait, il suffit d’associer des ‘tags’  à vos photos. Par exemple, ci-dessous je sélectionne mes photos et applique le tag ‘granitrose’. Pour ce faire, je sélectionne le répertoire de date, je sélectionne toutes mes photos avec CTRL+A et un clic droit pour faire apparaitre le menu suivant :

Je sélectionne donc ‘add tags’ et met ‘GranitRose’ :

Je fais ca autant de fois que j’ai de répertoire et de photos.

Une fois mes photos tagguées, un nouvel item est apparu en bas du panneau de gauche de shotwell :

Ici j’ai 2 tags de photos : diaporama et GranitRose.

Maintenant, pour faire le diaporama sur ces tags, il suffit d’en sélectionner un et de taper sur F5 et c’est parti !

Astuces :

1) pour supprimer une photo d’un ensemble de tag, il suffit de sélectionner le tag, puis la photo et un clic droit faire apparaitre un menu où vous pouvez enlever un tag :

2) Lors du diaporama, un menu de configuration est disponible, pour le faire apparaitre, il faut positionner la souris au bas de l’écran :

Vous pouvez ici choisir le temps d’affichage des photos, la longueur des transitions, le mode de transition en cliquant sur ‘settings’ :

Dommage qu’il n’y ait pas un mode aléatoire … ce serait parfait avec ca.

Une petite musique jamendo radio par dessus et le diaporama est super !

Telecharger l'article au format PDF

Introduction

Sonar est un outil d'analyse qualitative de code, à l'origine créé pour du java, il permet depuis d'y installer des plugins pour gérer beaucoup de langages (C, C++,C#,Javascript,Python...) et notamment php qui va nous interesser ici

L'installation

Il y a deux moyens d'installer sonar: le premier en téléchargeant les éléments sur le site, le second en passant par le gestionnaire de paquets (plus simple :)

Sonar n'étant pas dans les dépôts officiels d'Ubuntu, vous ne devez l'installer qu'en connaissance de cause.

Nous commençons par ajouter le dépot de sonar "deb http://downloads.sourceforge.net/project/sonar-pkg/deb binary/" à notre fichier /etc/apt/sources.list (sans les guillemets)

Mettez ensuite à jour votre cache (pour prendre en compte ce nouveau dépot)

sudo apt-get update

Installons ensuite le paquet sonar

sudo apt-get install sonar

Lançons ensuite celui-ci :

sudo /etc/init.d/sonar start

Rendez vous à l'adresse localhost:9000 (il faut attendre une bonne quelques instants avant que l'url ne soit accessible (le temps que sonar ai fini de démarrer)

Installons le support du PHP

Ouvrez votre navigateur sur http://localhost:9000

Cliquez sur "log in" et authentifiez vous avec le couple admin/admin,

  • cliquez sur le lien "configuration"

    cliquez sur l'onglet available plugins

    cliquez sur "php" puis sur le bouton "install"

    Sonar nécessite un redémarrage pour prendre en compte PHP

    sudo /etc/init.d/sonar restart

    La partie php nécessite l'installation d'outil php pour pouvoir fonctionner:
    Installons d'abord PEAR

    sudo apt-get install php-pear Mettons le à jour: pear upgrade pear Ajoutons y les dépôts nécessaires pour cet article pear channel-discover pear.phpunit.de pear channel-discover pear.symfony-project.com pear install phpunit/PHPUnit-3.5.5

    Installons PHPDepend

    pear channel-discover pear.pdepend.org pear install pdepend/PHP_Depend-1.0.3

    Installons PHPMD

    pear channel-discover pear.phpmd.org pear install --alldeps phpmd/PHP_PMD-1.3.2

    PHP CodeSniffer

    pear install PHP_CodeSniffer-1.3.2

    La partie serveur est installée, il nous faut désormais installer le "runner" (la partie qui analysera le code)
    Télécharger l'archive du runner et décompressez-la dans un de vos répertoires, par exemple nous créerons ici le répertoire bin (dans notre répertoire home) et nous le renommons en sonar-runner ( /home/mika/bin/sonar-runner)

    Paramétrage de l'analyse

    En retournant sur localhost:9000, après s'être logué en tant qu'admin, on refait un tour dans la rubrique "configuration"

    Sonar fonctionne avec des règles à paramétrer, par défaut l'outil vient avec une série de "profile" déjà paramétré, vous avez également la possibilité de créer votre propre profil (on y revient après)

    Paramétrage du projet

    Il reste une dernière étape avant de lancer l'analyse: le paramétrage de celui-ci pour le projet à analyser.
    Créer un fichier "sonar-project.properties" dans le répertoire de l'application php à analyser
    Ce fichier ressemble à ceci:

    # required metadata sonar.projectKey=my:project sonar.projectName=My project sonar.projectVersion=1.0 # path to source directories (required) sources=srcDir1,srcDir2 # path to test source directories (optional) tests=testDir1,testDir2 # path to project binaries (optional), for example directory of Java bytecode binaries=binDir # optional comma-separated list of paths to libraries. Only path to JAR file and path to directory of classes are supported. libraries=path/to/library.jar,path/to/classes/dir # Uncomment this line to analyse a project which is not a java project. # The value of the property must be the key of the language. #sonar.language=cobol

    Par exemple, ici on va tester le code des librairies php du mkframework, on va créer ce fichier dans le répertoire du framework dans /home/mika/www/mkframework/

    sonar.projectKey=my:mkframework sonar.projectName=mkframework sonar.projectVersion=1.0 # path to source directories (required) sources=lib/framework # Uncomment this line to analyse a project which is not a java project. # The value of the property must be the key of the language. sonar.language=php sonar.phpUnit.skip=true note: j'ai désactivé la vérification de phpUnit car je ne l'utilise pas pour mes tests unitaires ;)

    L'analyse

    Plus qu'à lancer l'analyse à partir du répertoire où est situé le fichier sonar-project.properties

    cd /home/mika/www/mkframework/ /home/mika/bin/sonar-runner/bin/sonar-runner

    L'analyzer va tourner pendant un bon moment, une fois qu'il aura terminé, vous pourrez retourner sur la page web de sonar

    Sonar va vous informer des variables/fonctions/méthodes non utilisées, de quelques erreurs de conceptions, identifier les méthodes jugées complexes... en clair vous analyser votre code en vous permettant de l'améliorer

    Libre à vous de prendre en compte ou non ces remarques :)

    Créer son profil de paramétrage

    Déjà que vous pouvez switcher entre les différents profils proposés (sonar way,zend...) vous pouvez en plus créer votre propre profil.

    Tout l'intérêt de sonar est ici: toutes les règles disponibles ne sont pas forcément pertinentes dans votre projet/pour votre société.

    Dans Sonar on peut créer des profils

    Saisissez le nom de votre profil

    Cliquez sur votre profil qui apparait désormais dans la liste

    Ici vous avez un block de recherche permettant de filtrer les differentes règles disponibles

    Une fois vos recherches lancées, vous n'avez plus qu'a cocher les règles qui vous intérèssent (pas besoin de sauvegarder)

    Ainsi vous pourrez à present lancer sonar sur votre profil, le plus simple étant de définir votre profil "par défaut"

    Avec Sonar, quelque fois le mieux est l'énemi du bien

    Attention à une chose: en voulant bien faire, souvent on à tendance à choisir la facilité: une méthode trop longue ? ok je vais la factoriser en deux, oui mais l'outil de contrôle de complexité va lever une alerte, tout ça pour dire que des fois avec sonar, en corrigeant des alertes, on se retrouve à diminuer sa note ;)

    Il ne faut alors pas se décourager et essayer plusieurs méthodes différentes pour arriver a obtenir un code toujours plus performant et le plus succint possible. :)

    Conclusion

    Vous avez pu apprécier ici les subtilités qui font le charme de cet outil très puissant qu'est Sonar.

    Je l'utilise personnellement régulièrement pour auditer le code de mon framework, cela permet d'avoir un "relecteur" objectif ;)

  • Suite au billet que j’ai publié à propos d’Arte + 7 recorder, j’ai reçu bon nombre de commentaires me rappelant à juste titre que cette application n’était plus maintenue mais qu’une autre nommée Qarte lui avait succédé et permettait également de télécharger les programmes diffusés les sept derniers jours sur Arte.

    qarte01

    Qarte propose de plus des fonctionnalités qui n’étaient pas disponibles chez son prédécesseur, à savoir :

    • Arte Live Web (le meilleur de la scène dans toute sa diversité)

    qarte02

     

    • Extras (page identique à la page Arte Live Web qui présente les partenaires musicaux d’Arte Live Web

    qarte04

    Comme Arte + 7 recorder, Qarte ne se trouve pas dans les dépôts officiels d’Ubuntu et ne doit être installé qu’en toute connaissance de cause. Heureusement, il existe un PPA.

    Ouvrez un terminal et entrez la commande :

    sudo add-apt-repository ppa:vincent-vandevyvre/vvv

    puis

    sudo apt-get update

    et enfin

    sudo apt-get install qarte

    Vous pouvez télécharger les programmes d’Arte.

    qarte03

    Amusez-vous bien.

    C’est le post ci-dessous que j’ai lu dans mon fil Google + qui m’a donné envie d’écrire ce billet sous la forme d’une réponse à la problématique de Jean-Baptiste.

    arte000

    Mon cher Jean-Baptiste,

    encore une fois, les utilisateurs de GNU/Linux sont mis de côté et, comme d’habitude, ne sont considérés que ceux de Windows et de Mac OS et, si comme moi tu n’as pas de système propriétaire à la maison, tant pis pour toi qui ne représente qu’une infime quantité des internautes.

    Heureusement, il te reste une possibilité pour visionner gratuitement films et documentaires diffusés les sept derniers jours sur Arte dans ta Ubuntu: Arte + 7 recorder.

    arte-plus-7-recorder

    Cette application développée par Benjamin Baudoin s’installe en deux coups de cuiller à pot dans ta distribution préférée. Je dois avant tout te préciser que cette application ne se trouve pas dans les dépôts officiels d’Ubuntu, tu ne dois donc l’installer que si tu sais ce que tu fais. La bonne nouvelle, c’est qu’il existe un PPA. Tu vas donc ouvrir un terminal et indiquer à ta machine l’adresse du dépôt en entrant la commande:

    sudo add-apt-repository ppa:arte+7recorder/ppa

    Tu mettras ensuite à jour la liste de tes dépôts avec un

    sudo apt-get update

    puis tu pourras enfin l’installer avec la commande

    sudo apt-get install arte+7recorder

    Arte + 7 recorder est maintenant dans le Dash de ton ordinateur, ouvre le.

    arte03

    Comme c’est le premier démarrage de l’application, tu as un message te demandant de configurer Arte + 7 recorder.

    arte01

    Comme tu le vois sur l’image suivante, ce n’est pas compliqué, il suffit d’indiquer son lecteur vidéo, le répertoire dans lequel tu souhaites sauvegarder les vidéos puis de redémarrer.

    arte02

    L’interface est agréable, tu as la liste des vidéos disponibles et lorsque tu cliques sur un titre, apparaît le résumé du film ou documentaire que tu as choisi.

    arte04

    Un simple clic sur le symbole “+” de couleur verte et hop, l’émission est sélectionnée. Il ne te reste plus qu’à cliquer sur le bouton “Télécharger” qui se transforme alors en bouton “Annuler” si toutefois tu changeais d’avis.

    Cerise sur le gâteau  tu n’es pas obligé d’attendre la fin du téléchargement pour lire la vidéo, à condition que ton débit internet soit suffisant, un simple clic droit sur le nom de l’émission en cours de téléchargement et…

    arte07

    … tu peux immédiatement visionner ton programme.

    arte05

    Amuse-toi bien.

    06 Mai 2013 à 12:19

    Des nouvelles d'Ubuntu Touch via Quack1

     

    Dans un de mes derniers articles, je vous parlais d'Ubuntu Touch.

    Ce matin Jono Bacon, Community Manager d'Ubuntu, a publié un article à propos d'Ubuntu Touch, dans lequel il donne quelques informations sur le futur OS pour mobiles et sur son développement.

    On y apprend notamment que la version 1.0 est prévue pour Octobre 2013, soit au moment de la sortie de la version 13.10 d'Ubuntu, ce qui laisse présager une intégration d'Ubuntu Touch dans la version desktop d'Ubuntu. Le système pourrait ainsi être déployé chez les utilisateurs sur des mobiles au cours du premier semestre 2014.

    Au niveau du développement, Jono Bacon donne un aperçu des équipes en place :

    • 15 équipes d'ingénieurs
    • 5 équipes de design
    • 5 "services teams"

    Tout ceci totalisant plus de 150 personnes.

    Il précise enfin que le développement avance à bon train, malgré la taille du projet, les fuseaux horaires différents entre chaque équipes et les problèmes que celles-ci on pu rencontrer en route.

    Tout ceci aurait pu n'être qu'un discours pipeau et enjoleur de Community Manager, mais Jono Bacon annonce tout de même qu'à l'heure actuelle Ubuntu Touch n'est pas utilisable comme principal OS sur un mobile, puisque certaines fonctions ne sont pas ou très peu implémentées, et que cela reste des versions en cours de développement.

     

    On s'aperçoit donc que le développement d'Ubuntu Touch suit son cours, il reste encore 6 mois aux équipes pour finaliser une version 1.0 qui soit utilisable par Mme. Michu.

    J'attend donc avec encore plus d'impatience une version stable à installer sur un smartphone pour pouvoir la tester, ou au moins un portage d'Ubuntu Touch vers un modèle de smartphone que j'ai en stock à la maison pour pouvoir jouer un peu avec!

    Source Image

    06 Mai 2013 à 12:19

    Des nouvelles d'Ubuntu Touch via Quack1

     

    Dans un de mes derniers articles, je vous parlais d'Ubuntu Touch.

    Ce matin Jono Bacon, Community Manager d'Ubuntu, a publié un article à propos d'Ubuntu Touch, dans lequel il donne quelques informations sur le futur OS pour mobiles et sur son développement.

    On y apprend notamment que la version 1.0 est prévue pour Octobre 2013, soit au moment de la sortie de la version 13.10 d'Ubuntu, ce qui laisse présager une intégration d'Ubuntu Touch dans la version desktop d'Ubuntu. Le système pourrait ainsi être déployé chez les utilisateurs sur des mobiles au cours du premier semestre 2014.

    Au niveau du développement, Jono Bacon donne un aperçu des équipes en place :

    • 15 équipes d'ingénieurs
    • 5 équipes de design
    • 5 "services teams"

    Tout ceci totalisant plus de 150 personnes.

    Il précise enfin que le développement avance à bon train, malgré la taille du projet, les fuseaux horaires différents entre chaque équipes et les problèmes que celles-ci on pu rencontrer en route.

    Tout ceci aurait pu n'être qu'un discours pipeau et enjoleur de Community Manager, mais Jono Bacon annonce tout de même qu'à l'heure actuelle Ubuntu Touch n'est pas utilisable comme principal OS sur un mobile, puisque certaines fonctions ne sont pas ou très peu implémentées, et que cela reste des versions en cours de développement.

     

    On s'aperçoit donc que le développement d'Ubuntu Touch suit son cours, il reste encore 6 mois aux équipes pour finaliser une version 1.0 qui soit utilisable par Mme. Michu.

    J'attend donc avec encore plus d'impatience une version stable à installer sur un smartphone pour pouvoir la tester, ou au moins un portage d'Ubuntu Touch vers un modèle de smartphone que j'ai en stock à la maison pour pouvoir jouer un peu avec!

    Source Image

    01 Mai 2013 à 19:00

    Geany un éditeur php pour Xubuntu via DuPot

    Introduction

    Quand on cherche un éditeur php on pense souvent soit d'un coté à quelque chose de complet comme Eclipse, Netbeans... (avec plugins adéquat) soit à gedit,vi ou un autre simple éditeur de texte

    J'avais précédemment écrit un article, ou je mettais en avant un environnement de développement basé sur gedit sous Xubuntu, j'ai depuis découvert un nouvel éditeur encore mieux: Geany

    Le cas de l'éditeur lourd

    Quand on travail sur des environnement de développement intégré ou IDE on prend vite ses marques, on se surprend vite à apprécier le confort de ce type de logiciel.

    Ses avantages

    L'auto-complétion des variables est bien pratique pour éviter les erreurs de frappes/casse lors de la réutilisation de variable de constantes...

    On gagne beaucoup de temps également lorsque l'on fait appel à un objet model par exemple pour récupérer une méthode utilisant une requête. Idem pour les plugins et autre classes utilisées.Il est toujours plus pratique lorsque l'on commence à taper le nom de l'objet d'avoir une liste de ses propriétés et méthodes, plutôt que de devoir chercher le fichier de la classe, l'ouvrir et aller y rechercher la méthode, propriété,constante recherchée :)

    Idem pour les accolades/crochets/parenthèses, il est bien pratique lorsque l'on créé/utilise un tableau d'écrire le crochet ouvrant et que celui-ci soit automatiquement fermé, idem pour une fonction/méthode.

    Ses inconvénients

    Le problème de ce genre de logiciel c'est que pour être aussi confortable, ils doivent être plus gourmand en ressource :(

    Un autre soucis est qu'ils ne peuvent pas être instanciés plusieurs fois: je travaille souvent sur plusieurs projets à la fois, et j'aime bien utiliser un bureau pour chaque projet avec sur chacun d'eux : un éditeur de code, un terminal (pour svn) ainsi qu'un navigateur pour vérifier le code saisi.

    Le cas de l'éditeur léger Gedit

    Contrairement à un IDE lourd comme Netbeans ou Eclipse, gedit n'est pas aussi confortable, mais il a d'autres avantages

    Ses avantages

    Contrairement à Netbeans/Eclipse, Gedit permet d'être instancié plusieurs fois, on peut ainsi avoir un bureau par projet avec sur chacun d'eux le couple Gedit/terminal/Navigateur

    Il est rapide et léger à lancer, il n'est pas gourmand en ressource, il ne ralentit pas le système, il est ainsi très utilisable même en machine virtuelle

    Lorsque l'on monte un répertoire distant SSH via gigolo, on peut ainsi naviguer/éditer facilement l'arborescence de son projet sur un serveur distant

    Même si il n'est pas aussi confortable qu'un IDE, il propose tout de même l'auto-complétion des mots présents dans l'ensemble des fichiers ouverts, ainsi si vous voulez utilisez une classe modèle, vous l'ouvrez et repasser sur votre fichier de code, et dès que vous saisirez un début de méthode, il proposera l'auto-complétion de celle-ci ;)

    Ses inconvénients

    L'auto-complétion n'est pas "intelligente", l'éditeur va aussi bien proposer des noms de méthodes, des mots dans les commentaires ou des méthodes :(

    Lors de l'au-complétion d'une méthode, l'éditeur va uniquement proposer un nom, on ne connaît pas les paramètres attendu ni quoi que ce soit :(

    Le cas de Geany

    Il arrive à être un bon compromis entre ces deux familles d'éditeur

    Son installation

    Geany est disponible dans les dépôts officiels de votre Xubuntu préféré.

    Vous pouvez passer par le gestionnaire de logiciel "Logithèque Ubuntu"
    note: pensez quand vous cliquez sur la fiche de Geany à cliquer sur "plus d'informations" pour cocher "Set of plugins for Geany"Ce paquet vous installera ainsi tous les plugins disponibles sur ce formidable éditeur.

    Ses avantages

    Il fonctionne un peu sur le même principe que Gedit, il faut ouvrir un fichier pour qu'il soit pris en compte dans sa mécanique d'auto-complétion.

    Mais c'est une auto-complétion "plus intelligente" que Gedit, il va proposer des noms de variables et non tout les mots qui ressemble à la saisie.

    L'au-complétion des méthodes indique également les paramètres attendus

    On peut dans le panneau latéral voir les "symboles" : toutes les méthodes, instanciation de variable disponibles dans le fichier

    Lorsque l'on clique sur une méthode utilisé, on peut aller rejoindre sa définition (soit d'un clic droit)

    * note: fonctionne uniquement si le fichier contenant la méthode est ouverte ;)

    Lorsque l'on parcoure une arborescence, on peut choisir de masque le reste de celle-ci afin de ne voir que celle de notre projet

    Cet editeur propose des choses confortables comme la fermeture automatique des parenthèses/accolades/crochets, une indentation automatique, un guide d'indentation...

    Lorsque via les onglets, on clique sur un fichier, le panneau latéral mets le focus sur le fichier dans l'arborescence du fichier.

    Il alerte si il y a une modification sur le fichier distant, ainsi si vous faites une mise à jour svn, qu'un autre développeur modifie le fichier, vous aurez une alerte vous l'indiquant :)

    Ses inconvénients

    Comme gedit, il ne propose de l'intelligence que sur le périmètre des fichiers ouverts, il faut donc penser à ouvrir les dit fichiers pour pouvoir bénéficier de l'auto-complétion.

    Conclusion

    Comme vous avez pu le lire, Geany est un très bon compromis entre un IDE Lourd et un simple éditeur de code comme Gedit. Je le recommande chaudement pour la programmation de sites web en environnement linux/unix

    Pages