SciNim / getting-started

Getting started with Nim for Scientific Computing
https://scinim.github.io/getting-started/
Creative Commons Zero v1.0 Universal
61 stars 6 forks source link

Improve github-pages #7

Closed Clonkk closed 3 years ago

Clonkk commented 3 years ago

To have a pretty tutorial we'd need the following features :

HugoGranstrom commented 3 years ago

Regarding the CSS, the main drawback of the default theme IMO is that it doesn't separate code and text clearly, so adding a different background to the code might be a good idea.

pietroppeter commented 3 years ago

Regarding the CSS, the main drawback of the default theme IMO is that it doesn't separate code and text clearly, so adding a different background to the code might be a good idea.

this I would say it is also a bug of nimib. originally water.css had a better background for code. when picking androidstudio for highlighting, this replaces the code background with a lighter one (you can easily verify this inspecting the page). I will have to make sure that default code background stays the one of water.css.

HugoGranstrom commented 3 years ago

I see, disabling it in the devtools does make it look better 🚀 Something I noticed when inspecting the CSS was that the output blocks didn't have any background color at all. I want to remember that last time I tried Nimib out it did have a background as well, but I may also misremeber 🤔

pietroppeter commented 3 years ago

no the output never had a background (in water.css). regarding the default styling of nimib it can certainly be improved and it will be improved (and a more visible output block is something I agree on also).

With respect to current default, I wanted to start with something that was minimal and would work out of the box. After trying out many of the no-class minimal css frameworks (here is nice page that collects many of them in a demo way), water.css was the only one that required absolutely no tweaking and would look good enough. I would definitely encourage us to tweak the css here and then next default might be able to incorporate some of the improvements that was done here or elsewhere.

HugoGranstrom commented 3 years ago

Okay, bad memory than :) Nice, and it doesn't seem to hard to do either, add a class and of we go.

Totally understandable, and it looks great in every other regard. I tested a few random ones on the page you linked and Water was the nicest of them all. Sounds like a plan! Is nbDoc.context["stylesheet"] the only way to modify styles at the moment? Ie to override one aspect of Water.css for example I will copy it and modify it?

pietroppeter commented 3 years ago

if you want to ovveride a single element of style I would add a head_other.mustache template with the content you need. I use this mechanism for all of my nimib projects to add plausible analytics (a very nice, open and privacy friendly alternative to google analytics). Actually on that subject if you want to add analytics to this project too, I can make it available through my account, plausible allows to make the analytics dahsboard public (see for example https://plausible.io/pietroppeter.github.io%2Fnimib) and I have a lot of views unused! :D

HugoGranstrom commented 3 years ago

if you want to ovveride a single element of style I would add a head_other.mustache template with the content you need.

Oh that seems like exactly what I'm looking for, thanks 😃 I see the partial called left as well in the body. I guess that would be the place to put our Table of Content. Would it be sensible for us to generate a TOC.mustache when doing nimble genbook and just having it included in every page? But we may have to loop over all files twice because every file needs TOC.mustache when compiling, right? I feel like I'm bombarding you with questions now 😅

Actually on that subject if you want to add analytics to this project too, I can make it available through my account, plausible allows to make the analytics dahsboard public (see for example plausible.io/pietroppeter.github.io%2Fnimib) and I have a lot of views unused! :D

If you would like to I'm sure everyone would be very grateful! :D And of course if you in the future for whatever reason need to cancel your Plausible subscription just tell us and we'll switch it out 😄 I'm having something similar for my personal site called GoatClicker which also should be privacy and GDPR friendly, plus they have a free plan for non-commercials. But they don't seem to have public dashboards so that's definitely a plus for Plausible. Once again, we would be very thankful for your generosity. :D

pietroppeter commented 3 years ago

Would it be sensible for us to generate a TOC.mustache when doing nimble genbook and just having it included in every page? But we may have to loop over all files twice because every file needs TOC.mustache when compiling, right?

yes, that is a good option. you could generate a toc.mustache first and then when you generate the pages every page will take the generated toc.mustache, so probably you would not need to have a double pass over files (but there might be gotchas there).

HugoGranstrom commented 3 years ago

I'll try it out then :) Not that it matters but by two passes I meant that to create toc.mustache we have to pass through all the files once, and then we have to pass over all files again to generate the pages but as I said it doesn't matter. As long as it works, it work ;)

HugoGranstrom commented 3 years ago

I guess the next step when we get the general layout fixed is to make the TOC reflect the folder structure so that files in the same folder are clumped together.

Clonkk commented 3 years ago

All of these are implemented in the current Nimibook