From: Kai Grossjohann <kai@emptydomain.de>
Subject: Re: Setting gdb to use eshell buffer
Date: Sat, 31 Jan 2004 21:14:31 +0100 [thread overview]
Message-ID: <87ektfswns.fsf@emptyhost.emptydomain.de> (raw)
In-Reply-To: 40159F4E.8000703@yahoo.com
Kevin Rodgers <ihs_4664@yahoo.com> writes:
> Kai Grossjohann wrote:
>
>> ncohen@ucsd.edu writes:
>>>Hi I'm using tramp to successfully transparently edit remote files
>>>however I also want to compile and debug them from inside emacs.
>>>How do I do this?
>> With difficulty :-/
>> Tramp comes with a file tramp-util.el which contains a function that
>> allows you to do remote compiles. It is, however, a fake, because it
>> doesn't show any output until the remote compile is finished. (M-x
>> compile RET shows you output as it is arriving.) And what's more,
>> Emacs is frozen while it is waiting for the compile to finish.
>
> From that, I infer that Tramp has the connection write its output to a
> local temporary file that it then inserts into a compilation buffer. If
> that's the case, why can't the compilation buffer be set up with a process
> that tail's the temp file as its written?
Remember that Tramp uses a shell connection, the *tramp/foo* buffer,
for most of its stuff. (For all of it, except file transfer in the
case of out-of-band methods.)
The Tramp compilation function sends the compile command to the remote
host, waits for the next shell prompt to appear, then extracts what's
in *tramp/foo* and copies it to another buffer which it calls a
*compilation* buffer.
One *could* temporarily rename the *tramp/foo* buffer to *compilation*
and show it to the user, then when the compilation is finished, revert
the renaming and do the copying thing. Down that path lies madness,
though.
Or one could install a process filter that fishes things from the
*tramp/foo* buffer and copies them into the *compilation* buffer as
they arrive. But in that case, we need to prohibit users from
invoking Tramp in the meantime, as the *tramp/foo* buffer is already
busy.
>> I'm thinking about extending Tramp to allow background processes. I
>> think that Tramp needs to open multiple connections to the remote host
>> to do that. (If somebody has other ideas, please speak up.) And if
>> you open multiple connections to a host, then password caching becomes
>> interesting. And password caching is potentially very dangerous.
>> Also, it would make sense to reuse connections, instead of opening a
>> new connection whenever you issue a new compile command.
>
> I don't know. If caching passwords is so dangerous, maybe it is worth
> the overhead to establish a new connection for each background command.
Hm? That means that the poor user will have to type their password
for every background command... (In the case of multi-hop methods,
multiple passwords.)
Kai
next prev parent reply other threads:[~2004-01-31 20:14 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <mailman.426.1069464439.399.help-gnu-emacs@gnu.org>
2003-12-17 20:17 ` Setting gdb to use eshell buffer Kai Grossjohann
2004-01-25 14:08 ` Ulrich Herbst
2004-01-31 20:15 ` Kai Grossjohann
2004-01-26 23:14 ` Kevin Rodgers
2004-01-31 20:14 ` Kai Grossjohann [this message]
2004-02-02 22:45 ` Kevin Rodgers
2004-02-03 8:26 ` Kai Grossjohann
2004-02-03 16:23 ` Stefan Monnier
2004-02-05 7:53 ` Kai Grossjohann
2003-11-22 0:24 ncohen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ektfswns.fsf@emptyhost.emptydomain.de \
--to=kai@emptydomain.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.