vi: append flags of key aliases
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 31 Oct 2023 18:35:28 +0000 (19:35 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Tue, 31 Oct 2023 23:39:00 +0000 (00:39 +0100)
Support class overrides of missing references, and additional versioning
as "v6", likewise fixing "new" of mpv overrides.

Shiar_Sheet/Keyboard.pm
mplayer.plp
vi.eng.inc.pl
vi.plp

index 0108cf1d10f43c70ed846339c549ea0604ee4612..6908ce9c20b1dbf6d1ebfb550c57833174ade8fd 100644 (file)
@@ -6,7 +6,7 @@ use warnings;
 no  warnings 'uninitialized';  # save some useless checks for more legible code
 use Carp;
 
-our $VERSION = '2.07';
+our $VERSION = '2.08';
 
 my @casedesc = (undef, qw/shift ctrl meta/, 'shift meta');
 my @rowdesc = qw(numeric top home bottom);
@@ -110,10 +110,10 @@ sub print_key {
        if (not defined $flags) {
                $flags = $key eq '^0' ? 'ni' : 'no';
        }
-       elsif ($flags =~ s/^=//) { # alias
-               $desc = $self->{sign}->{alias};
-               $desc .= $flags eq "\e" ? 'esc' : $flags;
-               $flags = $self->keyunalias($flags) . ' alias';
+       elsif ($flags =~ s/^=(\S+)\s?//) { # alias
+               my $ref = $1;
+               $desc = $self->{sign}->{alias} . ($ref eq "\e" ? 'esc' : $ref);
+               $flags = join ' ', $self->keyunalias($ref), 'alias', $flags;
        }
        if (my $txt = $self->{key}->{$mode.$key}) {
                ($desc, $mnem) = split /\n/, $self->escapedesc($txt);
index f7b4445cd954500176198632f1643d1b824f8a61..9e97d71837886f00bde14b35f4ded7342e0a9e45 100644 (file)
@@ -22,7 +22,7 @@ Html({
 say "<h1>$mode cheat sheet</h1>";
 say '';
 
-use Shiar_Sheet::Keyboard 2;
+use Shiar_Sheet::Keyboard 2.08;
 my $info = Data($include);
 my $keys = Shiar_Sheet::Keyboard->new($info);
 $keys->map($get{map}) or undef $get{map};
index 20f70f37158971191fbac2169c7b2b9348c0b2d6..6188702d1406070c6da250d8d17206595d4caae2 100644 (file)
@@ -840,7 +840,7 @@ def => {
                '(' => "g2",
                '*' => "=[/",
                '/' => "g2",
-               "'" => "=[` ^", # v6
+               "'" => "=0[`^ g2 v6",
                '{' => "g2",
                '[' => "g2",
                '^['=> "=\e",
@@ -893,7 +893,7 @@ def => {
                '#' => "g2",
                ')' => "g2",
                '*' => "=]/",
-               "'" => "=]` ^", # v6
+               "'" => '=$]`^ g2 v6',
                '/' => "g2",
                '[' => "g2",
                '^['=> "=\e",
diff --git a/vi.plp b/vi.plp
index c5e202528e73899fe46b00f73ced2ccc2f1b88f7..bd30d8cf19c3d0c1f228aea855f36bc4231aab3c 100644 (file)
--- a/vi.plp
+++ b/vi.plp
@@ -20,7 +20,7 @@ Html({
 <h2>normal mode (default)</h2>
 
 <:
-use Shiar_Sheet::Keyboard 2.07;
+use Shiar_Sheet::Keyboard 2.08;
 my $info = Data('vi.eng');
 my $keys = Shiar_Sheet::Keyboard->new($info);
 $keys->map($get{map}) or undef $get{map};