git clone https://git.lucas.co/Myna.git
add comparison
images/comp.png | Bin 0 -> 236127 bytes
scripts/mkcomp | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+)
diff --git a/images/comp.png b/images/comp.png
new file mode 100644
index 0000000..a45c0d5
Binary files /dev/null and b/images/comp.png differ
diff --git a/scripts/mkcomp b/scripts/mkcomp
new file mode 100755
index 0000000..cf5a2aa
--- /dev/null
+++ b/scripts/mkcomp
@@ -0,0 +1,50 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+my $symbols = [
+ { "pos" => 400, "sym" => "->" },
+ { "pos" => 600, "sym" => "=>" },
+ { "pos" => 800, "sym" => "~>" },
+ { "pos" => 1000, "sym" => "<>" },
+ { "pos" => 1200, "sym" => "=~" },
+ { "pos" => 1400, "sym" => "<\$>" },
+ { "pos" => 1600, "sym" => "<*>" },
+ { "pos" => 1800, "sym" => ">>=" },
+];
+
+my $fonts = [
+ { "pos" => 100, "name" => "Cascadia-Mono-Regular" },
+ { "pos" => 200, "name" => "Source-Code-Pro-Regular" },
+ { "pos" => 300, "name" => "Dejavu-Sans-Mono" },
+ { "pos" => 400, "name" => "Jetbrains-Mono" },
+ { "pos" => 500, "name" => "Iosevka" },
+ { "pos" => 600, "name" => "Ubuntu-Mono" },
+ { "pos" => 700, "name" => "Fira-Mono-Regular" },
+ { "pos" => 800, "name" => "Liberation-Mono" },
+ { "pos" => 900, "name" => "Roboto-Mono" }
+];
+
+sub f {
+ my ($x, $s) = @_;
+ return join(" ",
+ "-pointsize 64",
+ "-fill white -stroke white",
+ (map { "-font \"$_->{name}\" -annotate +$x+$_->{pos} \"$s\"" } $fonts->@*),
+ "-fill cyan -stroke cyan -font \"Myna\" -annotate +$x+1050 \"$s\""
+ );
+}
+
+system (join(" ",
+ "magick",
+ "-size 2000x1200 xc:black",
+ "-gravity northwest",
+ "-pointsize 64 -strokewidth 1.2 -fill white -stroke white -font \"Inter-Regular\"",
+ join(' ', map { "-annotate +80+$_->{pos} \"@{[$_->{name} =~ s/-.*//r]}\"" } $fonts->@*),
+ '-fill cyan -stroke cyan -annotate +80+1050 "Myna"',
+
+ join (' ', map { f($_->{pos}, $_->{sym}) } $symbols->@*),
+
+ $ARGV[0]
+));