Installer GoloScript
Ce guide montre comment mettre golo — et, si vous les voulez, gogolo et wagolo — sur une machine, et comment vérifier que Turbo Golo le trouve. Il suppose que vous avez déjà Turbo Golo, ou êtes sur le point de l'avoir — voir installer l'éditeur pour cela.
L'éditeur marche sans rien de tout cela. L'édition, la coloration, les thèmes, les snippets et les fenêtres de terminal tournent tous sans aucun interpréteur. Ce qui en a besoin : la complétion, les marques d'erreur dans la gouttière, et chaque commande du menu Golo.
Quel binaire il vous faut
GoloScript en livre trois, sous une seule version :
| Binaire | À quoi il sert | Il lui faut aussi |
|---|---|---|
golo |
L'interpréteur : exécute les scripts, et est aussi le REPL, le débogueur, le lanceur de tests et le serveur de langage | rien |
gogolo |
Compile un script en exécutable natif, via Go | l'outillage Go |
wagolo |
Compile un script en WebAssembly, via Go et TinyGo | TinyGo, et wasm-tools pour la cible wasip2 |
L'éditeur a besoin de golo et de rien d'autre. gogolo et wagolo sont ce que lancent les entrées Build native et Build wasm du menu Golo ; sans eux ces deux entrées répondent command not found et le reste du menu n'est pas affecté.
Installer une release
Des binaires précompilés pour macOS (Intel et Apple Silicon), Linux (amd64, arm64, 386) et Windows (amd64, arm64, 386) sont sur la page des releases. Chacun est un fichier :
chmod +x golo-<version>-<plateforme>
sudo mv golo-<version>-<plateforme> /usr/local/bin/golo
golo --version
Sur macOS un téléchargement non signé est mis en quarantaine jusqu'à ce que vous en décidiez autrement, dans Réglages Système ▸ Confidentialité et sécurité ou avec xattr -d com.apple.quarantine golo-<version>-<plateforme>.
Répétez pour gogolo et wagolo si vous voulez les compilateurs.
Ou construire depuis les sources
Cela donne les trois d'un coup, dans /usr/local/bin. Il faut Go ; wagolo se construit sans TinyGo mais ne peut rien compiler tant que TinyGo n'est pas installé.
git clone https://codeberg.org/TypeUnsafe/golo-script.git && cd golo-script
./install.sh
L'installeur de Turbo Golo fera exactement cela si on le lui demande :
scripts/install.sh --with-server
Il clone GoloScript dans un répertoire temporaire et lance son install.sh, qui demande sudo quand il copie dans /usr/local/bin.
Vérifier
golo --version
v0.1.1 | dev.20260802.🤓
Et le serveur de langage en particulier — c'est l'interpréteur, c'est donc une sous-commande plutôt qu'un second binaire :
golo lsp </dev/null
Il ne lit rien, voit la fin de son entrée, et se termine proprement. Un golo qui imprime son usage ou démarre un REPL ici est un autre programme du même nom.
Vérifier que l'éditeur le trouve
Ouvrez n'importe quel fichier .golo 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 golo — see https://codeberg.org/TypeUnsafe/golo-script/releases signifie qu'il n'a pas été trouvé, et le message dit où l'obtenir.
Turbo Golo regarde à deux endroits, dans l'ordre : votre PATH, puis /usr/local/bin. Le second est là où écrit l'installeur de GoloScript, et il est fouillé même quand il n'est pas sur le PATH — un shell lancé par un lanceur de bureau, par exemple — pour que le cas qui ressemble sinon à un serveur cassé fonctionne.
Variantes
- Vous installez les binaires ailleurs. Mettez ce répertoire sur le
PATH; l'éditeur n'a aucune variable d'environnement nommant un autre endroit où regarder. Un lien symbolique dans/usr/local/binmarche aussi. - Vous avez déjà
golomais pas de complétion. Lancezgolo lsp </dev/nullet assurez-vous qu'il se termine sans bruit. Puis lisez la barre d'état —Run ▸ Language server statusmontre le chemin que l'éditeur a trouvé et si le serveur a répondu à sa poignée de main. - Vous voulez mettre à jour. Remplacez le binaire — un téléchargement de release ou
./install.shà nouveau après ungit pull. Redémarrez l'éditeur : il démarre un serveur par session et ne remarque pas un nouveau binaire avant. - Vous installez pour la CI, ou dans une image. GoloScript publie une image basée sur
scratchqui ne contient que l'interpréteur :docker run --rm -v "$PWD:/app" -w /app k33g/gololang:<tag> /golo ./main.golo. L'éditeur ne peut pas utiliser un serveur dans un conteneur, c'est donc pour exécuter des scripts, pas pour la complétion. - Vous voulez être sûr que l'éditeur ne le trouve pas simplement sur le
PATH. Lancez-le avec un environnement réduit —env PATH=/usr/bin:/bin turbo-golo main.golo— et la barre d'état doit toujours direLSP: ready, depuis/usr/local/bin.
À quoi sert chaque binaire, vu de l'éditeur
| Binaire | Ce que l'éditeur en fait |
|---|---|
golo |
golo lsp — la complétion, le survol, les définitions, les symboles du fichier et les marques d'erreur ; et les entrées Run, Test, Test one, Debug, REPL et New script du menu Golo |
gogolo |
L'entrée Build native |
wagolo |
L'entrée Build wasm |
Voir aussi
- Activer la complétion — que faire quand le serveur est installé et ne dit toujours rien
- Lancer des commandes Golo depuis l'éditeur — le menu Golo
- Coloration et complétion — pourquoi l'interpréteur est le serveur
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 90 91 92 93 94 95 96 97 98 99 100 |
|