|
From: | Jim Porter |
Subject: | bug#69937: 29.1; Eshell ${} expansion includes stderr |
Date: | Thu, 21 Mar 2024 22:56:48 -0700 |
On 3/21/2024 9:20 PM, Richard Sent wrote:
When performing expansion with ${} in Eshell, the expansion will include both stdin and stderr. --8<---------------cut here---------------start------------->8--- ~ $ echo ${ruby -e 'puts 0' -e 'STDERR.puts "1"' -e 'puts 2'} (0 1 2) --8<---------------cut here---------------end--------------->8---
Thanks for noticing this. I think this is simply a bug (although it may originally have been intentional due to Eshell's more-limited redirection operators in Emacs 28 and earlier). It would probably be good to follow other shells here, and people who *want* to capture both stdout and stderr can use 2>&1 as usual.
I'll try and put together a patch for this over the weekend.
[Prev in Thread] | Current Thread | [Next in Thread] |