octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: packaging system


From: Bill Denney
Subject: Re: packaging system
Date: Sun, 19 Jun 2005 21:30:31 -0400 (EDT)

On Sun, 19 Jun 2005, Stefan van der Walt wrote:

Anyway, I don't see it being a major hassle: include an INDEX file
with each package, and let Octave parse those index files whenever
someone wants help('toolbox').  We have the code to do so already.

Here's what strikes me as the simplest solution: a modification to the help function.

Toolboxes could work as follows:

They become packages with no specific functions. When a package is part of a toolbox, it is symlinked into the toolbox directory, and within the toolbox directory is effectively nothing. Then, when "help toolboxname" is called, it will scan each subdirectory for functions. This could be done as follows:

OCTAVE_PACKAGE_DIR/package-1.1/
OCTAVE_PACKAGE_DIR/package2-4.8/
OCTAVE_PACKAGE_DIR/toolbox-1.0/
                               package-1.1 -> ../package-1.1
                               package2-4.8 -> ../package2-4.8

where the package directories are symlinks.

Another option would be to have a similar functionality, but have a single file in the toolbox-1.0 directory (along with the package symlinks) named toolbox.m (where toolbox is the name of the toolbox). This file would give a brief description when help is run on it, and perhaps tell you to run it as as "toolbox" from the command line to get a list of functions (where toolbox.m could be essentially generic with the exception of the description).

Symlinks may interfere with octave's function finding routines (i.e. there would be two locations in the directory tree where the same file is located), so simply having each package drop a file into the toolkit directory may work.

Bill

--
THE VIRTUAL WORLD NEWS -- "Hey, it's words, punctuation marks,
                           paragraphs--practically the New York Times!"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]