Possibly silly text/gemini spec suggestion: Frames
InvisibleUp
invis at park-city.club
Fri May 29 02:33:44 BST 2020
I had an idea for a new line type for the text/gemini document type.I'm
not sure how attached I am to it, or how well it would be received,but I
figure it would at least be worth mentioning here.
"Frames" are a way to create collapsible "sections" of a Gemini
document. In graphical browsers I imagine these would be arranged
horizontally, but they would be perfectly readable vertically as well.
Proposed syntax:
||| denotes the start or end of a frame
| (or any non-'|' characters after the first '|') denotes a new frame
section
--- denotes a vertical/same section division in a frame section
A very good example of this would be a navigation bar. For example,
# Page Title
|||||||||||||||||
=> ../ Back
=> page1/ Page 1
=> page2/ Page 2
=> page3/ Page 3
| | | | | | | | |
## Article Title
2020-05-28
-----------------
Article contents
...
|||||||||||||||||
Footer text
This is perfectly readable on a dumb terminal display, but on a TUI/GUI
browserit may look something like this:
# Page Title
-----------------------------
=> Back | ## Article Title
=> Page 1 | 2020-05-28
=> Page 2 |------------------
=> Page 3 | Article contents
| ...
-----------------------------
Footer text
With this example, it may be a better idea to place the links at the
*end*of the document, resulting in a right sidebar. This keeps the
navigation fromencroaching onto the document contents in a vertical
view. Left sidebars should
be short, sweet, and simple.
The user should be able to collapse the navigation component, if they
choose.They may also choose to display it vertically. Perhaps frame
sections consistingsolely of links could also display the links in a
line, at the client'sdiscretion.
This could also be used inline in a standard document, for figures w/
captiontext, poetry next to ASCII art w/ alt-text, etc.
Note that you cannot nest a frame within another frame. This vastly
simplifiesthe syntax and implementation, as well as discouraging future
extensions.
Another idea for layout:
|||
# Article Title
2020-05-28
|
=> ../ All
=> next/ Next
=> prev/ Previous
|||
Article contents
...
which could be displayed as
# Article Title | => All
2020-05-28 | => Next
| => Previous
------------------------------
Article contents
...
I kinda like it, but I can definitely see the arguments against it. Let
me know what you think of this.
-- InvisibleUp <gemini://park-city.club/~invis>
-- Email domain proudly hosted at https://migadu.com
More information about the Gemini
mailing list