shell dot on steroids https://pagure.io/shellfu
Alois Mahdal ece4c8ed6b Bump version 9 lat temu
mkit Warn if STAGE contains colon 9 lat temu
notes Be more specific with guideline regarding echo >1 9 lat temu
src Denote temporary presence of debug in template 9 lat temu
test Fix infinite loop with usage() 9 lat temu
.gitignore Do not track test artifacts 9 lat temu
LICENSE Split-fork from qecc 9 lat temu
Makefile Use new catch phrase 9 lat temu
README Use new catch phrase 9 lat temu
config.mk Bump version 9 lat temu

README

Fastfoo Bash library
=====================

ffoo - Fastfoo - Bash dot on steroids

**Make your foo taste like real foo. Fast.**


NOTES
-----

* if when using `debug -v` you stumble on a variable name
that is *really* used internally by pretty.sh, routines
pick up the internal ones which may easily confuse you.
Examples are `src` or `caller`.

You can circumvent this by composing the debug string
yourself, e.g.:

debug "src='$src'"

in place of

debug -v src

This will be solved in the future (1.0.0?) probably by
refactoring the internal names to some long, ugly but
"safe" names. Now, however, readability of the internal
code is of higher priority.

Note that there is no risk damage to data integrity, it's
just that the routine is unable to show you desired value.


* if `debug -v "x*:` is used, `x*` apparently tries to match
*filenames* first, and only if there is no match, it goes
on to match variable names. This does not seem to affect
`@`, though.

Probably some eval pitfall. For now I'll just remove `*`.
If somebody can fix it, we can re-add it.

On the other hand, I don't even understand how `*` should
exactly behave compared to `@`, so having it disabled does
not seem like such a loss. And by the way, did you know
that the eval is evil? So in the end, maybe we should not
have this feature in the first place... :)