New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Language Server Protocol #108
Comments
Je pense qu'il ne faut pas perdre de vue l'objectif pédagogique de codecast. Intégrer de l'autocomplétion "intelligente", dont l'objectif est un gain de productivité, ne me semble pas contribuer de manière significative à l'objectif principal qui est de comprendre finement ce que l'on écrit. |
Oui pour l'autocompletion, après il y a aussi d'autres avantages au support du Language Server Protocol pour l'apprentissage de la programmation:
Il me semble que sur le long terme, avoir le support du Language Server Protocol est une bonne chose pédagogiquement :) |
Ce n'est pas un mince effort. Non seulement en terme de dev (supporter l'enregistrement de toutes les interactions nouvelles avec l'éditeur [qui ne le prévoit pas forcement] et avec le language server), mais aussi en terme d'infrastructure (pour chaque instance de codecast ouverte, il faut une instance de clangd [ou du language server propriétaire de Microsoft, j'imagine?] sur un serveur dans le cloud, donc un usage très important (coûteux) de ressources. J'ai brièvement regardé la documentation de l'API de Monaco, elle n'est pas de bonne qualité, ce qui n'aiderait pas. Il semble très récent, en version 0.13.1, donc sans garantie de pérennité de l'API. Je comprends le désir de plus de fonctionnalités et d'outils à la pointe, mais c'est pas trivial à intégrer. |
Tout à fait! Ok pour Monaco, il faut tout de même continuer à faire de la veille sur Language Server Protocol qui est maintenant un standard incontournable. |
Pour les discussions sur les évolutions futures possibles de codecast, nous utiliserons un document séparé, et non des issues github. |
ACE est un très bon éditeur, mais ne supporte pas le Language Server Protocol. L'editeur Monaco le supporte par exemple:
https://typefox.io/teaching-the-language-server-protocol-to-microsofts-monaco-editor
Ceci permet d'avoir des fonctionnalités du style "intellisense" d'autocompletion intelligentes comme le montre la démo ici http://52.29.251.2/calcmonaco/
En interne, voici l'explication:
The Monaco Editor Language Client provides a language client that establishes communication between Monaco editors and language servers over JSON-RPC and the VSCode WebSocket JSON-RPC package enables JSON-RPC to work over web sockets.
Une équivalence pour ACE existe-t-elle ?
The text was updated successfully, but these errors were encountered: