5 ms·
Show HN: Z80 Sans
- hyperhello 2y ago"A recursive descent parser is used to generate all possible glyphs, which helps with evaluating expressions in encodings (e.g. SET b,(IX+o) takes a bit and a displacement, encoded as expression DD CB o C6+8*b). These encodings were then expanded to all possible values that operands can take, before finally associating 1 or more hexadecimal bytes to each disassembly glyph required to render an expanded instruction." That's just evil! Great job!
- 1GZ0 2y agoEvery day I'm amazed at what OpenType fonts can do on their own. Material Design icons font, fonts with built-in syntax highlighting and now this.
- tambourine_man 2y agoMakes you think if they’re perhaps too powerful
- rbanffy 2y agoIt definitely feels like putting functionality in the wrong places.
- Brian_K_White 2y agoOnly if you can show that no normal language needs it.
- rbanffy 2y agoCertainly there isn’t any natural human language that needs disassembling Z80 binary code. Yet.
- Brian_K_White 2y agoYou said "putting functionality in the wrong places". The font system does not have any such functionality as z80 disassembly. It has generic functionality for generating glyphs. If there are any normal human written languages that benefit from the functionality to generate modified glyphs dynamically based on content and context rules, then the functionality is not misplaced.
- rbanffy 2y agoOf course it’s useful for human languages. Using it to disassemble Z80 hex dumps is what I have mostly aesthetic objections against. It’s both fascinating that it can be done and horrifying that someone actually did it.
- layer8 2y agoIt's a simple application of ligature mapping. It looks more powerful than it really is.
- rbanffy 2y agoI am equally amazed and horrified. Fonts shouldn't do that. ;-)
- layer8 2y agoRead this, and you won't be surprised anymore about what is and isn't possible: https://simoncozens.github.io/fonts-and-layout/features-2.html https://simoncozens.github.io/fonts-and-layout/features-2.ht... (and preceding chapters)
- yoavm 2y agocool work! but please use a video instead of a gif in the readme... it's so frustrating not being able to pause, go back, etc.
- Confirm2754 2y agoSo evil, so evil! You discovered the programmability of fonts themselves!