From 728be196e6959a224b57d1f4f80683607cf1fc76 Mon Sep 17 00:00:00 2001 From: "J. P. Savard" Date: Sun, 12 Jan 2025 20:54:02 -0500 Subject: [PATCH] Ajout d'un readme.html --- .gitignore | 2 ++ Makefile | 25 +++++++++++++-- README.md | 2 +- demo_charset.png | Bin 29815 -> 24035 bytes gen_glyphs.sh | 6 ++++ readme.tpl | 77 +++++++++++++++++++++++++++++++++++++++++++++++ styles.css | 12 ++++++++ 7 files changed, 121 insertions(+), 3 deletions(-) create mode 100755 gen_glyphs.sh create mode 100644 readme.tpl create mode 100644 styles.css diff --git a/.gitignore b/.gitignore index d16f7bf..bedf248 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ *.psf *.ttf *.woff2 +*.zip +readme.html \ No newline at end of file diff --git a/Makefile b/Makefile index 90ed0f0..3f61d8c 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,16 @@ NAME := VideowayMono -FILES := ${NAME}-11.bdf ${NAME}-22.bdf ${NAME}.ttf ${NAME}HiDpi.ttf ${NAME}.woff2 ${NAME}HiDpi.woff2 ${NAME}.otb ${NAME}.psf ${NAME}-11.fnt ${NAME}-22.fnt ${NAME}.dfont +FILES := ${NAME}-11.bdf \ + ${NAME}-22.bdf \ + ${NAME}.ttf \ + ${NAME}HiDpi.ttf \ + ${NAME}.woff2 \ + ${NAME}HiDpi.woff2 \ + ${NAME}.otb \ + ${NAME}.psf \ + ${NAME}-11.fnt \ + ${NAME}-22.fnt \ + ${NAME}.dfont \ + readme.html .SUFFIXES: .sfd .bdf .otb .psf .fnt .dfont .ttf .woff2 @@ -24,5 +35,15 @@ all: ${FILES} .ttf.woff2: woff2_compress $< +%.html: %.tpl ${NAME}.ttf + sed '/%GLYPHS%/r'<(./gen_glyphs.sh ${NAME}.ttf) $< > $@ + sed -i 's/%GLYPHS%//' $@ + +%.zip: ${FILES} + rm -f $@ + zip -9 $@ ${FILES} styles.css + +dist: ${NAME}.zip + clean: - rm -f ${FILES} ${NAME}.afm + rm -f ${FILES} ${NAME}.afm \ No newline at end of file diff --git a/README.md b/README.md index 08c1cc3..b2e4f0b 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ A 8x11px font meant to be a complete remake of the font found in the old Videowa It's a bitmap font, so it works best in a multiple of 11px or 8pt. Glyphs are 8 pixels large with a few ones double width, making it ideal for most uses of a monospaced font. -Note: Videoway Mono is available in two variatons: the HiDpi version is mostly identical to the other one but with its resolution doubled: it renders best at a multiple of 22px or 16pt, and a few glyphs like the checkmark are taking advantages of this with a so-called HD version. Anyway, unless you need a version optimized for 11 pixels high you need this one. +Note: Videoway Mono is available in two variations: the HiDpi version is mostly identical to the other one but with its resolution doubled: it renders best at a multiple of 22px or 16pt, and a few glyphs like the checkmark are taking advantages of this with a so-called HD version. Anyway, unless you need a version optimized for 11 pixels high you need this one. ![](demo_sqrt.png) diff --git a/demo_charset.png b/demo_charset.png index dec44f720698a88cac202b610ac2856e3ae282eb..1aca89a57b840bc27014dab2d06fb6496c5241e9 100644 GIT binary patch literal 24035 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 H%04x&#x%x;" "$n" "$n" + done +done diff --git a/readme.tpl b/readme.tpl new file mode 100644 index 0000000..91ce4a7 --- /dev/null +++ b/readme.tpl @@ -0,0 +1,77 @@ + + + + + + Vidéoway Mono + + + + +

Videoway Mono

+

version 1.003

+

A 8x11px font meant to be a complete remake of the font found in the old Videoway terminals from Vidéotron, with a few additions to cover as much scripts as possible. Hand-made for retrogaming fans, but also a nice font for programmers who want a small, easy to read font. It's a bitmap font, so it works best in a multiple of 11px or 8pt. Glyphs are 8 pixels large with a few ones double width, making it ideal for most uses of a monospaced font.

+

FAQ

+

Which one do I pick?

+

The .ttf ones should just work out of the box. On MacOS, the .dfont should work as well. On Linux, you should be able to figure it out. Finally, if you're embedding this font on the web, you can pick the .woff2 files and use them with the included CSS stylesheet.

+

What's with the HiDPi version?

+

Check the Charset section below.

+

The zero is wrong!

+

There's an alternate one at U+FF10.

+

What's with the accented uppercase characters?

+

The original Videoway font notably didn't have any accented uppercase characters (or a lot of the symbols shown here), but for convenience, I created new ones. You should take this in consideration when emulating the Videoway.

+

The kerning is all over the place!

+

Yeah, I checked, it was like this on the original Videoway too.

+

Where did you get this from?

+

Credits to plgDavid who extracted the font from a Videoway terminal (accounting for the Basic Latin Unicode block, the accented lowercase letters used in French and some symbols), a few of them were copied from old screenshots and the rest are my own creation.

+

Who are you? Why are you doing this?

+

I'm Yuki, and this is a love letter to the cable box of my childhood.

+

Charset

+

Videoway Mono-HiDpi

+

Renders best at 22px or multiples thereof. This one is the most accurate to the original Videoway font, recommended for larger font sizes.

+
+%GLYPHS% +
+

Videoway Mono

+

Renders best at 11px. Recommended if you need a small font, such as in a text editor. It should still be largely the same, except for these glyphs, adapted for a lower resolution.

+
+
00d7×
2714
+
+ + \ No newline at end of file diff --git a/styles.css b/styles.css new file mode 100644 index 0000000..6f56eac --- /dev/null +++ b/styles.css @@ -0,0 +1,12 @@ +@font-face { + font-family: "Videoway Mono"; + src: local("Videoway Mono"), + url("VideowayMono.woff2") format("woff"), + url("VideowayMono.ttf") format("ttf"); +} +@font-face { + font-family: "Videoway Mono-HiDpi"; + src: local("Videoway Mono-HiDpi"), + url("VideowayMonoHiDpi.woff2") format("woff"), + url("VideowayMonoHiDpi.ttf") format("ttf"); +} \ No newline at end of file