[comp.sys.mac.system] AppleEvents for Spelling, etc.

norman@d.cs.okstate.edu (Norman Graham) (07/17/90)

In article <5@genco.uucp> rad@genco. (Bob Daniel) writes:
[Bob wants a Spelling Manager, a standard dictionary, and the ability to
add specialized dictionaries.]

In article <1806@hsi86.hsi.UUCP> kenney@hsi.com (Brian Kenney) writes:
[Brian disagrees, citing creeping featurism and longer delays in the
delivery of System 7.0.]

From article <2022@sparko.gwu.edu>, by rjohnson@seas.gwu.edu (Ray Johnson):
[Ray argues for a standard dictionary format that various spelling engines
can access.]

Yes, using several dictionaries can be annoying, both in the amount of disk
space wasted and in the subtle differences between dictionaries. My personal
preference would be to ditch all my application supplied dictionaries and
have every application use Spelling Coach Professional as its native
spelling checker. But I suppose that's beside the point.

In System 7.0, Apple is providing a program-to-program communication (PPC)
mechanism called AppleEvents. In addition, Apple is defining a set of 
standard AppleEvents that every application is expected to understand. 
I believe it is in everyone's best interest for Apple to define a set
of standard AppleEvents that provide 
  1) spell checking services
  2) hyphenation services
  3) word definition services
  4) synonym and antonym services

For example, assume we have our favorite spelling checker engine running
as a background process under MultiFinder. We ask our current application
(word processor, drawing program, or whatever) to verify the spelling of
a word. The current app then posts the Verify Spelling AppleEvent with
the questionable word in the message. Our spelling engine receives the
AppleEvent and, if the word is spelled correctly, sends an AppleEvent
back to the current app saying the word is OK; otherwise the spelling
engine posts an AppleEvent containing a list of suggested words.

You can imagine similar interchange with the other three categories of
AppleEvents listed above.

I suppose something like this will evolve without Apple's guidance; but
I imagine each dictionary vendor will define their own proprietary 
set of AppleEvents and thus every application will have to support 
multiple dictionary protocols in order to allow users to use their
favorite spelling/hyphenation/etc. engine. For this reason, I strongly
suggest Apple standardize these AppleEvents before System 7.0 is released.

Everything above is IMHO of course :-).

Norm
-- 
Norman Graham                            Oklahoma State University
  Internet:  norman@a.cs.okstate.edu     Computing and Information Sciences
  BangPath:                              219 Mathematical Sciences Building
     {cbosgd,rutgers}!okstate!norman     Stillwater, OK  USA  74078-0599

chewy@apple.com (Paul Snively) (07/19/90)

In article <1990Jul16.194710.5115@d.cs.okstate.edu> 
norman@d.cs.okstate.edu (Norman Graham) writes:
> In article <5@genco.uucp> rad@genco. (Bob Daniel) writes:
> [Bob wants a Spelling Manager, a standard dictionary, and the ability to
> add specialized dictionaries.]
> 
> In article <1806@hsi86.hsi.UUCP> kenney@hsi.com (Brian Kenney) writes:
> [Brian disagrees, citing creeping featurism and longer delays in the
> delivery of System 7.0.]
> 
> From article <2022@sparko.gwu.edu>, by rjohnson@seas.gwu.edu (Ray 
Johnson):
> [Ray argues for a standard dictionary format that various spelling 
engines
> can access.]
> 
> Yes, using several dictionaries can be annoying, both in the amount of 
disk
> space wasted and in the subtle differences between dictionaries. My 
personal
> preference would be to ditch all my application supplied dictionaries and
> have every application use Spelling Coach Professional as its native
> spelling checker. But I suppose that's beside the point.

It's not beside the point at all, given System 7.0 or later.

> In System 7.0, Apple is providing a program-to-program communication 
(PPC)
> mechanism called AppleEvents. In addition, Apple is defining a set of 
> standard AppleEvents that every application is expected to understand. 
> I believe it is in everyone's best interest for Apple to define a set
> of standard AppleEvents that provide 
>   1) spell checking services
>   2) hyphenation services
>   3) word definition services
>   4) synonym and antonym services

I agree that these should be defined, but I'll say more about how later.

> For example, assume we have our favorite spelling checker engine running
> as a background process under MultiFinder.

Or somewhere else on the network entirely...

> We ask our current application
> (word processor, drawing program, or whatever) to verify the spelling of
> a word. The current app then posts the Verify Spelling AppleEvent with
> the questionable word in the message. Our spelling engine receives the
> AppleEvent and, if the word is spelled correctly, sends an AppleEvent
> back to the current app saying the word is OK; otherwise the spelling
> engine posts an AppleEvent containing a list of suggested words.

Yup, that's essentially how it works.

> I suppose something like this will evolve without Apple's guidance; but
> I imagine each dictionary vendor will define their own proprietary 
> set of AppleEvents and thus every application will have to support 
> multiple dictionary protocols in order to allow users to use their
> favorite spelling/hyphenation/etc. engine. For this reason, I strongly
> suggest Apple standardize these AppleEvents before System 7.0 is 
released.

Good news.  AppleEvents will be registered with us in much the same 
fashion as application creator signatures, and for much the same reason: 
to avoid precisely the kinds of collisions that you foresee.

Apple won't be defining all of the AppleEvents, of course; that's simply 
not possible.  We will, however, do our best to ensure that AppleEvents 
are created/supported in as organized and rational a fashion as possible.

__________________________________________________________________________
                                Paul Snively
                      Macintosh Developer Technical Support
                             Apple Computer, Inc.

chewy@apple.com

Just because I work for Apple Computer, Inc. doesn't mean that I believe 
what they believe, or vice-versa.
__________________________________________________________________________