turbo-editors/turbo-moonbitpublic Fork 0
v1.0.3
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.

📦 Turbo MoonBit cc1f595 · on v1.0.3 · k33g · 23h ago
install-the-moonbit-toolchain.md · 89 lines · 4.9 KBmarkdown
Blame HistoryOpen raw

Installer la chaîne d'outils MoonBit

Ce 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 pour cela.

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.

L'installer

Une seule commande installe toute la chaîne — le compilateur, le système de construction et le serveur de langage ensemble :

curl -fsSL https://cli.moonbitlang.com/install/unix.sh | bash

Elle télécharge dans ~/.moon, occupe quelques centaines de mégaoctets avec la bibliothèque standard compilée, et se termine par :

moonbit was installed successfully to ~/.moon
Added "~/.moon/bin" to $PATH in "~/.bashrc"

C'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.

source ~/.bashrc

Sous 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é.

Le vérifier

moon version --all

Vous devriez voir trois lignes, chacune avec son chemin :

moon 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moon
moonc v0.10.12+1634b282e (2026-09-07) ~/.moon/bin/moonc
moonrun 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moonrun

Le 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 :

moon-lsp --version
v0.10.12+1634b282e (2026-09-07)

Vérifier que l'éditeur le trouve

Ouvrez n'importe quel fichier d'un projet MoonBit et lisez l'extrémité droite de la barre d'état :

 F1 Describe  F2 Save  F3 Open  F6 Window  F10 Menu       1:1  LSP: ready

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.

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.

Variantes

  • 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.
  • 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.
  • 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.
  • 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.
  • 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.

À quoi sert chaque binaire

Binaire Ce que l'éditeur en fait
moon-lsp Complétion, survol, définitions, références, symboles et marques d'erreur dans la gouttière
moon Toutes les commandes du menu MoonBit — et moon-lsp le lance aussi, pour savoir ce que contient un projet
moonc Le compilateur, appelé par moon
moonrun Exécute la sortie WebAssembly, appelé par moon run

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.

Voir aussi

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Installer la chaîne d'outils MoonBit

Ce 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.

**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.

## L'installer

Une seule commande installe toute la chaîne — le compilateur, le système de construction et le serveur de langage ensemble :

```bash
curl -fsSL https://cli.moonbitlang.com/install/unix.sh | bash
```

Elle télécharge dans `~/.moon`, occupe quelques centaines de mégaoctets avec la bibliothèque standard compilée, et se termine par :

```
moonbit was installed successfully to ~/.moon
Added "~/.moon/bin" to $PATH in "~/.bashrc"
```

C'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.

```bash
source ~/.bashrc
```

Sous 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é.

## Le vérifier

```bash
moon version --all
```

Vous devriez voir trois lignes, chacune avec son chemin :

```
moon 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moon
moonc v0.10.12+1634b282e (2026-09-07) ~/.moon/bin/moonc
moonrun 0.1.20260904 (94521db 2026-09-04) ~/.moon/bin/moonrun
```

Le 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 :

```bash
moon-lsp --version
```

```
v0.10.12+1634b282e (2026-09-07)
```

## Vérifier que l'éditeur le trouve

Ouvrez n'importe quel fichier d'un projet MoonBit et lisez l'extrémité droite de la barre d'état :

```
 F1 Describe  F2 Save  F3 Open  F6 Window  F10 Menu       1:1  LSP: ready
```

`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.

**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.

## Variantes

- **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.
- **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.
- **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`.
- **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.
- **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`.

## À quoi sert chaque binaire

| Binaire | Ce que l'éditeur en fait |
| --- | --- |
| `moon-lsp` | Complétion, survol, définitions, références, symboles et marques d'erreur dans la gouttière |
| `moon` | Toutes les commandes du menu MoonBit — et `moon-lsp` le lance aussi, pour savoir ce que contient un projet |
| `moonc` | Le compilateur, appelé par `moon` |
| `moonrun` | Exécute la sortie WebAssembly, appelé par `moon run` |

`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.

## Voir aussi

- [Activer la complétion](enable-completion.md) — que faire quand le serveur est installé et ne dit toujours rien
- [Lancer les commandes moon depuis l'éditeur](run-moon-commands.md) — le menu MoonBit
- [Coloration et complétion](../explanation/colouring-and-completion.md) — pourquoi l'éditeur a besoin d'un serveur