Gemtext Experimental Update


I am very excited to try the new experimental mock-up draft update to gemtext! This adds new features and expands old ones to make the markup language more usable. It is of course very early in development, but quite usable as is.


To use it, simply rename your file extensions from `.gmi` (gemini) to `.md` (mock-up draft). This hints to browsers to unlock the proposed features.


Not every Gemini browser has implemented these experimental features. But that's fine because everyone uses Lagrange anyways.


Make sure to let the devs know how much you like these features on the mailing list!


Feature Changes


Some features have been tweaked to work differently than they did before, and a few new features added.



Links are now always inline links. They're written like this.


[displayed text](//example.com)

You write the text you want displayed inside square brackets, then the link in the following parenthesis. It can go anywhere in a text.


To do the old single line link style, place the link in a list like so.


* [Example Text](example.com)

I like this change, since it makes writing more flexible and links easily greppable. It has always been so awkward having to extract a link from the text and make a redundant wording after the paragraph. This will help readers understand the placement between links and words much more easily.


Headers


Headers can now go up to 6 levels! That's twice the information density!


Vertical Whitespace


Vertical whitespace collapses automatically. You weren't using it anyways. The markup designers and a loud online vocal minority knows what's better for your writing than you do.


Currently there's a workaround where if you alternate ending a line with two and four spaces, it tricks the algorithm into thinking it already ended a line and leaving a blank line in it's place.

Sweet!


Inline Formatting


Yesss, it's here! Real, semantic inline formatting!


The implementation is a little strange though. You can use either * or _ characters to wrap a word. Once makes the text emphasises (italics), twice gives it strong emphasis (bold), and three times to combine both.


*emphasis*
_emphasis_
**strong emphasis**
__strong emphasis__
***both***
_**both**_
*__both__*

Unfortunately trying to combine weak and strong emphasis using three underlines does not work as expected. For now, use one of the other styles.


You can also mark inline text as monospace by wrapping it in graves (`). Fenced code blocks still work.


This feature alone is enough to move to the mock-up draft as the new standard!


Lists (currently broken)


Lists are supposed to allow adding depth by indenting an element, but the code for this is too complicated. No one has ever been able to figure out indentation. Perhaps if there was some way to have all the information about the line fit into the left-leading characters.


* one
	* two
		* three

Tables? (not implemented)


It's possible a future version might even allow for creating tables. This has been one of the top requested features by the community. Only time will tell.


Closing Thoughts


The new changes in the mock-up draft introduce a lot of feature improvements for writers! It's still quite clean, light, and readable to anyone looking at the plain source. It's nice that Solderpunk has begun listening to the community instead of focusing solely on their own preferences.


I will definitely be looking into using the `.md` format in the future for my own writing and look forward to seeing others around Gemini do so too! Happy April Fools!



/gemlog/