replace (some) fedora patches with termprops
(See wip/termprops
branch.)
Some of the fedora vte patches can be replaced by just installing termprops instead; let's discuss what properties of which types we should use.
-
The container name/runtime/uid patch is simple replace with termprops. Termprops don't have a stack, but IMO the stack there is actually a misfeature.
-
The shell integration (precmd/preexec) can be replaced with
VALUELESS
(i.e., signal) termprops. -
The notification cannot be replaced by termprops as such, but the way that fedora uses these notification is to always send the "Command completed" text. Among other problems, this is bad for i18n. Since this use is essentially a signal, we can just replace that with a
VALUELESS
termprop. Let's call this "postexec" for now.
However due to the async setting/notify on termprops, you can end up with precmd, preexec, postexec (not necessarily even for the same command sequence) being set in the same batch and notified together, leaving the terminal with no way to work out where in the sequence it actually is. (I.e. you could have postexec from the last command and the precmd and preexec for the next one all coming together). There is a way to 'unraise' a signal termprop, but I'd propose that instead of 3 of these signal termprops, we have one "state" integer, i.e. 0=precmd, 1=preexec, 2=postexec).