[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Bug: :session doesn't honor :verbatim [8.2.10 (release_8.2.10 @
From: |
Michael Albinus |
Subject: |
Re: [O] Bug: :session doesn't honor :verbatim [8.2.10 (release_8.2.10 @ /usr/local/share/emacs/26.0.50/lisp/org/)] |
Date: |
Mon, 17 Apr 2017 09:53:38 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
"Charles C. Berry" <address@hidden> writes:
>> However, I don't want to change this globally. Is there an org mean to
>> change this locally just for the session?
>>
>> Maybe the shell prompt could be customizable for a session in ob-sh.el?
>
> That happens in the shell. You can do this to start your session:
>
> #+BEGIN_SRC shell :session mysess
> PS1="MyPrompt-$ "
> #+END_SRC
>
> #+RESULTS:
>
> and then tell emacs to locally set `comint-prompt-regexp' to a value
> other than what was copied from `shell-prompt-pattern'
>
> #+BEGIN_SRC emacs-lisp
> (save-excursion
> (pop-to-buffer "mysess")
> (setq-local comint-prompt-regexp "MyPrompt-$ "))
> #+END_SRC
>
> #+RESULTS:
> : MyPrompt-$
>
> and then it should work.
>
> #+BEGIN_SRC shell :session mysess
> echo "a%b"
> #+END_SRC
>
> #+RESULTS:
> : a%b
>
> ---
>
> You might skip the second step and instead set `shell-prompt-pattern'
> to "MyPrompt-$ ". If `comint-use-prompt-regexp' is nil, then the
> `comint-prompt-regexp' is only consulted by ob-shell.el funs per the
> docstring of comint-use-prompt-regexp.
Thanks for the examples. Anything goes, of course, but I'm hoping for a
tighter integration. Maybe a :prompt param to sh source blocks, which
sets the prompt in a session, and which also manipulates
`comint-prompt-regexp' or `shell-prompt-pattern' local in the session buffer.
Or a mechanism like in Tramp, where the shell prompt is set to a random
string not expected in the shell (see `tramp-end-of-output'), and
`comint-prompt-regexp' or `shell-prompt-pattern' are adapted
automatically local in the session buffer.
> Chuck
Best regards, Michael.