GNU bug report logs -
#24394
25.1.50; (find-file "/sudo::") ignores async-shell-command-buffer settings
Previous Next
Reported by: Tino Calancha <tino.calancha <at> gmail.com>
Date: Thu, 8 Sep 2016 14:40:02 UTC
Severity: normal
Tags: fixed
Merged with 34172
Found in versions 25.1.50, 27.0.50
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Hi Michael,
thanks for your replay.
On Mon, 12 Sep 2016, Michael Albinus wrote:
> Tino Calancha <tino.calancha <at> gmail.com> writes:
>
>> Hi Michael,
>
> Hi Tino,
>
>>> However, I'm kind of reluctant to fix this in
>>> `tramp-handle-shell-command'. The respective code in `shell-command'
>>> spans over ~40 lines, and I don't believe Tramp shall simply copy those
>>> lines (and other details not handled in Tramp yet). It's even
>>> questionable that Tramp shall offer an own handler for `shell-command'.
>> It might has sense to refactor that part into a new function (see
>> patch below).
>> The tramp could use this new function which just use the variable
>> `async-shell-command-buffer'. Other things like
>
> This could be done, of course. But it would add additional complexity to
> simple.el, although a better solution could be implemented.
>
>> `shell-command-dont-erase-buffer'
>> can perfectly be ignored by tramp: they are still not well established.
>
> Mid-term somebody else will write another bug report for this. If we're
> going to fix this bug, it shall cover this aspect as well.
That's true. Maybe even myself after 6 months :-)
>>> The reason why Tramp does this is the use of `shell-file-name' and
>>> `shell-command-switch'. They keep host local values, for remote
>>> connections other values are needed. It is a long standing request, that
>>> Tramp shall offer connection local variables, which carry different
>>> values for different remote hosts. If we would have such a mechanism,
>>> `shell-command' could use `process-file' and `start-file-process',
>>> and
>> it
>>> would not need to call a file name handler anymore.
>>>
>>> And this error would go away.
>> That sounds like the ultimate solution.
>
> Yes, I'd like to go this way.
>
>> A partial solution could be to allow running >1 async commands as root
>> in the local machine _only_. Then, `shell-file-name' and
>> `shell-command-switch' are the same.
>> Sometimes i need to execute more than 1 process with root priviledges in
>> my local machine: i do this using several terminals.
>> Running all the processes inside Emacs would be nicer.
>
> It would be impossible to explain why it is restricted to just this
> use case. And people would blame us.
> No, I would like to take the opportunity to introduce connection-local
> variables. First it needs a proper API.
It's OK, i respect your opinion. You are talking as the developer of the
code, it's normal you only want to looks perfect. I would say the same
if i were coding in tramp.
In my case, i talk just as a simple tramp user: i would be _super_
happy if i could get your ultimate solution, but i would be _mild_ happy
if i could get at least the partial solution.
Regards,
Tino
This bug report was last modified 6 years and 57 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.