Live data from Hacker News

Myna: Monospace typeface designed for symbol-heavy programming languages

github.com

41–50 of 185 posts

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#43
post #34

I like it, it's very clean. Nice work! I like that it's relatively compact horizontally. If I had to nitpick, the curly braces look a bit too "wavy" for my taste, which doesn't quite match the hard angles on some other glyphs. My favorite monospace font for the past 10+ years has been Iosevka Term ss08. I've tried many others over the years, and Iosevka is just perfect IMO. Out of curiosity: what are the tools and th…

thanks for the feedback. about the braces please see another comment below. the issue of needlessly complicated braces has been raised quite a few times now. a variant could be considered if there is more interest.

this particular font is quite simple and doesn't contain any ligatures, etc. so most of the design is in Fontforge. i didn't start from scratch. it started out as a customised version of Source Code Pro (released as Hera and currently archived in my profile) but i borrowed many glyphs from other fonts and modified many others to the point it became a different font. you can open the .sfd file directly in Fontforge to edit and modify it yourself.

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#45
This, like many fonts, fails to handle vertical arrows:

  |    ^
  v    |
Note that the raised appearance of `^` exists for compatibility with typewriters that use the backspace key to use it as a circumflex accent over lowercase letters. This is doubly obsolete today (we have real combined characters and can use them on uppercase). This is one of those cases where the name originally used for the character in various standards is in conflict with the way people actually have come to use it.

The bottom of the independent caret should be lower, roughly symmetrical to the letter `v` (this is not traditionally a goal). The top should still reach the height of a capital letter, but the bottom should descend into the lowercase letter area - for many fonts, perhaps to the level of the horizontal part of a lowercase `e` (is there a typographical term for this?)? For fonts where the x-height is half of the cap-height, there might be no overlap with the lowercase letter, though it still doesn't need to worry about leaving space.

The bottom of the caret is, however, higher than the mathematical "and" sign ∧, which rests on the baseline (and usually does not reach full height) or the Greek capital lambda `Λ` which is full height.

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#46
post #44

I don't know why "->" should render as an arrow when we could just use an actual Unicode arrow. If need be, have macros for your editors that allow you to convert the "->" into an actual arrow.

Not all code editing sessions are created equal. I dare you to deal with Unicode symbols in a vim session over SSH with a 1 second RTT, for example :).

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#47
post #44

I don't know why "->" should render as an arrow when we could just use an actual Unicode arrow. If need be, have macros for your editors that allow you to convert the "->" into an actual arrow.

it is partially a matter of design and code philosophy. many like the simplicity of ASCII and consider ligatures distracting.

but more than preference there is matter of availability and consistency. Unicode is not available for all possible glyph combinations and many times what we see in Unicode looks quite ugly in monospace because of the width constraint.

ligatures are also not supported everywhere. that is one of the reason i designed this.

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#48
post #45

This, like many fonts, fails to handle vertical arrows: | ^ v | Note that the raised appearance of `^` exists for compatibility with typewriters that use the backspace key to use it as a circumflex accent over lowercase letters. This is doubly obsolete today (we have real combined characters and can use them on uppercase). This is one of those cases where the name originally used for the character in various standard…

Your point about the caret is interesting, but I'm a bit dubious about using them for vertical arrows. I don't think it would be practical to type this combination in one go, since the two symbols would be on two separate lines. For the upward arrow, are you suggesting caret-return-space-space-space-...-vertical bar?

Are there any programming languages that use vertical arrows? Do they appear on one line or two?

Re: Myna: Monospace typeface designed for symbol-heavy programming languages

#50
post #45

This, like many fonts, fails to handle vertical arrows: | ^ v | Note that the raised appearance of `^` exists for compatibility with typewriters that use the backspace key to use it as a circumflex accent over lowercase letters. This is doubly obsolete today (we have real combined characters and can use them on uppercase). This is one of those cases where the name originally used for the character in various standard…

thanks for pointing it out. as i mention below in a comment, there are bound to be many combinations which don't align (especially vertical ones). i would ideally tell you to invoke a feature request but i am not sure this esoteric combination could even be detected in a contextual alternate rule (which Myna doesn't support anyways for now).

beside if i may say so in my defense, the comparison is a bit unfair as a V (a full letter) is being compared to a caret (almost a superscript symbol). i have broken many typographical conventions but it won't make sense to break programmatic convention of the caret operator just for the alignment of the vertical arrows.

Post reply on HN