intel / intel-one-mono

Intel One Mono font repository
SIL Open Font License 1.1
9.23k stars 315 forks source link

Missing box drawing characters #4

Open galdor opened 1 year ago

galdor commented 1 year ago

It would be nice to have common box drawing characters. From the well known UTF-8 test file:

Box drawing alignment tests:                                          █
                                                                      ▉
  ╔══╦══╗  ┌──┬──┐  ╭──┬──╮  ╭──┬──╮  ┏━━┳━━┓  ┎┒┏┑   ╷  ╻ ┏┯┓ ┌┰┐    ▊ ╱╲╱╲╳╳╳
  ║┌─╨─┐║  │╔═╧═╗│  │╒═╪═╕│  │╓─╁─╖│  ┃┌─╂─┐┃  ┗╃╄┙  ╶┼╴╺╋╸┠┼┨ ┝╋┥    ▋ ╲╱╲╱╳╳╳
  ║│╲ ╱│║  │║   ║│  ││ │ ││  │║ ┃ ║│  ┃│ ╿ │┃  ┍╅╆┓   ╵  ╹ ┗┷┛ └┸┘    ▌ ╱╲╱╲╳╳╳
  ╠╡ ╳ ╞╣  ├╢   ╟┤  ├┼─┼─┼┤  ├╫─╂─╫┤  ┣┿╾┼╼┿┫  ┕┛┖┚     ┌┄┄┐ ╎ ┏┅┅┓ ┋ ▍ ╲╱╲╱╳╳╳
  ║│╱ ╲│║  │║   ║│  ││ │ ││  │║ ┃ ║│  ┃│ ╽ │┃  ░░▒▒▓▓██ ┊  ┆ ╎ ╏  ┇ ┋ ▎
  ║└─╥─┘║  │╚═╤═╝│  │╘═╪═╛│  │╙─╀─╜│  ┃└─╂─┘┃  ░░▒▒▓▓██ ┊  ┆ ╎ ╏  ┇ ┋ ▏
  ╚══╩══╝  └──┴──┘  ╰──┴──╯  ╰──┴──╯  ┗━━┻━━┛           └╌╌┘ ╎ ┗╍╍┛ ┋  ▁▂▃▄▅▆▇█

Note that web browsers does not display them correctly in GitHub due to a 1.45 line height. With a 1.0 line height, they are correctly aligned.

MatthewTurrini commented 1 year ago

Noted. Looking into this.

iisfaq commented 1 year ago

That would be nice - I use some of these box chatracters for comments in the my source. I use ascii flow to generate the boxes.

Amolith commented 11 months ago

I'd love to see this as well; I've just spent the last hour trying to debug exactly which font Emacs is falling back to for those unicode characters because IntelOne Mono doesn't have them.

Top is Emacs, bottom is vim in a terminal. Both of them are configured to use IntelOne Mono, but my terminal has box drawing characters built into it as a fallback for when the preferred font is missing them.

image

I'm still trying to figure out how to fix Emacs by specifying a different fallback font somewhere, but I think the ideal solution is for IntelOne Mono to include those characters directly.

EDIT: For those using Doom Emacs, section 4 of the :ui unicode docs describes how to set a fallback.

FredShallcrass commented 3 months ago

Hello box drawing character enthusiasts.

We are in the process of adding support for programming ligatures and box drawing characters to Intel One Mono. We are currently at a BETA stage which is a good time to get feedback on the character set and forms.

In this zip file is a beta build which you can install to try out the new character set. If you are trying out the ligatures, there are a few things to note:

Rendering – There are some rendering issues with overlapping glyphs in some of the programming ligatures. This will be addressed in the final build.

Feedback Timeline – In order to make sure your feedback is heard, please post any thoughts in this thread by the end of the week.

Calt Feature – In this beta build, the ligatures will be activated by default through the calt feature. This will ensure they are easy to test, but in the final build the ligatures will be accessed though stylistic sets in order to ensure those who do not use ligatures can continue to have them off by default.

Thank you for your time and thoughts!

Intel One Mono Programming Ligature BETA.zip

galdor commented 3 months ago

With the font files you posted in xterm (same result in Emacs):

intel-one-mono

There are tiny issues, the glyphes don't perfectly connect (maybe some hinting issue), but they very rarely do (MonoLisa is the best at it), but this is very good in general. I also suspect that the characters highlighted on this screen shot should be diagonally connected to form a larger cross; again, something a lot of typefaces get wrong.

FredShallcrass commented 3 months ago

Thank you for trying this out!

What operating system are you using? Do you have a non default line height set Emacs?

When I test the fonts in Emacs, the straight box glyphs align vertically without a gap.

The diagonal alignment is great feedback, thanks, I wasn't sure what the expected behaviour was here because as you note, a lot of fonts do not align these vertically. We will fix this.

galdor commented 3 months ago

The tiny spaces only appear in Xterm, not in Emacs. Not a big deal though, lots of fonts have this very problem, I suspect hinting subtleties.

As for diagonal alignment, most typefaces do not even provide the glyphs. Both PragmataPro and Berkeley Mono have the correct ones though.

Environment:

In Emacs:

emacs