
Pour régler ce problème et permettre aux développeurs d’utiliser l’EDI qu’ils souhaitent avec leurs langages de prédilection, Red Hat, Microsoft et Codenvy ont joint leurs efforts afin de concevoir un nouveau protocole pour les services de langage. Ce protocole est basé sur la spécification JSON-RPC 2.0 et définit une série d’appels et de structures de données pour mettre en œuvre une fonctionnalité commune pour les EDI et les éditeurs de code.
C’est à partir de ce protocole que les développeurs de Red Hat ont récemment implémenté le support pour la prise en charge de Java par Visual Studio Code. Ce protocole étant adopté au fur et à mesure, l’équipe derrière le langage de programmation Rust vient d’annoncer la disponibilité de la version préalpha de Rust Language Server (RLS) pour Visual Studio Code. Avec ce langage serveur, les développeurs peuvent aisément utiliser cet EDI pour travailler avec Rust. Nous rappelons que présentement seuls les EDI Éclipse et Visual Studio Code supportent de manière officielle le protocole JSON-RPC pour les langages serveur. Et pour utiliser RLS avec Visual Studio Code, il va falloir installer une extension Visual Code pour Rust.
Pour ce qui concerne ce nouveau service Rust qui vient d’être implémenté, il est chargé de fournir les fonctionnalités Rust à Visual Studio Code. Lorsque des changements au niveau du code sont effectués côté client à travers un appel ou une notification, une réponse est envoyée par RLS côté serveur.
À côté de ce protocole de langage serveur, l’équipe de Rust précise que RLS peut être également utilisé avec un protocole HTTP personnalisé. Pour cet autre protocole également, une seconde extension pour Visual Studio Code est disponible. Toutefois, pour les mainteneurs du projet, le protocole recommandé pour utiliser RLS est celui du langage serveur.
Par ailleurs, que ce soit dans un cas comme dans l’autre, pour utiliser RLS, il va falloir définir des variables d’environnement et exécuter certaines commandes au préalable. Une fois la configuration effectuée, vous pourrez pleinement utiliser le service du langage.
Cependant, comme l’a signifié l’équipe de Rust, ce service est encore dans sa phase de développement et donc certaines choses fonctionnent correctement tandis que d’autres pas encore. Pour l’heure, vous pourrez utiliser les fonctionnalités suivantes :
- La recherche de symbole ;
- La fonctionnalité goto ;
- le reformatage et la complétion de code ;
- Le renommage et le refactoring du code ;
Vu que le projet est encore au stade de conception, les développeurs du projet recommandent à ceux qui souhaitent l’utiliser de le faire avec du code pour lequel ils ont effectué des mises à jour régulières afin de ne pas être confrontés à de mauvaises surprises.
Source : Rust
Et vous ?

Voir aussi
