Nixpkgs manual feedback request

Hi, all.

I restarted working on my version of the Nixpkgs manual that renders CommonMark directly to HTML using my project mmdoc instead of how it currently goes through Pandoc and Docbook.

It currently renders the manual on my computer in about 2 seconds, outputting both single page, multi-page versions. mmdoc is written in C with minimal dependencies to keep the closure size down if we were to use it in the NixOS manual.

I’d appreciate it if you could look at the latest version of the multi-page manual and reply to this post with any encouragement, usability feedback, and bug reports!

Thanks,
Ryan Mulligan

8 Likes

I appreciate your work.

Tried on a phone. Layout in portrait unusable. In landscape suboptimal.

Keep it up!


1 Like

Thanks for the feedback.

What phone is it and what browser? On my phone, it defaults to not showing the sidebar (because the screen is small). Is that what happened for you? What do you want to happen when you have the sidebar open?

This happens to me on Firefox mobile (fennec) too, and is especially annoying when I have JS disabled for the page, because the menu button won’t work to hide the sidebar (which is expected, losing half the screen due to that maybe less so).

I’ve seen this on a Samsung S8 and a Google pixel 6.

Ideally the sidebar would be collapsed by default, because if I open a page on my phone I probably would rather read it than try to find something else in the sidebar, at least initially. If I must, flipping on JS and opening the sidebar isn’t terribly difficult, but it gets in the way at first.

It affects the nix docs as well. It’s a common thing for various doc sites, I believe this is default behavior for bootstrap, just usually its menus come from the top down, where this is much more clearly desirable behavior. But not when it’s repurposed for a sidebar :slight_smile:

Edit: Ah, enabling JS fixes it. I knew there was a reason; could a <noscript> with some CSS fix this reasonably? Even display: none; on the sidebar is probbaly ok, since there’s no way to open it without JS, and that’s understood by someone disabling it. Wish the W3C guys did something about navigation requiring JS one day, so much wasted bandwidth and processing power…

1 Like

Hi Ryan,

This is awesome!

I’ve found a broken link to invalidateFetcherByDrvHash here.
mmdoc did figure out that the fragment leads to a different page, but it seems to get the page wrong.

I suppose you have an index of which ids are on which page to achieve this. Would it be possible to add a bit of JS on the root page to redirect to the right page for any fragment?
That way we can switch to multi-page docs without breaking many many links out there on the web.

2 Likes

It’d also be nice for the headers to link to themselves, so it’s easy to copy a link to a specific section.

1 Like

Firefox on Android OnePlus 6.

Unfortunately non of the navigational controls seem to work on Chrome on Pixel 6 as they seem to render behind the page content

1 Like

I see the same problem (overlapping text, non-functional controls) in Safari on iOS 15.3.1.

1 Like

The text wrapping can sometimes be unpleasant to read. For example, I have

Notice the anormally wide space between “Note:” and “cataclysm-dda”. I didn’t had those in the original manual, which use an align to left

1 Like

I think thread make me think… I dislike smart phones, and dislike too much javascript/html/css

As Tim Berners-Lee said, a engineer after my own name said

‘hyper text markup language would be a good markup language , if there was a browser on the planet that could display it correctly’. :wink:

it’s good to see thing’s have not change, makes me feel optimist for the future (where i am from).