Sublime Text : Configurer SublimeLinter pour améliorer son développement

Partager cet article

Temps estimé pour la lecture de cet article : 26 min

sublime-text-sublime-linter-workflow

Si vous êtes un développeur assidu, vous aimez forcément jouer avec votre workflow. Sous un bon éditeur de texte, il existe certains plugins qui vont vous permettre d’analyser votre code et ainsi permettre d’afficher des erreurs ou des avertissements, un peu à la manière de syntastic pour vim. Ça envoie du rêve pas vrai ? Et bien réjouissez-vous ami développeur sublime text possède un tel plugin appelé SublimeLinter.

Mais qu’est-ce qu’un linter ? C’est tout simplement un petit programme qui vérifie les erreurs syntaxiques d’un langage. SublimeLinter permet tout simplement de regrouper ces petits programmes. Mais pourquoi aurai-je besoin d’un linter ? Je code déjà comme un dieu trololol. Balaise ou non, on n’est jamais à l’abri d’une journée sans (une nuit de sommeil raté par exemple) et à ce moment-là nous faisons des erreurs, alors pourquoi ne pas utiliser un outil qui va permettre d’éviter ces dernières !

En outre, les linters peuvent aider à respecter les normes de codage, trouver des variables inutilisées, et même faire du café pour vous…. bon, ok peut-être pas le café mais dans l’avenir qui sait…

Du coup, voici un tableau récapitulatif de quelques linters, ça vient de la documentation o/.

Syntaxe Linter
Python flake8
JavaScript jshint
CSS csslint
Ruby ruby -wc

Installation de Sublime Linter

Ici, je vais considérer que vous savez déjà installer des plugins grâce au greffon Package Control. Si vous ne le connaissez pas alors je vous conseille d’aller voir mon précédent tutoriel. Donc on est parti, ctrl+shift+p et rechercher le plugin en question. Une fois installé, dirigez-vous dans : Preferences => packages settings => sublime linter => settings user.

sublime-text-sublime-linter-settings

A partir d’ici, on va pouvoir customiser l’utilisation du plugin, il existe une documentation très bien faites, qui pourra vous permettre d’approfondir ce que je vais vous expliquer, ici. C’est en anglais effectivement, mais n’est-ce pas essentiel pour un bon développeur de parler correctement anglais ;).

Configurer SublimeLinter pour afficher ses erreurs de programmation

Et là, le plus dur est bientôt derrière vous, il faut en faites préciser pour chaque langage donné, le chemin vers son exécutable, en fonction bien sûr de son système et oui c’est bien dommage que ce ne soit pas universel. Donc, imaginons-vous êtes sous Windows, il vous faut d’abord voir si le binaire désiré est installé.

sublime-text-sublime-linter-nodejs

Par exemple, pour pouvoir corriger le javascript ou encore le css, il nous faut avoir node.js d’installé. Direction le site web, on clique direct sur le bouton install (pas trop dur même pour des feignasses comme nous, oui un dev est feignant : c’est la base :p). Vous installez le tout. Et on est parti, On va préciser dans le JSON a l’argument: sublimelinter_executable_map. Que pour du javascript, on a l’exécutable node.js, ce qui nous donne :

"sublimelinter_executable_map":
{
    "javascript":"C:/Program Files/nodejs/node.exe",
    "css":"C:/Program Files/nodejs/node.exe",
    "php":"C:/wamp/bin/php/php5.5.12/php.exe"
},

Régler la virulence des messages

Parfois, les messages ne sont pas forcément intéressants, je pense par exemple dans le cas du CSS, il nous affiche un warning pour nous prévenir que faire un simple :

    border: 1px solid #4A4A4A;

Va agrandir la taille de l’élément ciblé, si par exemple on réalise un width de 100%, alors oui avec la bordure ça explose :3, pour les débutants ce genre de message c’est bien, pour les habitués, ça peut vous embêter. Et bien en fouillant dans les options, vous pouvez régler ce que CSSLint (le linter utilisé pour vous afficher les erreurs du langage CSS) doit faire.

    "csslint_options":
    {
        "adjoining-classes": "warning",
        "box-model": false,
        "box-sizing": "warning",
        ...
        "universal-selector": "warning",
        "vendor-prefix": true,
        "zero-units": "warning"
    },

Il existe trois choix possibles : true, warning ou false. Si vous mettez l’option à true, le message sera affiché comme une erreur, à warning comme un danger et à false rien ne sera affiché. Dans mon cas c’est l’option box-model que je devais passer à false pour être tranquille.

Les différents modes d’affichages

Il existe 4 modes différents selon lequel SublimeLinter doit fonctionner :

  • En tâche de fond
  • Lors d’un chargement ou une sauvegarde
  • Seulement lors d’une sauvegarde
  • Enfin, manuellement

Nous allons voir les différents avantages et inconvénients :

En tâche de fond, les erreurs sont générées à chaque modification que vous allez faire, au chargement, à la sauvegarde et j’en passe, c’est le mode par défaut. L’avantage c’est qu’on a directement un retour sur ce que l’on fait ! Si le délai est court, vous pourriez avoir des faux positifs car par exemple vous n’auriez pas eu le temps de finir votre instruction ^_^. De plus certains linters peuvent être lents, personnellement c’est le mode que j’utilise et je n’ai jamais eu de soucis avec 🙂 !

Lors de la sauvegarde ou du chargement, l’avantage c’est que vous ne serez pas distrait lorsque vous coderez, de plus les performances seront meilleures (en tout cas l’éditeur consommera moins). L’inconvénient et bien il en a pas vraiment, en tout cas rien qui ne m’est embêté :3.

Enfin, le mode manuel, c’est vous qui allez choisir quand regarder les éventuelles erreurs dans votre code, cela signifie que vous êtes déjà assez confiant quand vous programmer et que vous voulez seulement utiliser SublimeLinter pour optimiser votre code. Le défaut ? Vous ne penserez pas forcément à l’utiliser ^_^.

Une fois que vous aurez choisi, il vous faut régler le mode avec l’option sublimelinter :

    "sublimelinter": "load-save",

Donc pour mettre en tâche de fond, préciser l’option true, pour le mettre en manuel, l’option false. Pour charger ou sauvegarder, préciser l’option load-save et sinon seulement quand vous sauvegardez l’option save.

Choisir son style de surbrillance : Mark Style

Quand le plugin vous trouve une erreur, il vous affiche trois choses :

  • Le code suspect lui-même est marqué
  • La ligne sur laquelle le code est suspect est également marqué
  • La barre d’état (en bas de la fenêtre) donne des informations sur les erreurs en fonction sur la sélection courante.

On peut donc choisir l’apparence que va avoir le code marqué, cinq options sont possibles (sous sublime text 3, pour le deux on a uniquement : fill et outline de disponible) voici un magnifique screenshot récapitulatif venant de la documentation.

sublime-text-sublime-linter-mark-styles

Et voilà, tout con non, tout juste le temps de finir son café et d’avoir une stack à faire rougir vos collègues, ces noobs 🙂 !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.