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 document on services in 3.0 (../AppKit/installing_new_services.rtf), 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 Release 2 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 provides 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 user interface 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:

    myhost> 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 NEXTSTEP, 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.

QA875

Valid for 3.0



Stone Design's Create(tm)
2005-09-03 22:21:39 -0500