[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ob-shell sessions will send final echo '...' as input key sequence w
From: |
Christopher M. Miles |
Subject: |
Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively |
Date: |
Thu, 04 May 2023 00:31:50 +0800 |
User-agent: |
mu4e 1.10.3; emacs 30.0.50 |
Ihor Radchenko <yantar92@posteo.net> writes:
> "Christopher M. Miles" <numbchild@gmail.com> writes:
>
>> So currently ob-shell.el is async sending command into session buffer
>> without waiting for command to be finished.
>>
>> I checked out the ob-shell.el source code. I suppose this is the core
>> part of the problem. From intuitive view, session async evaluation
>> indeed should not wait for command to be finished. But still feel a
>> little weird.
>
> The core of the problem is in how Emacs comint is sending multiline
> input. My earlier example with M-x shell also demonstrates what is
> penning. comint.el basically simulates user input verbatim, as if you
> typed the whole thing symbol by symbol, including newlines.
>
> And it makes total sense as long as you are actually typing things
> interactively in the comint buffer.
>
> ob-shell :session in this case gets a bit weird. On one hand, it
> faithfully simulates interactive session. On the other hand, it does not
> feel fully interactive from user perspective, as you send a bunch of
> commands together within a single source block.
>
> One way to avoid the situations like with mpv could be packing the whole
> code block into script and then sending that script to comint session
> buffer. But then people who would like to actually switch to that buffer
> and work with it manually will get confused about what is going on
> there. (see `org-babel-switch-to-session' and
> `org-babel-switch-to-session-with-code').
>> If this :stdin interesting idea works, maybe other similar ideas will too.🙋
>>
>> For examples:
>>
>> - Wrap command "mpv" with a shell function which disable accepting
>> interactive input.
>
> Is there such a function? For all possible POSIX shells?
>
>> - Setting shell or environment variable in :prolog for source block to
>> preventing interactive input.
>
> Again, do you know how to do this?
I tested with bash and wrap mpv into a function. The :prolog way is not
working too. Seems those workaround tries can't get around the
essential problem. I'm too naive....
--
[ stardiviner ]
I try to make every word tell the meaning that I want to express without
misunderstanding.
Blog: https://stardiviner.github.io/
IRC(libera.chat, freenode): stardiviner, Matrix: stardiviner
GPG: F09F650D7D674819892591401B5DF1C95AE89AC3
signature.asc
Description: PGP signature
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively, (continued)
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively, Christopher M. Miles, 2023/05/01
- [SOLUTION] a temporary workaround solution using another language like "python", Christopher M. Miles, 2023/05/01
- Message not available
- Re: [SOLUTION] a temporary workaround solution using another language like "python", Max Nikulin, 2023/05/01
- Re: [SOLUTION] a temporary workaround solution using another language like "python", Christopher M. Miles, 2023/05/01
- Re: [SOLUTION] a temporary workaround solution using another language like "python", Ihor Radchenko, 2023/05/01
- [CLOSED] [ANSWER] Re: a temporary workaround solution using another language like "python", Christopher M. Miles, 2023/05/02
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively (was: [Need Help] Error to evaluate "mpv" command in inline src block), Matt, 2023/05/02
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively (was: [Need Help] Error to evaluate "mpv" command in inline src block), Ihor Radchenko, 2023/05/03
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively, Christopher M. Miles, 2023/05/03
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively, Ihor Radchenko, 2023/05/03
- Re: ob-shell sessions will send final echo '...' as input key sequence when previous command reads input interactively,
Christopher M. Miles <=
Re: [Need Help] Error to evaluate "mpv" command in inline src block, Christopher M. Miles, 2023/05/01