alias _dont "" alias _do "$*" set _ifstack "" alias # "$_ifstack $*" alias #ifeq "set _ifnew_$1 _dont; set _ifnew_$2 _do; _ifeq_2 _ifnew_$1" alias #ifneq "set _ifnew_$1 _do; set _ifnew_$2 _dont; _ifeq_2 _ifnew_$1" alias _ifeq_2 "set _ifstack \"${$1} $_ifstack\"" alias #else "_else_2$_ifstack" alias _else_2_do "set _ifstack \"_dont ${* q?}\"" alias _else_2_dont "set _ifstack \"_do ${* q?}\"" alias #endif "_endif_2 $_ifstack" alias _endif_2 "set _ifstack \"${2- q?}\"" alias #ifdef "#ifneq \"${$1 ?}\" \"\"" alias #ifndef "#ifeq \"${$1 ?}\" \"\"" alias #include "# exec $*" alias #define "# set $*" alias #undef "# unset $*" alias #error "# echo ERROR: $*; # quit" alias #warning "# echo WARNING: $*" // EXAMPLE: // #ifeq "$a" "$b" // #ifeq "$a" "$c" // # echo "a == b == c" // #else // # echo "a == b != c" // #endif // #else // #ifeq "$a" "$c" // # echo "a == c != b" // #else // #ifeq "$b" "$c" // # echo "b == c != a" // #else // # echo "a != b != c != a" // #endif // #endif // #endif