Mercurial > hg > octave-lyh
annotate scripts/miscellaneous/ls_command.m @ 11300:4ecc7bc5bc83
search PATH from environment for programs, not EXEC_PATH
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 26 Nov 2010 02:58:16 -0500 |
parents | 95c3e38098bf |
children | fd0a3ac60b0e |
rev | line source |
---|---|
7017 | 1 ## Copyright (C) 2006, 2007 John W. Eaton |
6115 | 2 ## |
3 ## This file is part of Octave. | |
4 ## | |
5 ## Octave is free software; you can redistribute it and/or modify it | |
6 ## under the terms of the GNU General Public License as published by | |
7016 | 7 ## the Free Software Foundation; either version 3 of the License, or (at |
8 ## your option) any later version. | |
6115 | 9 ## |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
14 ## | |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
6115 | 18 |
19 ## -*- texinfo -*- | |
20 ## @deftypefn {Function File} {[@var{old_cmd} =} ls_command (@var{cmd}) | |
21 ## Set or return the shell command used by Octave's @code{ls} command. | |
22 ## The value of @var{cmd} must be a character string. | |
23 ## With no arguments, simply return the previous value. | |
24 ## @seealso{ls} | |
25 ## @end deftypefn | |
26 | |
27 ## Author: jwe | |
28 | |
29 function old_cmd = ls_command (cmd) | |
30 | |
31 global __ls_command__; | |
32 | |
33 if (isempty (__ls_command__)) | |
34 ## FIXME -- ispc and isunix both return true for Cygwin. Should they? | |
11300
4ecc7bc5bc83
search PATH from environment for programs, not EXEC_PATH
John W. Eaton <jwe@octave.org>
parents:
10549
diff
changeset
|
35 if (ispc () && ! isunix () |
4ecc7bc5bc83
search PATH from environment for programs, not EXEC_PATH
John W. Eaton <jwe@octave.org>
parents:
10549
diff
changeset
|
36 && isempty (file_in_path (getenv ("PATH"), "ls"))) |
6117 | 37 __ls_command__ = "cmd /C dir /D"; |
6115 | 38 else |
39 __ls_command__ = "ls -C"; | |
40 endif | |
41 endif | |
42 | |
43 if (nargin == 0 || nargin == 1) | |
44 | |
45 old_cmd = __ls_command__; | |
46 | |
47 if (nargin == 1) | |
48 if (ischar (cmd)) | |
10549 | 49 __ls_command__ = cmd; |
6115 | 50 else |
10549 | 51 error ("ls_command: expecting argument to be a character string"); |
6115 | 52 endif |
53 endif | |
54 | |
55 endif | |
56 | |
57 endfunction |