debug
Lance le mode de débogage CLI de Scilab
Séquence d'appel
debugDescription
debug met Scilab en mode débogage pour les fonctions écrites en
langage Scilab. Le prompt devient alors debug>.
Ce mode permet de définir et gérer des points d'arrêt au sein des fonctions, d'exécuter des fonctions pas à pas, de lancer des exécutions avec arrêt sur erreur, etc.
![]() | Pour une version GUI, vous pouvez installer l'extension Scilab Language Support de Visual Studio Code (VS Code) afin de déboguer vos scripts Scilab en utilisant le débogeur intégré à Visual Studio Code. |
Commandes en mode débogage
h:
Affiche l'aide du débogueur dans la console, quel que soit le mode de
lancement de Scilab.
help:
En mode Scilab standard (avec fenêtres et interfaces graphiques), ouvre
le navigateur d'aide. Sinon affiche l'aide du debogueur dans la console
(comme avec "h").
(q)uit:
Quitte l'environnement de débogage et revient au mode normal de Scilab.
(w)here ou bt:
Affiche la pile d'appel.
(e)xec, ou (r)un:
Exécute une commande.
(d)isp var, ou (p)rint var:
Affiche la variable var.
(c)ontinue:
Poursuit l'éxécution.
(a)bort:
Annule l'éxécution.
step(n)ext ou next:
Poursuit l'éxécution jusqu'a l'expression suivante.
step(i)n ou in:
Poursuit l'éxécution dans la sous fonction.
step(o)ut ou out:
Poursuit l'éxécution jusqu'à revenir dans la fonction appelante.
(b)reakpoint ou break:
breakpoint function [line [condition]] :
Ajoute un point d'arrêt dans une fonction, à la ligne line
indiquée.
Si une condition est spécifiée, le point d'arrêt devient actif uniquement si
la condition est vérifiée lors de l'éxécution.
(del)ete [n]:
Supprime tous les points d'arrêt. Si n est spécifié, supprime le point d'arrêt #n
enable [n]:
Active tous les points d'arrêt. Si n est spécifié, active le point d'arrêt #n.
disable [n]:
Désactive tous les points d'arrêt. Si n est spécifié, désactive le point d'arrêt #n.
(s)how [n]:
Affiche toutes les informations sur les points d'arrêt.
Si n est spécifié, affiche les informations du point d'arrêt #n.
Déboguer un script
Déboguer une série d'instructions résidant hors de toute fonction requiert de les encapsuler dans une fonction factice. Exemple: nous souhaitons déboguer les instructions suivantes :
Nous devons préalablement les inscrire dans une fonction quelconque :
puis exécuter ce bloc function/endfunction (en mode Scilab normal) afin de définir script() dans la session Scilab. Toutes les commandes du débogueur peuvent alors être utilisée au sein de script() : points d'arrêt, avance pas à pas, etc.
Exemples
//fonction de surcharge de la fonction cosinus pour les chaînes de caractères function v=%c_cos(val) printf("val : %s\n", val); v = cos(evstr(val)); endfunction //appelant function a=test_debug() b = cos("%pi"); a = b * 3; endfunction debug break test_debug exec test_debug where stepin disp val continue quit
Historique
| Version | Description |
| 6.0.0 | Introduction du débogueur intégré, en interface console |
| Report an issue | ||
| << Debugging | Debugging | where >> |
