I'm trying to change the font family of the app itself (not the editor or rendered markdown). I've attempted to do this via userchrome.css, but unfortunately, it causes all the icons to disappear. Does anyone know a solution to change the font family without affecting the icons?
The Markdown icon is missing because it uses the .fab class. Icons under that class use another font that gets overridden by your wildcard selector (*). Add back the default CSS for .fab in userchrome.css:
Rendered Markdown is outside of the scope of userchrome.css and keeps its intended styling.
I may have to get back to you on setting the editor font or excluding the editor from the wildcard selector (*). Selectors like .CodeMirror * or *:not(.CodeMirror *) might not properly achieve the prior goals respectively.
I've done some testing, and the following more or less seems to work for me. The icons are preserved, and it's still possible to use a different font for the Code Mirror editor. It also doesn't affect the rendered view and the Rich Text editor.
Please keep in mind that with this code, you do need to set the Code Mirror editor font in the CSS, as doing it just inside Joplin won't have any effect.
I've played around with the code a bit more, and I've managed to tweak it so that you can still set editor font types in the Joplin settings. The font family set in the code below affects the app font only.