💾 Archived View for gemini.conman.org › gRFC › 0001 captured on 2020-11-07 at 00:45:18. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2020-09-24)

-=-=-=-=-=-=-

Subject: MIME type and parameters for Gemini Index Files

From: Sean Conner <sean@conman.org>

Date: Thu, 1 Aug 2019

Content-Type: text/gemini

Status: PROPOSED

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",

"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and

"OPTIONAL" in this document are to be interpreted as described in BCP 14

[RFC2119] [RFC8174] when, and only when, they appear in all capitals, as

shown here.

The Gemini protocol defines one new MIME type, "text/gemini". It is a plain

text format that includes a mechanism for linking to other documents. The

format is largely line-based format, described in [SPEC-SPEC]. It is there

that the MIME type was first defined. This document refines the

specification of the MIME type a bit further.

It is RECOMMENDED that all Gemini index files be encooded in UTF-8

[RFC2270]. For the occasions that cannot be done, a charset parameter

MUST be included to indicate the character encoding of the document:

text/gemini; charset=ISO-8859-1

Since the Gemini index file is intended to have embedded links to other

documents, the links themselves are limited to their own lines to ease

parsing but other typographical concerns such as formatting and wrapping of

text is currently unaddressed. To help authors express formatting intent,

the parameters from [RFC3676] are also defined for the MIME type

"text/gemini". The defined values for the "format" parameter are:

fixed The text should be displayed as is.

flowed The text can be reflowed to the width of the screen,

subject to [RFC3676] and one addtional caveat mentioned

below.

The default value for the "format" parameter is "fixed", to remain

compatible with existing documents. Also, in addition to the interpretation

of flowed text (section 4.1 of [RFC3676]) is added in that any line starting

with a "=>" (ASCII Equals Sign ASCII Greater-than sign) is a link and thus

semantically is a new line even in flowed text. A client MAY wrap the user

visible portion of the link if it exceeds the dimenions of the display.

The parameter "delsp" is discussed in [RFC3676] and will not be discussed

here, other than to say the default value for this is "no" (most documents

will not need that parameter).

References:

[RFC2119]

[RFC2270]

[RFC3676]

[RFC8174]

[SPEC-SPEC]