bug 5330
[scilab.git] / scilab / modules / helptools / macros / help.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2008 - INRIA - Vincent COUVERT
3 //
4 // This file must be used under the terms of the CeCILL.
5 // This source file is licensed as described in the file COPYING, which
6 // you should have received as part of this distribution.  The terms
7 // are also available at
8 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
9
10 function help(varargin)
11
12 [lhs,rhs]=argn(0);
13
14 if rhs >= 1 then
15   key = varargin(1);
16 else
17   key = '';
18 end
19
20 if (fileinfo('SCI/modules/helptools/help') <> []) then
21   
22   if getscilabmode() <> "NWNI" then
23     
24     // No input argument: launch help browser
25     if argn(2)==0 then
26       global %helps
27       helpbrowser(%helps(:,1), getlanguage());
28       return
29     end
30     
31     if type(key) <> 10 then 
32       error(999,msprintf(_("%s: Wrong type for input argument #%d: A string expected.\n"),'help',1));
33     end 
34     
35     // Search a function name
36     key=stripblanks(key)
37     
38     if or(part(key,1)==['(',')','[',']','{','}','%','''','""',':','*','/', ...
39             '\','.','<','>','&','^','|','~','+','-']) then
40       key="symbols";
41     end
42   
43     global %helps
44     helpbrowser(%helps(:,1), key, getlanguage(), %f);
45     
46     // If the function name does not exists then full-text search is done (See Java code)
47     
48   else
49     error(msprintf(gettext("%s: The help browser is disabled in %s mode.\n"), "help", getscilabmode()));
50   end
51 else
52
53   error(msprintf(gettext("%s: help module is not installed.\n"), "help"));
54
55 end
56
57 endfunction
58