keyboard/altgr: automatically generate thumbnails from source images
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 2 Jan 2024 18:03:39 +0000 (19:03 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Wed, 3 Jan 2024 22:50:49 +0000 (23:50 +0100)
Treat original images as untracked data, named with proper conversion
parameters for results similar to earlier gimp manipulation and exports.
Reuse the mkimgthumb script to crop and resize as appropriate:

tools/mkimgthumb --jpg '400x300>^ x200<' *

This will result in similar visual quality (at much smaller file sizes)
as gallery cells do not exceed 400px wide.  Enlarge to at least 200px high
to elicit preview images on social media.

18 files changed:
keyboard/altgr/apl.eng.inc.pl
keyboard/altgr/chromebook-hp11.jpg [deleted file]
keyboard/altgr/eurkey.eng.inc.pl
keyboard/altgr/eurkeyboard.jpg [deleted file]
keyboard/altgr/ibm-m.jpg [deleted file]
keyboard/altgr/ku2971b-usint.jpg [deleted file]
keyboard/altgr/macbook-gray.jpg [deleted file]
keyboard/altgr/macos-abc.eng.inc.pl
keyboard/altgr/macos.eng.inc.pl
keyboard/altgr/matias-fk302.jpg [deleted file]
keyboard/altgr/msx.eng.inc.pl
keyboard/altgr/msxcode.jpg [deleted file]
keyboard/altgr/spacecadet.eng.inc.pl
keyboard/altgr/spacecadet.jpg [deleted file]
keyboard/altgr/ukext.eng.inc.pl
keyboard/altgr/unicomp-apl.jpg [deleted file]
keyboard/altgr/windows.eng.inc.pl
tools/mkimgthumb

index b8636b7d49454ee544b6330d9be1c0c5742f3e64..efae0ba2a747e8cbeb3ff5d500eed30b37dffbfe 100644 (file)
@@ -112,5 +112,5 @@ $groups->{flag}{ext} = ['extended', 'optional operators not available in all var
                'Typical IBM-derived APL keyboard layout,',
                'as found in APLX and Dyalog implementations.',
        ],
-       image => 'keyboard/altgr/unicomp-apl.jpg',
+       image => 'data/keyboard/thumb/unicomp-apl.jpg',
 }
diff --git a/keyboard/altgr/chromebook-hp11.jpg b/keyboard/altgr/chromebook-hp11.jpg
deleted file mode 100644 (file)
index 7bfa00f..0000000
Binary files a/keyboard/altgr/chromebook-hp11.jpg and /dev/null differ
index 4fd357dc361ccd83e43fa120b7f6e5cac4e2e860..1da4a38dd6713bd2d41ed8f8561e8324391b00f6 100644 (file)
@@ -290,5 +290,5 @@ my %rows = (
        description => [
                "An interactive map of EurKEY, the European Keyboard Layout.",
        ],
-       image => 'keyboard/altgr/eurkeyboard.jpg',
+       image => 'data/keyboard/thumb/eurkeyboard.jpg',
 }
diff --git a/keyboard/altgr/eurkeyboard.jpg b/keyboard/altgr/eurkeyboard.jpg
deleted file mode 100644 (file)
index f90e2ff..0000000
Binary files a/keyboard/altgr/eurkeyboard.jpg and /dev/null differ
diff --git a/keyboard/altgr/ibm-m.jpg b/keyboard/altgr/ibm-m.jpg
deleted file mode 100644 (file)
index 35448d7..0000000
Binary files a/keyboard/altgr/ibm-m.jpg and /dev/null differ
diff --git a/keyboard/altgr/ku2971b-usint.jpg b/keyboard/altgr/ku2971b-usint.jpg
deleted file mode 100644 (file)
index 3f1f55f..0000000
Binary files a/keyboard/altgr/ku2971b-usint.jpg and /dev/null differ
diff --git a/keyboard/altgr/macbook-gray.jpg b/keyboard/altgr/macbook-gray.jpg
deleted file mode 100644 (file)
index d4e3dbc..0000000
Binary files a/keyboard/altgr/macbook-gray.jpg and /dev/null differ
index a5d63b49a25dd848a4eedb3aeb3296a99128e3c2..b64330378f7cce8a39a2edaa75281b5848e4ef85 100644 (file)
@@ -208,5 +208,5 @@ my %rows = (
                "Apple ABC Extended keyboard layout table",
                "with the Option modifier key.",
        ],
-       image => 'keyboard/altgr/macbook-gray.jpg',
+       image => 'data/keyboard/thumb/macbook-gray.jpg',
 }
index 884eeb9595e6ab38e07f3f522abb274f47c63eb7..5b211f0e786b506a0903c6e4f100c4ed524fe334 100644 (file)
@@ -115,5 +115,5 @@ my %rows = (
                "Apple US International keyboard layout table",
                "with the Option modifier key.",
        ],
-       image => 'keyboard/altgr/matias-fk302.jpg',
+       image => 'data/keyboard/thumb/matias-fk302.jpg',
 }
diff --git a/keyboard/altgr/matias-fk302.jpg b/keyboard/altgr/matias-fk302.jpg
deleted file mode 100644 (file)
index 3e8aca3..0000000
Binary files a/keyboard/altgr/matias-fk302.jpg and /dev/null differ
index eeb71c46f5c6195ee2bd030f5c79da00caccf05b..6ed49a6c3f119f5f91e173de5d3e14ece2dbebdd 100644 (file)
@@ -107,5 +107,5 @@ $groups->{flag}{ext} = ['anachrone', 'expected uppercase variants if allowed by
                "MSX keyboard layout table",
                "with the code modifier key.",
        ],
-       image => 'keyboard/altgr/msxcode.jpg',
+       image => 'data/keyboard/thumb/msxcode.jpg',
 }
diff --git a/keyboard/altgr/msxcode.jpg b/keyboard/altgr/msxcode.jpg
deleted file mode 100644 (file)
index 8553564..0000000
Binary files a/keyboard/altgr/msxcode.jpg and /dev/null differ
index 0fd89528e513743992d222ca94c131b2f0f37261..614ae4ce124adeda97de6ea7fcf3a7a4a53c9f94 100644 (file)
@@ -106,5 +106,5 @@ my %rows = (
        ],
        rows => [3, 0], # greek/front and top
        moderows => '41-4',
-       image => 'keyboard/altgr/spacecadet.jpg',
+       image => 'data/keyboard/thumb/spacecadet.jpg',
 }
diff --git a/keyboard/altgr/spacecadet.jpg b/keyboard/altgr/spacecadet.jpg
deleted file mode 100644 (file)
index a5a1ff7..0000000
Binary files a/keyboard/altgr/spacecadet.jpg and /dev/null differ
index 9fa019f0bf4a876709b3376e13ab12a337b764b6..3e3a8ce7dafe5e2b00054f2c689c776f86ec96df 100644 (file)
@@ -114,5 +114,5 @@ $rows{']'} = $rows{'#'};
                "Google UK-Extended keyboard layout table for Chrome OS",
                "with the AltGr modifier key.",
        ],
-       image => 'keyboard/altgr/chromebook-hp11.jpg',
+       image => 'data/keyboard/thumb/chromebook-hp11.jpg',
 }
diff --git a/keyboard/altgr/unicomp-apl.jpg b/keyboard/altgr/unicomp-apl.jpg
deleted file mode 100644 (file)
index 9cc674e..0000000
Binary files a/keyboard/altgr/unicomp-apl.jpg and /dev/null differ
index 06c29931e7f3c1c1015c3daca29fe9ebdeadb836..810b692591900839de6fe953587f27bc39db2014 100644 (file)
@@ -79,5 +79,5 @@ $groups->{flag}{ext} = ['xkb', 'unofficial extensions added in Linux (Gnome, KDE
                "Windows US international keyboard layout table",
                "with the AltGr modifier key.",
        ],
-       image => 'keyboard/altgr/ku2971b-usint.jpg',
+       image => 'data/keyboard/thumb/ku2971b-usint.jpg',
 }
index c672d3fdb6761fadc4768e42f0e7f1f904534dfa..e9d6eb2159286003a9ccc6c28412334d2d01ee70 100755 (executable)
@@ -27,9 +27,13 @@ for (keys %opt) {
        push @ffs, my $ff = [$_];
        my $r = $opt{$_};
        push @{$ff}, -quality => $1 if $r =~ s/@(\d+)//;
-       push @{$ff}, -resize => "$r^", -extent => $r;
+       push @{$ff}, -resize => !/\dx\d+$/ ? $_ : ("$_^", -extent => $_)
+               for split / /, $r;
 }
 
+my $target = '..';
+$target = pop @ARGV if @ARGV >= 2 and -d $ARGV[-1];
+
 my $failcount = 0;
 
 for my $src (@ARGV) {
@@ -56,7 +60,7 @@ for my $src (@ARGV) {
                for (@ffs) {
                        my ($ff, @ffcmds) = @{$_};
                        print " $ff";
-                       $image->convert("../$name.$ff", [@cmds, @ffcmds]);
+                       $image->convert("$target/$name.$ff", [@cmds, @ffcmds]);
                }
                1;
        } or do {