๐พ Archived View for bbs.geminispace.org โบ u โบ faildev_mode โบ 4890 captured on 2023-09-28 at 19:25:17. Gemini links have been rewritten to link to archived content
โฌ ๏ธ Previous capture (2023-09-08)
โก๏ธ Next capture (2023-11-04)
-=-=-=-=-=-=-
Why don't just empty query? Like this:
=> /cgi-bin/foo.cgi? This is input => /cgi-bin/foo.cgi And this is not
By a convention these links are equal, but for the client this can be a hint that the input is expected. No potential for extending and it's backward-compatible. Servers should respond with 10 code if empty query or no query has been sent.
2023-08-29 ยท 4 weeks ago
@mozz I can't see anything like this HINT mechanism taking off, it's too ugly for human readers.
Of course "INPUT:" still has the same problem. Rather than a speech bubble or other fancy emoji character, how about just ">"? It has a long history as indicating a prompt for user input, and it has the advantage of being an ASCII character. It isn't unambiguous -- but I think that's too much to hope for really. What ever character we settled on, someone would innocently use it for some other purpose while being unaware o f our convention. So in the end, I don't think this should go beyond being an informal convention meant to indicate to the human user that input will probably be expected, rather than something to be understood directly by the client.
So in short, here's all this proposal comes to:
@faildev_mode There are two problems with that -- the theoretical problem that these are two representations of the same URI, so behaviour shouldn't depend on which is used, and the more practical problem that the empty string is not infrequently a valid response to an input request, so then it can't be used as the value which will elicit a 10 response.
@faildev_mode
Many popular URL parsing libraries will throw out a trailing "?" if there's no query string after it (whether or not that's "correct" is a different discussion, but implementation trumps specification). So it would be an annoying footgun for gemini software developers to work around. Otherwise I agree, using a bare "?" is the obvious solution.
โ https://github.com/psf/requests/issues/2912#issuecomment-161822824
the more practical problem that the empty string is not infrequently a valid response to an input request, so then it can't be used as the value which will elicit a 10 response.
I have never seen anyone do this before, any examples?
@mozz The only example which comes to mind is my own "gemrepl", which wraps an arbitrary line-based program (e.g. ed) for which empty lines could well be meaningful.
@mozz
I have never seen anyone do this before, any examples?
Bubble uses an empty query string to reset/clear some values in the Settings, for example the certificate password.
The extra dashes added into the links in preformatted blocks above have now been fixed.
2023-08-30 ยท 4 weeks ago
Honestly, this feels best handled by the client:
1. They can have a setting like what @skyjake is suggesting for Lagrange and spellbinding. Basically: "This URL needs input, so always proactively prompt me for it"
2. Support Spartan-style link lines. Kind of like how some capsuel games offer a "ANSI mode" or "plain text mode", they could offer a "Spartan link" mode
2023-09-15 ยท 13 days ago
Although adding to the gemini spec would break handling of new content in clients which had not been updated to support it... a 2nd link markup of ?> or =? to signifying a link expecting data from a prompt seems reasonable. Easy to add to content, no scope for Link markup creep or add further checks to URL handling. Adding support would be a minimal patch for existing clients - to support the links with existing behaviour would just be an additional case match with fallthrough to the exiating code in C. Proper support shouldn't be much more work unless I'm missing something. It would also allow advanced clients to add support for inline text entry + 'submit' button should they want to.
2023-09-18 ยท 10 days ago
Input indicator โ I'm thinking again about something which has come up a few times before, which is how to deal with the annoyance that requesting input on gemini involves two requests -- the first to get a 10 response with a prompt, and the second for the actual input. The first is often not really necessary, and could be eliminated if there were some way to signal to the client that a link will expect user input. That extra request is wasteful and can be genuinely annoying -- I was prompted...