Cognitive aspects of navigation in gemini space

James Tomasino tomasino at lavabit.com
Sun May 17 14:16:05 BST 2020


On 5/17/20 11:42 AM, jan6 at tilde.ninja wrote:
> I'm not a fan of the ending part having text too,
> slightly harder parser, and noticeably harder to read for humans, 
> especially if there are several blocks back-to-back
> other than that, not too bad idea, I suppose

TLDR;

``` this is alt text / syntax descriptor
this should not be search by engines or read by screen readers by default
```

```
this has no alt text and should be searched by engines and read by
screen readers
```

--- The long version ---

I've been thinking of ways to keep it extremely simple. If the goals are:

- provide alt text for a block that may not be easily parsed by bots &
screen readers

- indicate which blocks should and should not be parsed

Then I think we can accomplish the goal with a single code fence suffix
that is either blank, indicating that the content CAN be parsed, or has
text, indicating that IS the alt text.

``` anything here is alt text
moo moo moo moo moo
```

```
This will be parsed because there's no fence suffix at the start.
```

That would be incredibly easy to parse and require zero effort from
clients that already exist since they can continue to just look at the
first three characters and ignore the rest. Search engines can read the
alt/descriptor and skip the rest of the block if it exits, or read the
contents if its blank. Easy all around.


The complication would come if you want that space to have another
purpose, such as defining the language for syntax highlighting on a code
block like we see in markdown.

```bash
#!/usr/bin/env bash
printf "moo moo moo moo moo\\n"
```

This would be interpreted for alt-text purposes as just "bash". First of
all, it would mean that search engines wouldn't parse code blocks which
may or may not be a bad thing.

It may actually work out great for accessible clients though. I don't
know of anyone making an accessible client YET, but if it were
structured this way the block, when hit, could indicate verbally that a
preformatted block had been reached and the alt/descriptor could be
read. A good accessible client might even inform the user how many lines
the block contains and offer some way to "page" through it bit by bit.

This sort of behavior would be nice to talk through with anyone working
on such a client, but beyond giving it some initial consideration I
don't see it as belonging in the gemini spec itself.



More information about the Gemini mailing list