Thanks for the replies.  I had hoped that there was indeed that change in process creation, but I can live with the current implementation.
I am currently using a shortcut "o", defined as:

~ λ which o
o is an alias, defined as "setsid -w gio open $*"

Best regards,
Jeff

On Thu, Oct 3, 2024 at 4:46 PM Jim Porter <jporterbugs@gmail.com> wrote:
On 10/3/2024 1:09 AM, Andreas Schwab wrote:
> On Okt 02 2024, Jeff Kowalski wrote:
>
>> Recall we're still trying to get the "xdg-open file.txt" case to work
>> correctly.
>
> This is not possible as long as eshell creates a new session for each
> command and closes it immediately after the command exits.  You can
> observe the same effect if you run "xterm -e 'xdg-open file.txt'".

I'm not sure there's a way to avoid creating a new session for each
command, at least not without a bunch of changes to process.c (though if
someone disagrees, I'd be happy for some pointers in the right
direction). As a workaround, if you make sure that the I/O handles for
"xdg-open" are all pipes, that should outsmart it, e.g.:

   echo | xdg-open <whatever> |& cat