Web browsers have a bad habit of going to the server whenever anything but a hash changes (example.com#hash). Hashes are interpreted as scrolling to an anchor tag with a matching name:
<a name='hash'>...</a>
In Elm, we've got to keep the same base URL, and search string, or the server will restart our code, which makes for a startup transient, especially if the caches aren't fresh. So I'll address pages with just hash changes:
https://Xossbow.com#about
And, in order to ALSO use the browser's name scrolling feature, the hashes can have an additional dotted component:
https://Xossbow.com#docs.Settings
This will require another Markdown extension to automatically generate named links for headings, and to be able to specify your own named links, with a way for user-code to add a wrapper around the tags that are automatically generated, so that Xossbow can change the output for:
Web browsers have a bad habit of going to the server whenever anything but a hash changes (example.com#hash). Hashes are interpreted as scrolling to an anchor tag with a matching
name
:In Elm, we've got to keep the same base URL, and search string, or the server will restart our code, which makes for a startup transient, especially if the caches aren't fresh. So I'll address pages with just hash changes:
And, in order to ALSO use the browser's name scrolling feature, the hashes can have an additional dotted component:
This will require another Markdown extension to automatically generate named links for headings, and to be able to specify your own named links, with a way for user-code to add a wrapper around the tags that are automatically generated, so that Xossbow can change the output for:
Which would normally generate:
to: