Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!unmvax!nmtsun!dieter
From: dieter@titan.nmt.edu (The Demented Teddy Bear)
Newsgroups: comp.emacs
Subject: Re: talk-mode for Emacs
Message-ID: <1532@nmtsun.nmt.edu>
Date: 28 Nov 88 00:10:08 GMT
References: <828@ubu.warwick.UUCP> <28173@tut.cis.ohio-state.edu> <1502@nmtsun.nmt.edu> <1593@harlqn.UUCP> 
Sender: dieter@nmtsun.nmt.edu
Reply-To: dieter@titan.nmt.edu (The Demented Teddy Bear)
Organization: New Mexico Tech
Lines: 34
In-reply-to: mrd@sun.soe.clarkson.edu (Michael DeCorte)

In article , mrd@sun (Michael DeCorte) writes:
> In article <1593@harlqn.UUCP> jcgs@harlqn.UUCP (John Sturdy) writes:
> 
>   Most of this sounds possible, but I can't think of any way of making the
>   emacs catch the initial "Talk requested" message directed at your terminal
>   when someone wants to talk to you.
> 
> I don't think this is necessary.  I for one know that I don't want
> emacs to suddenly pop into a talk for me.  What if I have left my
> terminal?  Person on the other end is typing a way like mad thinking I
> am intently reading while I am downstairs deciding if I want M&M's
> with or without peanuts.  Let the user hit 'M-X talk'

This is actually the easier thing to do.  All M-x talk would have to
do is blip the appropriate talkd, get an address to connect to, and
do it.  You could probably rip off M-x terminal-mode code at this
point, or wing it (two separate buffers?  It'd be nice to have a history
you could save later).

I suspect you'd get by with much less code with a small C chunk that
actually does all the talk protocol grunge.  This is *just* a suspicion
though.

I don't think it is possible to do the intercept as described without
lots of pre-emacs hacking.  You'd have to do something along the lines
of grabbing a pty, update /etc/utmp (talk looks there) to show you as
being on the new pty, and filter *all* i/o through that pty.  Inefficient,
especially for such small gains.

Dieter
-- 
Welcome to the island.  You are number six.
dieter%nmt@relay.cs.net
dieter@jupiter.nmt.edu