>>>> "Michael" == Michael Sperber
<sperber(a)informatik.uni-tuebingen.de> writes:
>>>> "davep" == David A Panariti
<davep.xemacs(a)meduseld.net> writes:
davep> This does indeed show extra
echoing. running ftp in an
davep> xterm and typing commands by hand doesn't show extra
davep> echoing. running ftp in an xterm with input from a file
davep> doesn't show extra echoing. (the outputs are available if
davep> you need them)
davep> I'm running the standard ftp client, on a pretty standard
davep> FreeBSD system.
Michael> Hm, it might be the interactive mode of ftp getting in the
Michael> way. Could you try
Michael> (setq efs-ftp-program-args '("-e" "-i"
"-n" "-g" "-v"))
Michael> Moreover,
Michael> (setq efs-send-progress-off t)
Thanks.
I will try these things.
A bit more investigation on my part shows:
1) Using linux's ftp in place of the default shows no echoing.
(i.e. rcp some_linux_system:/usr/bin/ftp ~/linux-ftp
(setq eft-ftp-program "~/linux-ftp))
2) printf's stuck into ftp (gotta love havin' the source!) show the
echo is actually in FreeBSD's editline routine: el_gets(), which
seems to be BSD's answer to readline.
But thinking about it, it seems like el_gets() is not respecting the
-echo state of the tty. comint collects the chars of the line, sends
them all to the underlying process when I hit enter, which is in
el_gets(). el_gets() then echoes them as if the user typed them.
Here is the ftp underlying shell's term settings:
ftp> ! stty -a
! stty -a
speed 9600 baud; 0 rows; 0 columns;
lflags: icanon isig iexten -echo echoe -echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel -ignbrk
brkint -inpck -ignpar -parmrk
oflags: opost -onlcr -ocrnl -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = <undef>; erase2 = ^H; intr = ^C;
kill = <undef>; lnext = ^V; min = 1; quit = ^\; reprint = ^R;
start = ^Q; status = ^T; stop = ^S; susp = ^Z; time = 0;
werase = ^W;
I'm convinced now it is el_gets()'s problem.
But it looks like you are using FreeBSD (4.6) and you don't see the
problem, do you? I've seen it for some time, since about 4.0, so it
is not FreeBSD 4.6 specific.
I did not have a .editrc and it happens with xemacs -q. It also
happens when I use a freshly created account and xemacs -q. Didn't
really need the -q, but just in case...
thanks,
davep
Michael> is also probably in order. (You can also do these things
Michael> via customize, but I think I'm too old for this new GUI
Michael> stuff.)
Yes, me too. I see a lot of
`this option has been changed outside the customize buffer.' when I do
use it. However, I am making the effort. Especially with the
subsystems I don't understand yet.
--
Nature is by and large to be found out of doors, a location where, it
cannot be argued, there are never enough comfortable chairs.
-- Fran Leibowitz