holzschu / a-shell

A terminal for iOS, with multiple windows
BSD 3-Clause "New" or "Revised" License
2.57k stars 115 forks source link

Bundle terminal fonts with a-shell itself? #782

Open 4rc0s opened 3 months ago

4rc0s commented 3 months ago

I have a managed iPad that I can't install profiles on, so installers like iFont won't be an option. Would it be possible to bundle a couple of additional terminal fonts with a-shell itself? Eg, as explained here: https://developer.apple.com/documentation/uikit/text_display_and_fonts/adding_a_custom_font_to_your_app

If so, I'd vote for the Nerdfont variants of JetBrains Mono and Ubuntu Monospace. Thanks!

Originally posted by @4rc0s in https://github.com/holzschu/a-shell/issues/525#issuecomment-2117824725

holzschu commented 3 months ago

Hi, that's a good question, and I fully understand your need here. I'll need to check how it's done and the licensing issues. I remember trying that a long time ago, and things didn't work as explained in Apple's documentation (it rarely does), because the WkWebView I use introduces an extra layer of indirection.

holzschu commented 2 months ago

Hi, reporting after a good day of trying and failing: I can embed the fonts in the app, they do appear in the font picker and I can select them. It stops here: the terminal window will not display the fonts embedded inside the app, no matter what I try. It will only use the fonts installed by the system, and it won't tell me why (which is also annoying).

I'll revisit the issue if we move away from WkWebView rendering, since that will change the situation.

4rc0s commented 2 months ago

Thanks for taking a crack at this! How frustrating that WkWebView rendering won't pick up the application fonts. Really appreciate your work on this fun but challenging platform.

rcarmo commented 1 month ago

I'd really like Fira Code Nerd... and yes, moving away from WkWebView would be nice too, the caret/cursor thing drives me up the wall and I've found the vim in Blink Shell a lot less distracting due to that.