Version: 4.1

5 "info.ss" File Format

 #lang setup/infotab

In each collection, a special module file "info.ss" provides general information about a collection for use by various tools. For example, an "info.ss" file specifies how to build the documentation for a collection, and it lists plug-in tools for DrScheme that the collection provides.

Although an "info.ss" file contains a module declaration, the declaration has a highly constrained form. It must match the following grammar of info-module:

  info-module

 

=

 

(module info intotab-mod-path

  (define id info-expr)

  ...)

 

 

 

 

 

  intotab-mod-path

 

=

 

(lib "infotab.ss" "setup")

 

 

|

 

setup/infotab

 

 

 

 

 

  info-expr

 

=

 

'datum

 

 

|

 

`datum

 

 

|

 

(info-primitive info-expr ...)

 

 

|

 

id

 

 

|

 

string

 

 

|

 

number

 

 

|

 

boolean

 

 

|

 

(string-constant identifier)

 

 

 

 

 

  info-primitive

 

=

 

cons

 

 

|

 

car

 

 

|

 

cdr

 

 

|

 

list

 

 

|

 

list*

 

 

|

 

reverse

 

 

|

 

append

 

 

|

 

string-append

 

 

|

 

path->string

 

 

|

 

build-path

 

 

|

 

collection-path

 

 

|

 

system-library-subpath

For example, the following declaration could be the "info.ss" library of the "help" collection. It contains definitions for three info tags, name, mzscheme-launcher-libraries, and mzscheme-launcher-names.

  #lang setup/infotab

  (define name "Help")

  (define mzscheme-launcher-libraries '("help.ss"))

  (define mzscheme-launcher-names     '("PLT Help"))

As illustrated in this example, an "info.ss" file can use #lang notation, but only with the setup/infotab language.

See also get-info from setup/getinfo.