Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Aug 1996 14:20:14 +0200
From:      "Julian H. Stacey" <jhs@freebsd.org>
To:        "Jordan K. Hubbard" <jkh@time.cdrom.com>
Cc:        Chuck Robey <chuckr@glue.umd.edu>, Narvi <narvi@haldjas.folklore.ee>, "Julian H. Stacey" <jhs%freebsd.org@sunrise.cs.berkeley.edu>, bvsmith@lbl.gov, ports%freebsd.org@sunrise.cs.berkeley.edu, gj%freebsd.org@sunrise.cs.berkeley.edu, me%freebsd.org@sunrise.cs.berkeley.edu, asami%freebsd.org@sunrise.cs.berkeley.edu
Subject:   Re: xfig.3.1.4 extension to support vi -C signals linkage 
Message-ID:  <199608121220.OAA23179@vector.jhs.no_domain>
In-Reply-To: Your message of "Sun, 11 Aug 1996 13:39:15 PDT." <8204.839795955@time.cdrom.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
Hi, Reference:
> From: "Jordan K. Hubbard" <jkh@time.cdrom.com> 
> Subject: Re: xfig.3.1.4 extension to support vi -C signals linkage 
> Date: Sun, 11 Aug 1996 13:39:15 -0700 
> Message-id: <8204.839795955@time.cdrom.com> 
>
> > I want to hear from Julian, does adding this functionality make any
> > difference to how the port works in the absence of a patched vi?  I'm
> 
> I've never liked the fact that this requires modifications of the
> ports themselves - this should *not* be the case,

In an ideal world ... True ... every package would come pre designed for every 
last eventuality, & we wouldn't need to add anything  ;-)
I did this work after reading the manuals of the ports & finding no convenient
common mechanism.  If you want to take on the work of campaigning the 
3 ports authors to implement a common mechanism, once they've written 
it,  we can use it. Till then we can use my mechanism.

I implemented a simple uniform method of receiving 
a SIGUSR1 on those 3 packages, to invoke a reload & redisplay.
I used signals rather than X events because while the 3 ports are X packages,
nvi is not (also I'm more familiar with kill than with X events).


> and if vi needs a
> more general foreign execution-and-data-exchange model then that's
> what should be written, not ad-hack changes to each and every port
> which you want to make "vi aware."

I have changed all ports to support the common interface identically.
VI has just one mechanism, not a dirty mess of 3 mechanisms, please look :-)
	http://www.freebsd.org/~jhs/\
	src/bsd/fixes/FreeBSD/src/generic/usr.bin/vi

The mechanism I have implemented on the ports is equally usable by any
other tool or editor, it's not just for use by vi. It would be simple to
use the mechanism from another editor or whatever.

Vi has No concept of how & what is outside it's realm, & what tools are used 
etc, those rules are encapsulated in a make macro file:
	http://www.freebsd.org/~jhs/\
		src/bsd/fixes/FreeBSD/src/generic/share/mk/text.mk
Ref:
  .ps.vps: # create a temporary pid file for signal linking vi + ghostview
  .html.vhtml: # create a temporary pid file for signal linking vi + chimera
  .fig.vfig: # create a temporary pid file for signal linking vi + xfig

After you've read the code, you'll have a better grasp of what it does,
(it's heavily commented).

All patches are against current, but if anyone has problems, I can
give a temporary login when I'm slip connected, for a trial run on my box.
I can also install it on any permanent net accessible box if desired,
PS FYI I have no thud login.

Julian
--
Julian H. Stacey	jhs@freebsd.org  	http://www.freebsd.org/~jhs/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199608121220.OAA23179>