FR Basic - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki
Basic IDE Runtime et IDE
Home · BASIC · UO API · A–Z · Examples · Languages
Basic Runtime exécute les scripts Basic et transmet les appels UO.* enregistrés à ClassicUO. L’environnement de développement intégré repose sur Eclipse Theia, l’éditeur Monaco et une extension de langage Basic.
Point d’entrée et indexation
SUB Main()
UO.Print('Basic démarré')
END SUB
Dès l’ouverture ou la modification d’un document, tout le texte est indexé: SUB, FUNCTION, paramètres, déclarations locales et globales, appels API, diagnostics, Outline et navigation des symboles. L’exécution ne dépend pas d’un défilement jusqu’en bas et Main peut se trouver n’importe où dans le fichier.
Zones de l’IDE
- Explorer — fichiers et instance de script sélectionnée;
- Editor — source Basic;
- Outline —
SUBetFUNCTIONdu fichier sélectionné; - Problems — diagnostics avec navigation vers la source;
- Output / Debug Console — messages chronologiques;
- API Inspector — documentation du symbole Runtime choisi;
- Variables / Watch / Call Stack — valeurs et frames capturées par le débogueur;
- API Manual — catalogue complet du Runtime enregistré.
Les panneaux sont redimensionnables et les zones détachées continuent à être rendues lorsqu’un autre panneau est actif. Fermer la fenêtre IDE n’arrête pas les scripts tant que ClassicUO Runtime fonctionne; leur état doit réapparaître à la réouverture.
Scripts parallèles et couleurs d’état
Plusieurs scripts peuvent fonctionner en parallèle avec des états running, paused, stopped et debugging indépendants. Sélectionner un script ne modifie pas les autres. Le marqueur est vert pendant l’exécution, jaune en pause et noir/couleur normale du thème lorsqu’un script arrêté est sélectionné.
Commandes Run et Debug
| Action | Touche | Comportement |
|---|---|---|
| Run Current Script | F5 |
valider et exécuter le script actuel |
Start Script (SUB Main) / Run Without Debugging |
Ctrl+F5 |
lancer SUB Main() sans arrêt du débogueur |
| Start Debugging | F4 |
lancer SUB Main() sous le débogueur |
| Validate | F6 |
vérifier la syntaxe sans exécuter |
| Pause/Resume Current Script | F7 |
suspendre ou reprendre l’instance choisie |
| Continue | F8 |
continuer après une pause ou un breakpoint |
| Toggle Breakpoint | F9 |
ajouter ou retirer un breakpoint de ligne |
| Step Over | F10 |
exécuter l’instruction actuelle |
| Step Into | F11 |
entrer dans une SUB ou FUNCTION utilisateur appelée |
| Step Out | Shift+F11 |
terminer la procédure actuelle et revenir |
| Stop | Shift+F5 |
arrêter l’instance choisie |
| Restart Debugging | Ctrl+Shift+F5 |
redémarrer le script choisi sous le débogueur |
| API Documentation for Symbol | Ctrl+F1 |
ouvrir la documentation du symbole sous le curseur |
Le menu Run contient aussi des actions pour suspendre ou arrêter toutes les instances compatibles. Une commande grisée ne s’applique pas à l’état Runtime actuel.
Débogage pas à pas
Les commandes pas à pas sont pertinentes après l’arrêt du débogueur sur une instruction ou un breakpoint. La ligne exécutable est surlignée. F10 suit les vraies instructions exécutées et ne déplace pas simplement le curseur vers la ligne visuelle suivante. Les locals, globals, watches et frames exacts proviennent d’un snapshot arrêté; pendant l’exécution continue, seul le dernier état capturé sans risque peut être affiché.
Complétion et documentation
La complétion insère la syntaxe UO.* complète. Une sélection API ouvre la description; un double clic peut insérer la forme complète dans l’éditeur. Ctrl-hover n’apparaît que tant que Ctrl est maintenu, replie le texte long et reste dans les limites de l’écran.
Coopération du script
Runtime utilise des contextes de travail isolés, un cache de source préparé et une quantité limitée de travail sur le thread du jeu. Le script doit tout de même céder la main dans les boucles:
SUB Main()
WHILE UO.GetDead() = 0
' Petite unité de travail
UO.Wait(100)
WEND
END SUB
Une boucle active infinie sans attente peut saturer le processeur et bloquer l’interface.