[Scilab-users] Toolboxes startup
Stéphane Mottelet
stephane.mottelet at utc.fr
Mon Apr 26 16:26:04 CEST 2021
Le 26/04/2021 à 15:15, Samuel Gougeon a écrit :
> Le 26/04/2021 à 14:51, Samuel Gougeon a écrit :
>> Le 26/04/2021 à 14:15, Stéphane Mottelet a écrit :
>>>> .../...
>>>>
>>>> Such a wish was reported 10 years ago as bug 6801
>>>> <https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/bugzilla.scilab.org/show_bug.cgi?id=6801>.
>>>>
>>>> To me, the only way to overcome any mprintf or disp made in *.start
>>>> files of external modules would be to become able to redirect the
>>>> standard output to null (or anywhere else as in a file, as with
>>>> diary, that forks the stream instead of redirecting it).
>>>> I don't think that %toolboxes aims to become public.
>>>> atomsGetInstalled() and atomsGetLoaded() (and others) would likely
>>>> be more suited to test the atoms status.
>>>>
>>>> For contribution,
>>>> Samuel
>>>
>>> Yeah that's the idea. But better than redirection of the standard
>>> output, all the stuff displayed in the .start file should go in a
>>> Journal, to which display methods can be associated. So instead of
>>> explicitely calling disp or mprinf, etc. the .start script should
>>> just add some stuff + associated verbosity level to the journal.
>>> What would be actually really displayed
>>>
> Whatever is the method -- redirection of stdout to a file or special
> diary --, i am afraid that the analysis of contents vs verbosity
> would then be done only after completing the whole loading process.
> This would prevent displaying information in a progressive way :
> immediately after loading macros, then after loading the
> documentation, etc... that will anyway be required in some occasion.
>
A Journal is not a diary, neither a redirection to a file and there is
no analysis of content for verbosity of user output. The verbosity is
chosen when creating the journal. Here is a small example of what I meant:
function j=journal(level, fun)
j = mlist(["journal","level","displayfun"],level,fun)
endfunction
function out=%journal_e(varargin)
j = varargin($);
level = varargin(1);
if level <= j.level
j.displayfun(varargin(2:$-1));
end
out=[];
endfunction
function loadmacros(jnl)
jnl(3,"\t Warning library MD5SUM invalid
abf4bffa3651a44fdd550e2dbffbe912\n")
jnl(3,"\t-->Warning, macros are obsolete, rebuild lib please\n")
endfunction
function loadhelp(jnl)
jnl(3,"\t-->Help files traduction courtesy of W. Shakespeare\n")
endfunction
function loaddemos(jnl)
jnl(3,"\t-->TODO: awesome demo missing\n")
endfunction
function start(jnl)
jnl(1,"Start Apifun %s\n","0.4")
jnl(2,"\tLoad macros\n")
loadmacros(jnl)
jnl(2,"\tLoad help\n")
loadhelp(jnl)
jnl(2,"\tLoad demos\n")
loaddemos(jnl)
endfunction
console1 = journal(1,mprintf);
console2 = journal(2,mprintf);
console3 = journal(3,mprintf);
mprintf("\n-----Level 1-----\n\n")
start(console1)
mprintf("\n-----Level 2-----\n\n")
start(console2)
mprintf("\n-----Level 3-----\n\n")
start(console3) -----Level 1----- Start Apifun 0.4 -----Level 2-----
Start Apifun 0.4 Load macros Load help Load demos -----Level 3-----
Start Apifun 0.4 Load macros Warning library MD5SUM invalid
abf4bffa3651a44fdd550e2dbffbe912 --> Warning, macros are obsolete,
rebuild lib please Load help --> Help files traduction courtesy of W.
Shakespeare Load demos --> TODO: awesome demo missing S.
>
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users
--
Stéphane Mottelet
Ingénieur de recherche
EA 4297 Transformations Intégrées de la Matière Renouvelable
Département Génie des Procédés Industriels
Sorbonne Universités - Université de Technologie de Compiègne
CS 60319, 60203 Compiègne cedex
Tel : +33(0)344234688
http://www.utc.fr/~mottelet
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20210426/998f7fcd/attachment.htm>
More information about the users
mailing list