but I still don't see why we are forgoing a liveness check in favour of this. I attach a patch which addresses both bugs. Its solution for (a) is to make the advice disposable, i.e. it removes itself from the process filter after it has fulfilled its purpose of displaying the output buffer. A syntactically simpler implementation of this could use a plain boolean switch instead of removing the advice, but IMO the latter is semantically more sound (and possibly more performant in subsequent invocations of the process filter, though this should be irrelevant). WDYT? P.S. Would patch(es) for aesthetic changes to the rest of shell-command (such as removing redundant variables, inverting the condition of the massive if-then-else to reduce indentation, etc.) be welcome? If so, where should I send them? -- Basil