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;
  • OutlineSUB et FUNCTION du 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.