Mercurial > jwe > octave
annotate scripts/miscellaneous/python.m @ 13859:6d59b141e65d
Add python to manual and respect format rules of copyright block
author | Carnë Draug <carandraug+dev@gmail.com> |
---|---|
date | Mon, 31 Oct 2011 01:05:41 +0000 |
parents | 2ca9730d35ba |
children | 72c96de7a403 |
rev | line source |
---|---|
13163
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
1 ## Copyright (C) 2008-2011 Julian Schnidder |
13859
6d59b141e65d
Add python to manual and respect format rules of copyright block
Carnë Draug <carandraug+dev@gmail.com>
parents:
13163
diff
changeset
|
2 ## Copyright (C) 2011 Carnë Draug |
13163
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
3 ## |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
4 ## This file is part of Octave. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
5 ## |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
6 ## Octave is free software; you can redistribute it and/or modify it |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
7 ## under the terms of the GNU General Public License as published by |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
8 ## the Free Software Foundation; either version 3 of the License, or (at |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
9 ## your option) any later version. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
10 ## |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
11 ## Octave is distributed in the hope that it will be useful, but |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
12 ## WITHOUT ANY WARRANTY; without even the implied warranty of |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
14 ## General Public License for more details. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
15 ## |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
16 ## You should have received a copy of the GNU General Public License |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
17 ## along with Octave; see the file COPYING. If not, see |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
18 ## <http://www.gnu.org/licenses/>. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
19 |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
20 ## -*- texinfo -*- |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
21 ## @deftypefn {Function File} {[@var{output}, @var{status}] =} python (@var{scriptfile}) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
22 ## @deftypefnx {Function File} {[@var{output}, @var{status}] =} python (@var{scriptfile}, @var{argument1}, @var{argument2}, @dots{}) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
23 ## Invoke python script @var{scriptfile} with possibly a list of |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
24 ## command line arguments. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
25 ## Returns output in @var{output} and status |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
26 ## in @var{status}. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
27 ## @seealso{system} |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
28 ## @end deftypefn |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
29 |
13859
6d59b141e65d
Add python to manual and respect format rules of copyright block
Carnë Draug <carandraug+dev@gmail.com>
parents:
13163
diff
changeset
|
30 ## Author: Carnë Draug <carandraug+dev@gmail.com> |
6d59b141e65d
Add python to manual and respect format rules of copyright block
Carnë Draug <carandraug+dev@gmail.com>
parents:
13163
diff
changeset
|
31 |
13163
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
32 function [output, status] = python (scriptfile = "-c ''", varargin) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
33 |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
34 ## VARARGIN is intialized to {}(1x0) if no additional arguments are |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
35 ## supplied, so there is no need to check for it, or provide an |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
36 ## initial value in the argument list of the function definition. |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
37 |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
38 if (ischar (scriptfile) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
39 && ((nargin != 1 && iscellstr (varargin)) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
40 || (nargin == 1 && ! isempty (scriptfile)))) |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
41 [status, output] = system (cstrcat ("python ", scriptfile, |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
42 sprintf (" %s", varargin{:}))); |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
43 else |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
44 error ("python: invalid arguments"); |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
45 endif |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
46 |
2ca9730d35ba
python: new function to invoke python scripts from octave code
Carnë Draug <carandraug+dev@gmail.com>
parents:
diff
changeset
|
47 endfunction |