Helium314 / HeliBoard

Customizable and privacy-conscious open-source keyboard
Apache License 2.0
2.24k stars 84 forks source link

Customizable font? #494

Open e-t-l opened 7 months ago

e-t-l commented 7 months ago

Is your feature request related to a problem? Please describe.

The Holo theme has a thicker typeface than the other themes and I dislike it. **Describe the solution you'd like** A selection of fonts. I was originally thinking users could install custom fonts from OTF and TTF files, but after cursory research I think fonts have to be hardcoded assets. **Use case** Improves UX. Can also be considered an accessibility feature. **Describe alternatives you've considered** being sad with the holo theme **Additional context**
Helium314 commented 7 months ago

I'm not really sure what you actually want. You don't like the holo typeface, but propose using a different font?

Most of the "label flags" controlling the typeface are currently hardcoded, but it should be possible to make them customizable (technically they are already customizable, but only for each letter individually when using a json layout).

e-t-l commented 7 months ago

Sorry I should have explained better. Yes, I am suggesting the ability to customize the typeface used for keyboard characters. I was responding perhaps too literally to "is the feature related to a problem?" where the problem that I, personally, am experiencing is that the typeface for the Holo theme is different than for the other two themes. But in general, this feature request is just for users to have the ability to choose the typeface used.

(To be clear, this would only affect the typeface used for the characterset displayed on the keyboard itself. I am not suggesting that a keyboard app somehow manipulate the font of the actual typed text!)

technically they are already customizable, but only for each letter individually when using a json layout

I have scoured the app settings as well as the github documentation and I can't figure out how to use or customize a json layout. Maybe I just missed something. If the typeface of the lettering for individual keys on the keyboard is customizable, that would suffice for my use case.

@uranusek was there something you wanted to contribute?

Helium314 commented 6 months ago

I have scoured the app settings as well as the github documentation and I can't figure out how to use or customize a json layout. Maybe I just missed something. If the typeface of the lettering for individual keys on the keyboard is customizable, that would suffice for my use case.

The best there is is layouts.md. The json format is taken from FlorisBoard, and support for labelFlags is added. As far as I remember you need to use the fontNormal flag.

Letting the user choose the typeface will likely lead to further issues, as some layouts also provide labelFlags affecting the the typeface.

Uranusek commented 6 months ago

@e-t-l I thought it would be a bad idea because people would add some weird fonts that overload the keyboard and then report something like "this keyboard is crap, it keeps crashing". But I changed my mind.

montchr commented 4 months ago

I am using the Material theme and would also like to be able to customize the font weight. It feels too heavy to my eyes.