[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[gopher] Proposal for a gopher++ TITLE resource




A proposal for a method to include titles in gopher++ menus
===========================================================

1. The problem

Gopher0 (RFC 1436) menus have no titles. When one is browsing around the gopherspace this make no difference, but it is a big problem for bookmarking and for automated crawlers like Veronica-2.


2. Gopher++ TITLE resource definition

A TITLE resource in a gopher++ menu is defined as follows:

   type      - "i"         (without quotes)
   name      - the actual text of the title
   selector  - "TITLE"     (without quotes)
   host,port - dummy values

A TITLE resource is identical to a regular info resource, only the selector is set to a specific string, "TITLE".

An example of a TITLE resource:
iTitle for this Gopher resource<TAB>TITLE<TAB>dummy.host<TAB>0


3. Conforming client requirements

Conforming clients will use the first info resource with the word "TITLE" in the selector as the title of the menu. All following TITLE resources should be ignored.

Non-conforming clients will see a normal info resource and present it as normal informational text. This provides near-perfect backwards compatibility.


4. Conforming server requirements

Conforming server may include a TITLE resource as the first line of any menu it provides to the client. A server should not send more than one TITLE resource as a conforming client will ignore all but the first one.


5. Compatibility

The TITLE resource described here should be fully backwards compatible with both old gopher servers and clients.

If an non-conforming server supports gophermaps, it's possible for an author to include TITLE resources even if the server doesn't specifically support them.

If a non-conforming client receives a TITLE resouce, it will simply render it as informational text. As the TITLE should be on the first line of any menu it will look like a title to the user even if the client doesn't specifically render it as such.


6. Example code

The Gophernicus Server version 0.5-beta (and later) automatically inserts TITLE resources for all menus where a gophermap doesn't exist. There is also a patch for the NSCA Mosaic 2.7ck8 gopher client which adds support for parsing & rendering the TITLE resources.

gopher://gophernicus.org/1/software/gophernicus/server/
gopher://gophernicus.org/1/software/patches/gopher++/







_______________________________________________
Gopher-Project mailing list
Gopher-Project@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/gopher-project




Reply to: