(BWDIC!) Rewrite prompt handling via new n_tty_create_prompt()..
which creates something in a dynamic string object.
This new approach allows us to drop n_shexp_expand_escape() and
field_put_bidi_clip() functions.
Along this we loose the capability to expand \?, \@ and \$,
instead new "private" variables *-account-name*, *-exit-status,
*-mailbox-resolved* and *-mailbox-display* have been introduced,
and the prompt is completely shell expanded (thus twice with
`wysh' or in v15), as if dollar-single-quote quoted.
We gained *prompt2* as a second level prompt.
The support for \& a.k.a. "? " or "& " dependent upon *bsdcompat*
has been dropped completely, just set the *prompt* if you want to.
Maybe our variable expansion will improve in the future and
something like, say, ${bsdcompat?&:?} can be used... Whatever.
Most of the new variables must not be covered by `localopts', so
extend the new automatic variable handling with a new _NOLOPTS
flag and check that before adding a variable to unroll lists.
12 files changed: