Provided by: libbash_0.9.11-3_all bug

NAME

     libbash — A bash shared libraries package.

DESCRIPTION

     libbash  is  a  package that enables bash dynamic-like shared libraries. Actually its a tool
     for managing bash scripts whose functions you may want to load and use in  scripts  of  your
     own.

     It  contains  a ‘dynamic loader’ for the shared libraries ( ldbash(1)), a configuration tool
     (ldbashconfig(8)), and some libraries.

     Using ldbash(1) you are able to  load  loadable  bash  libraries,  such  as  getopts(1)  and
     hashstash(1).  A bash shared library that can be loaded using
     ldbash(1) must answer 4 requirments:

     1.     It must be installed in $LIBBASH_PREFIX/lib/bash (default is /usr/lib/bash).

     2.     It must contain a line that begins with ‘#EXPORT=’.  That line will contain (after
            the ‘=’) a list of functions that the library exports.  I.e. all the function that
            will be usable after loading that library will be listed in that line.

     3.     It must contain a line that begins with ‘#REQUIRE=’.  That line will contain (after
            the ‘=’) a list of bash libraries that are required for our library.  I.e. every bash
            library that is in use in our bash library must be listed there.

     4.     The library must be listed (For more information, see ldbashconfig(8)).

   Basic guidelines for writing library of your own:
     1.     Be aware, that your library will be actually sourced. So, basically, it should
            contain (i.e define) only functions.

     2.     Try to declare all variables intended for internal use as local.

     3.     Global variables and functions that are intended for internal use (i.e are not
            defined in ‘#EXPORT=’) should begin with:
                  __<library_name>_
            For example, internal function myfoosort of hashstash library should be named as
                  __hashstash_myfoosort
            This helps to avoid conflicts in global name space when using libraries that come
            from different vendors.

     4.     See html manual for full version of this guide.

AUTHORS

     Hai Zaar <haizaar@haizaar.com>
     Gil Ran <ril@ran4.net>

SEE ALSO

     ldbash(1), ldbashconfig(8), getopts(1), hashstash(1) colors(1) messages(1) urlcoding(1)
     locks(1)