Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2026.0.0 - Français


debug

Lance le mode de débogage CLI de Scilab

Séquence d'appel

debug

Description

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 :

a = 1;
b = linspace(a, 3, 10);
c = exp(a + %i + c);

Nous devons préalablement les inscrire dans une fonction quelconque :

function script()
    a = 1;
    b = linspace(a, 3, 10);
    c = exp(a + %i + c);
endfunction

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
function v=compute(val)
    v = 1;
    for i=1:val
        v = v * i;
    end
endfunction

debug
break compute 4 "i == 5"
exec compute(10)
disp val
disp i
disp v
continue
quit

Historique

VersionDescription
6.0.0 Introduction du débogueur intégré, en interface console
Report an issue
<< Debugging Debugging where >>

Copyright (c) 2022-2025 (Dassault Systèmes S.E.)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 16 09:08:34 CEST 2025