[tech] trailing '?' for input (was: entry field in gemtext)

mbays mbays at sdf.org
Fri Sep 10 16:44:40 BST 2021


* Thursday, 2021-09-09 at 09:59 -0400 - Michael Lazar <lazar.michael22 at gmail.com>:

>[spartan]
>    =: /link Enter your input
>
>I honestly think this is a flat-out improvement over gemini's "10
>INPUT" status (and I rarely say that). It avoids an extra round trip,
>allows for better client UX, and is probably more intuitive.

We could actually get something similar in gemini by adopting the 
following convention: a link with a gemini uri ending in a bare '?' 
should have the query component filled in by the user. So following 
a link
```
=> /link? Enter your input
```
in an interactive client would prompt the user for input *before* making 
a request to the server.

Pros:
* Avoids a round-trip.
* Clients could render such links differently, e.g. with an inline text 
box.
* Doesn't break clients who ignore the convention, as long as the server 
returns 10 to a request with empty query.

Cons:
* It's surprising; doesn't contradict the gemini spec, but impossible 
to guess from it.
* It's arguably an abuse of uris, since it's adding new semantics to an 
uri beyond its meaning as a resource identifier.
* Because of the need to return 10 on an empty query for compatibility, 
there's no way to represent actually empty input.
* It's not impossible that such an uri could have some specific 
meaning on some server. However, I think this is unlikely; certainly 
every CGI implementation I've seen won't differentiate between "/link" 
and "/link?". But technically they are different URIs which could point 
to different resources.


Any thoughts? I'm not sure myself whether this is a good idea, but 
cutting down on that unnecessary round trip seems very appealing.

Anyone know of anything this would break? Is adding such additional 
semantics to uris a route to extensibility hell?

Regarding the "empty input" problem: the neatest solution would be to 
always terminate a user input query component with a newline. But it's 
probably too late to introduce that as a convention.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20210910/fca4bc5f/attachment.sig>


More information about the Gemini mailing list