shell dot on steroids https://pagure.io/shellfu
Alois Mahdal 0725f72fc4 Bump version 9 lat temu
bin Re-align line breaks 9 lat temu
doc Update examples in docs 9 lat temu
include Sort frontend names alphabetically 9 lat temu
notes Add high-level progress tracking overview 9 lat temu
setup Fix hash retrieval in get_version 9 lat temu
test Update API test after changes in tmp.sh 9 lat temu
.gitignore Do not track test artifacts 9 lat temu
LICENSE Split-fork from qecc 9 lat temu
Makefile Revamp testing framework even better 9 lat temu
README Add note on name conflict when using -v from __echo frontends 9 lat temu
config.mk Bump version 9 lat temu
ffoo.sh.skel Do return even in interactive (debug) mode 9 lat temu

README

Fast Foo Bash library
=====================

ffoo - Fast Foo - a Bash Library


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... :)