GitHub : les dernières mises à jour d’Atom

Atom de GitHub

Développeurs freelances en quête d’actualités, sachez qu’il y a du nouveau pour Atom !

Le 31 octobre dernier, Max Brunsfeld, développeur Software chez Github, a en effet détaillé les nouvelles améliorations de l’éditeur de texte. Commandes d’édition, amélioration du pliage de code, analyse incrémentielle… Retour sur Atom, de sa présentation en 2014 à ses dernières évolutions.

2014-2017 : d’Atom en version bêta à Atom IDE

2014 : Naissance d’Atom

Souvenez-vous : en février 2014, GitHub lançait la version bêta d’un outil très utile pour les développeurs IT : Atom. Pensée en 2008 dans le cadre du projet « Atomicity » puis conçue comme un éditeur de texte, cette variante spécialisée du navigateur Open Source Chromium entame une belle carrière dans l’écosystème du développement web, comme le rappelle ce billet de blog très instructif. Notamment pour les développeurs logiciels à la recherche d’un outil personnalisable pour les amateurs de JavaScript et CSS, avec des extensions open source, fiable et performant.

2015 : Atom 1.0

La première version stable d’Atom est disponible en juin 2015. L’éditeur de texte est écrit en CoffeeScript et il est disponible sur Windows, GNU/Linux, et OS X. Atom offre une esthétique proche de Sublime Text et dispose des capacités d’extension que possèdent certains éditeurs, notamment Emacs. À l’époque, Atom a déjà été téléchargé plus d’un million de fois et plus de 350 000 personnes l’utilisent chaque mois. Et il faut se rendre à l’évidence : l’UI simple et réactive de l’outil de GitHub fait des émules !

2017 : Atom IDE

Quoique souvent utilisé en tant qu’IDE, Atom n’en possède pas toutes les fonctionnalités. Afin de remédier à ce problème et proposer aux développeurs un ensemble d’outils cohérent et complet, GitHub s’associe à Facebook. À l’aide du LSP (Language Server Protocol), ils développent Atom IDE. Cette version dispose:

  • de l’autocomplétion,
  •  des diagnostics,
  •  des références,
  •  d’informations supplémentaires affichées en survol, etc.

2018 :  Dernières améliorations

Le 31 octobre 2018, Max Brunsfeld s’est exprimé sur le blog de GitHub. Il a affirmé la volonté du groupe de « rendre la programmation intuitive et agréable », avant d’énumérer les dernières évolutions de l’éditeur de texte.

Nouveau système d’analyse syntaxique : Tree-sitter

GitHub a développé un système d’analyse syntaxique utile pour analyser le code des développeurs pendant qu’ils codent. Cet outil présente ainsi « un arbre de syntaxe décrivant la structure du code ». Max Brunsfeld indique par ailleurs que Tree-sitter permet d’analyser 11 langages de programmation. Notamment Bash, C/C++, Go, HTML, JavaScript, Python, Ruby et TypeScript.

Syntaxe en surbrillance

L’éditeur Atom utilise désormais des couleurs. L’objectif ? Décrire la structure du code dans chaque langage de manière claire et précise. Notamment en accordant une couleur spécifique aux mots-clés, fonctions, types, variables et champs.

Couleur de la syntaxe Atom
Source : The GitHub Blog, 31 octobre 2018

Amélioration du pliage de code

En général, le pliage de code repose sur l’indentation dans les éditeurs de texte. Pourtant, ce modèle ne s’avère pas toujours performant : le pliage est même parfois inutile. Au lieu de se baser sur les lignes ayant une indentation grande ou plus courte, Tree-sitter procède différemment. Il plie le code selon sa syntaxe, assurant une opération plus fiable. Une fonctionnalité très utile, y compris dans ce genre de cas :

pliage de code Atom
Source : The GitHub Blog, 31 octobre 2018

Nouvelles commandes d’édition

Autre nouveauté : la sélection tient désormais compte de la syntaxe. En effet, les arbres de syntaxe sont utilisés par Atom comme base de deux nouvelles commandes d’édition liées à Alt + Haut et à Alt + Bas. À savoir :

  • sélectionner un nœud de syntaxe plus grand,
  • sélectionner un nœud de syntaxe plus petit.

L’intérêt majeur ? Rendre certaines tâches d’édition plus simples, plus performantes et « plus amusantes, en particulier quand elles sont combinées à plusieurs curseurs ».

sélection tenant compte de la syntaxe
Source : The GitHub Blog, 31 octobre 2018

Rapidité et analyse incrémentielle

Max Brunsfeld rappelle également que l’analyse d’un fichier source s’avère souvent trop long. C’est d’ailleurs la raison pour laquelle la coloration syntaxique des mises à jour n’est pas simultanée. En effet, la majorité des IDE entame l’analyse du code seulement lorsque le développeur arrête de coder, entraînant ainsi un décalage.

Pour remédier à ce problème, Tree-sitter d’Atom analyse le code de manière incrémentielle : « il maintient l’arbre de syntaxe à jour quand vous modifiez votre code, sans devoir analyser à nouveau le fichier dans sa globalité et en repartant de zéro. »

En tant que développeur freelance, vous utilisez Atom quotidiennement ou presque, et vous êtes à la recherche de missions pertinentes ? Comme Imad, rejoignez Freelancerepublik et relevez des défis Tech’ ambitieux !

A lire aussi:

  1. Le guide freelance JavaScript 2018 : TJM, frameworks…
GitHub : les dernières mises à jour d’Atom
Noter cet article

Laisser un commentaire

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