New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SCDoc improvements: 5. Update scdoc.css - make SCDoc more eye-friendly on screen and on paper #6276
base: develop
Are you sure you want to change the base?
Conversation
What do you mean by readable here? Because I'd interpret this to mean more accessible both in design and language. However this PR reduces the contrast between the background and the text, a key component of how readable the text is (from an accessibility perspective). Also, the original is more print friendly because it doesn't have the grey scale box covering the page, saving ink and improving contrast. From a readable/accessible perspective I can understand the font change, but the font should be installed locally and not require an internet connection to download. Also, something like Atkinson Hyperlegible which was commissioned by the Braille institute and designed for readers with vision impairment, would be a more reasonable choice — although I haven't seen any actual research backing up their claims. In the context of a learning resource for a course, I'd interpret readability as being brief, concise and linking to tangential topics for further study. Many of the help files are quite long, contain a lot of technical information that isn't strictly relevant to the topic, and their code examples are often verbose. In my opinion, changing this would improve readability more than any design change. — I do prefer looking at your version (its prettier and softer on the eyes), I just don't think its more readable. |
- H1 Line height - H2 border length can be also used to guide the width of the text on printed paper.
Before I answer the details, my mind is ready to change the background back to white and remove the grey box. Frankly, these are the things I considered removing from this PR, but for some reason could not. (oh, very contradictory ....). Changing other details is no problem either.
Glad you like my version.
As far as I know, the factors that affect the readability of books and screens are as follows
In the
So the word 'readable' seems to be the best word for this PR at the moment. I will explain from the simplest to the most complex. If you find a better way to express my explanation, I would change the title of this PR according to your suggestion.
I added it because
However, it is not environmentally friendly and wastes ink or toner. It is a big problem.
I added the background colour #eaeaea (whisper) because the white background was too bright and blinding. It hurt my eyes.
The
The
For offline installation, these fonts can be bundled, but I do not think it would be allowed due to the dependencies. However, an instruction can be included as follows: When a user opens the SuperCollider help document without an internet connection, please download and install the following fonts from the Google Font Distribution website: However, I am now confused by your mention of an internet connection: Does everyone need an internet connection to download SuperCollider? Of course, you can save it to a removable drive and use that drive. Then the same applies to these fonts.
Thank you for your advice on making learning materials. Since I have almost the same view as you, I will try my best to make learning materials with your tips in mind. Do you still have doubts about the term 'readability'? Could 'eye-friendly' be better than 'readable'? (Edited: I changed the title and the corresponding parts in the opening post of the PR.) |
I think for visually impaired persons, sometimes high-contrast helps. |
@smoge Honestly, for me the eye-friendly colour changes according to circumstances and age (😢). It would be ideal if the colour of the help document could be controlled by preference. There are already three PRs by @capital-G, but it is not approved yet. The most recent version is #6095. |
I created a patch of his PR, so it's easy to apply https://gist.github.com/smoge/57b1fd5375e5cd922757fa716c54c0e1 |
@smoge |
`td.argumentname` width will automatically be adjusted according to the length of the argument name.
In my opinion, the approach taken in this pr, of hard coding and changing the values for everyone, is wrong, simply because you will never reach a consensus over what is readable or pleasing. |
#6095 is about setting the colour of the SCDoc according to SC-IDE's preferences. This PR covers the following:
etc.
Yes, you are right, I can never reach a consensus on what is readable or pleasing. But it has improved: https://github.com/supercollider/supercollider/pulls?q=scdoc.css+author%3A%40me+is%3Aclosed There is also a publishing standard. I am not an expert in digital publishing, but I have worked for conferences and journals for several years, and have had meetings with publication designers, so I have some feedback on fonts, leading, and so on. A lot of the details of this PR reflect my experience. So I would say that I will never reach a consensus on what is readable or pleasing to everyone, but many users will be more satisfied with the change in this PR. You also wrote
Could you compare other examples? As you can see above, only with this PR are some displays still not optimal, but with other previous PRs (#6260, #6263, #6265, #6266) SCDoc will have almost the same productivity as LaTeX or other code-based professional publishing tools. As far as I know, Martin Neukom's 'Signals, Systems and Sound Synthesis' was first written chapter by chapter in Mathematica, and later combined. Please have a look at the PDFs below to compare the differences. The result of using this PR's SCDoc.css is much better: |
@prko gotcha! So if we remove all changes to colour from this PR, that leaves three things, print support, layout changes, and font. Personally, I think print support is a no-go because it would imply that supercollider document supports being printed, meaning all future changes to the docs would have to consider their implication for printed media — given the size of this project and the number of developers, this doesn't seem sustainable at the moment. Perhaps if you had support from several people this could change? but having an little patch that can be applied to the css when you need to print might be sufficient? The layout changes sound like a good idea, but need to be in their own PR, you'd also need to reach some consensus on that as I don't think a single person should have the definitive say on what is quite as large change — literal every user will see this. Perhaps make the PR then post on the forum with some before and after screen shots, like you've been doing, but just for the layout, explicitly asking for opinions, you could also make a poll over on scsynth to make it quicker for people to respond. I think the font change should be optional and perhaps a setting inside of scide, rather than an opinionated hard coded value, as I for one like my system font. This would also make changing the font for print a manual choice, rather than an enforced decision. I'm sure others will have different opinions, but the layout changes with evidence of community support would be the only things I'd feel comfortable reviewing. |
@JordanHendersonMusic Some users left comments on MathJax, but not on other things. However, in my previous attempt, which I linked in my last post in this PR, there are some responses. There may be other responses to the current PR. Um... I think it would not be bad if I (wait a few more weeks and then) change the title of this PR as follows SCDoc improvements: 5. Update scdoc.css for better layout, font and printing support. Then after writing with a new post linked to a google form, I will change thread #2 in the forum entitled Is the SC Help document easy on the eyes (font, line and paragraph spacing, tables, punctuation, etc.)? to the following title [Poll] SCD help document layout, font, print support What do you think? |
Sounds like a good idea! But I'd:
You might consider using a GitHub discussion for these big changes in future, it might be a nice half way between the formal review and the completely open forum of scsynth (just an idea though)? You can submit the prs as drafts, but host the wider conversation in a discussion. There's also the RFC, which, if you really wanted to pursue adding explicit print support, might be the way to go. |
Thank you so much! I will do so, and will also think about the RFC. |
codeblock line-height change
Change vertical spacing As I use more complex layouts, the vertical spacing should be changed for the best rendering result.
Purpose and Motivation
I used to teach SC to composers and musicians using only SCD files. Now I use SCDoc as a teaching resource for my Digital Sound Production course for non-musicians (mixed with different majors). Some of my students have asked me to improve the readability of SCDoc, so I have been trying to make SCDoc more readable, and I think it is almost done.
This PR makes the SCnhelp files more readable and print friendly [edited should be: eye-friendly on paper]
. I attach the longest help document in my SuperCollider installation (including some quarks):
'Buffer Granulation' in miSCellaneous Quark by @dkmayer.
Buffer Granulation _ SuperCollider 3.14.0-dev Help _ with current css.pdf
Buffer Granulation _ SuperCollider 3.14.0-dev Help _ with new css.pdf
Buffer Granulation _ SuperCollider 3.14.0-dev Help _ with new CSS (without background).pdf
I hope some of the developers here have time to compare
Strictly speaking, I think all four of my previous related PRs
should be merged to make SCDoc ideal, but I think none of them seem to be of interest to developers. Only MathJax seems to have some interest, but I think it might not be so easy to get approved either.
I hope that at least this PR can be approved for merging!
Types of changes
To-do list