From: kate_smith@next.com (Kate Smith)
Newsgroups: comp.sys.next.programmer
Subject: new NeXTanswer: Indexing and services
Keywords: nextanswer indexing services
Date: 14 Oct 92 00:07:07 GMT

Another soon to be released NeXTanswer.

Kate Smith
NeXT Developer Support

services indexing icons filters third party documents

Q:  My application creates its own documents.  How do I make sure that  
Digital Librarian can index these documents?

A:  In Release 3, the indexing code uses the new filter services to  
convert documents to ASCII before parsing them.  Therefore, if you install  
a filter service which converts your format to ASCII or RTF you will reap  
the benefits of being able to index your documents, as well as let others  
filter them for other uses.

See the NeXTanswer on services in 3.0 <<it doesn't have a number yet, it's  
the one I just posted>>, as well as the release notes for the AppKit and  
the Services chapter of the concepts manual for more information on  
registering filter services.


Q:  OK, but I also want to be able to include a mini-icon of my document  
type which the Librarian can display when it lists titles.

A:  Unfortunately, you can no longer do this.  The decision was made to  
break compatibility in 3.0 for third party supplied icons in Librarian.   
There is no way to supply icons for new file types.
 
Q:  What about description filters?  In 2.0 I could register a program  
that created an appropriate description for each file that was indexed.   
Now Librarian doesn't even display the description of the file anymore.

A:  Registering a filter with a return type of IXFileDescriptionPboardType  
will give you this same functionality.  In 3.0, Librarian only displays a  
description of a file if the index is built with the descriptions.  There  
is no UI for building an index with a description, but running ixbuild -g  
from the command line will build an index that stores the descriptions.

Let's say that you have a service for files with a .mine extension.  The  
service might look like this:
		ls ~/Library/Services/Mine.service
		mine-ascii*     mine-desc*      services

	where the text of services would be:

		Filter:
		Port: NXUNIXSTDIO
		Send Type: NXTypedFilenamePboardType:mine
		Return Type: IXFileDescriptionPboardType
		Executable: mine-desc
		
		Filter:
		Port: NXUNIXSTDIO
		Send Type: NXTypedFilenamePboardType:mine
		Return Type: NXAsciiPboardType
		Executable: mine-ascii

	and the two executables would take one argument, a filename.


Q:  My WriteNow, Frame or WordPerfect documents don't index anymore.   
What's wrong?

A:  The services aren't automatically registered by NeXT, but you can  
easily register the services yourself.

For WriteNow and Frame documents, place the following text in a file  
called ThirdPartyFilters.service in ~/Library/Services, or  
/LocalLibrary/Services.
	
		Filter:
		Port: NXUNIXSTDIO
		Send Type: NXTypedFilenamePboardType:wn
		Return Type: NXRTFPboardType
		Executable: /LocalApps/WriteNow.app/wn-rtf
		
		Filter:
		Port: NXUNIXSTDIO
		Send Type: NXTypedFilenamePboardType:frame
		Return Type: NXAsciiPboardType
		Executable: /LocalApps/FrameMaker.app/frame-ascii

Make sure that you correct the pathname of the filter if the application  
is not in /LocalApps.

You can add other filters for document types that have the same problem by  
adding additional similar paragraphs to the same file for each type.

For WordPerfect documents, it is better to get the new interim release of  
WordPerfect for NeXT dated 9/25/92 which is compatible with 3.0 (and 2.0).   
It registers the wp-ascii filter and fixes a few other bugs which surfaced  
after 3.0 was released.  Call WordPerfect at 1-800-451-5151 or   
801-225-5000.  It costs $8 payable by bank card or check.

QAxx

Valid for 3.0
Newsgroups: comp.sys.next.programmer