turbo-editors/turbo-moonbitpublic Fork 0
ded61deede2aab942065647372984c8d3179037b
Commits
Clone
git clone https://git.rickub.com/turbo-editors/turbo-moonbit.git
git clone ssh://git@rickub.com/turbo-editors/turbo-moonbit.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

install-the-moonbit-toolchain.md · 89 lines · 4.9 KBmarkdown Blame HistoryRaw
📦 Turbo MoonBit cc1f595 k33g yesterday1# Installer la chaîne d'outils MoonBit
2
3Ce guide montre comment obtenir `moon`, `moonc` et `moon-lsp` sur une machine, et comment vérifier que Turbo MoonBit les trouve. Il suppose que vous avez déjà Turbo MoonBit, ou que vous êtes sur le point de l'avoir — voir [installer l'éditeur](install.md) pour cela.
4
5**L'éditeur fonctionne sans rien de tout ceci.** L'édition, la coloration, les thèmes, les snippets et les fenêtres de terminal tournent sans aucune chaîne d'outils. Ce qui en a besoin, c'est la complétion, les marques d'erreur dans la gouttière, et toutes les commandes du menu MoonBit.
6
7## L'installer
8
9Une seule commande installe toute la chaîne — le compilateur, le système de construction et le serveur de langage ensemble :
10
11```bash
12curl -fsSL https://cli.moonbitlang.com/install/unix.sh | bash
13```
14
15Elle télécharge dans `~/.moon`, occupe quelques centaines de mégaoctets avec la bibliothèque standard compilée, et se termine par :
16
17```
18moonbit was installed successfully to ~/.moon
19Added "~/.moon/bin" to $PATH in "~/.bashrc"
20```
21
22C'est cette dernière ligne qu'il faut lire deux fois. L'installeur modifie **un seul** profil de shell ; un shell déjà ouvert, et tout programme lancé depuis un lanceur de bureau, ne l'a pas lu.
23
24```bash
25source ~/.bashrc
26```
27
28Sous Windows, lancez plutôt l'installeur PowerShell depuis https://www.moonbitlang.com/download. Tout ce qui suit s'applique tel quel une fois qu'il a terminé.
29
30## Le vérifier
31
32```bash
33moon version --all
34```
35
36Vous devriez voir trois lignes, chacune avec son chemin :
37
38```
39moon 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moon
40moonc v0.10.12+1634b282e (2026-09-07) ~/.moon/bin/moonc
41moonrun 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moonrun
42```
43
44Le serveur de langage est un quatrième binaire dans le même dossier, et il vaut la peine d'être interrogé séparément, parce que c'est celui dont l'éditeur a besoin :
45
46```bash
47moon-lsp --version
48```
49
50```
51v0.10.12+1634b282e (2026-09-07)
52```
53
54## Vérifier que l'éditeur le trouve
55
56Ouvrez n'importe quel fichier d'un projet MoonBit et lisez l'extrémité droite de la barre d'état :
57
58```
59 F1 Describe F2 Save F3 Open F6 Window F10 Menu 1:1 LSP: ready
60```
61
62`LSP: ready` signifie que le serveur a démarré. `LSP: no moon-lsp — curl -fsSL https://cli.moonbitlang.com/install/unix.sh | bash` signifie qu'il n'a pas été trouvé, et le message est la commande à lancer.
63
64**Turbo MoonBit cherche à trois endroits, dans cet ordre** : votre `PATH`, puis `$MOON_HOME/bin` si `MOON_HOME` est défini, puis `~/.moon/bin`. L'éditeur trouve donc une chaîne d'outils installée normalement même depuis un shell qui n'a jamais lu le profil que l'installeur a modifié — c'est précisément le cas qui, autrement, ressemble à un serveur en panne.
65
66## Variantes
67
68- **Vous installez vos chaînes d'outils ailleurs.** Définissez `MOON_HOME` avant de lancer l'installeur ; il en tient compte, et l'éditeur aussi.
69- **Vous avez déjà `moon` mais pas de complétion.** Vérifiez `moon-lsp --version` spécifiquement. Une chaîne dépaquetée à la main, ou une mise à jour partielle, peut laisser `moon` en état de marche et `moon-lsp` absent.
70- **Vous voulez mettre à jour.** `moon upgrade` remplace la chaîne sur place ; `moon upgrade --dev` prend la version de développement. Ni l'un ni l'autre ne touche à `MOON_HOME` ni à votre `PATH`.
71- **Vous installez pour de l'intégration continue, ou dans une image.** L'installeur est un script shell ordinaire et n'a pas d'option qui vaille la peine ; épingler une version veut dire récupérer une release depuis https://www.moonbitlang.com/download plutôt que de l'utiliser.
72- **Vous voulez être sûr que l'éditeur ne le trouve pas simplement via le `PATH`.** Lancez-le avec un environnement réduit — `env PATH=/usr/bin:/bin turbo-moonbit main.mbt` — et la barre d'état devrait toujours dire `LSP: ready`, depuis `~/.moon/bin`.
73
74## À quoi sert chaque binaire
75
76| Binaire | Ce que l'éditeur en fait |
77| --- | --- |
78| `moon-lsp` | Complétion, survol, définitions, références, symboles et marques d'erreur dans la gouttière |
79| `moon` | Toutes les commandes du menu MoonBit — et `moon-lsp` le lance aussi, pour savoir ce que contient un projet |
80| `moonc` | Le compilateur, appelé par `moon` |
81| `moonrun` | Exécute la sortie WebAssembly, appelé par `moon run` |
82
83`moon-lsp` seul ne suffit pas : il détermine le projet en lançant `moon`, si bien qu'une machine ayant le serveur mais pas le système de construction obtient un serveur qui démarre, qui est trouvé, et qui ne sait ensuite rien d'aucun fichier. `scripts/install.sh` vérifie exactement cela et le dit.
84
85## Voir aussi
86
87- [Activer la complétion](enable-completion.md) — que faire quand le serveur est installé et ne dit toujours rien
88- [Lancer les commandes moon depuis l'éditeur](run-moon-commands.md) — le menu MoonBit
89- [Coloration et complétion](../explanation/colouring-and-completion.md) — pourquoi l'éditeur a besoin d'un serveur