use open OUT => ':utf8', ':std';
-our $VERSION = '1.05';
+our $VERSION = '1.06';
# import and combine various digraph data
my $rfc = do 'data/digraphs-rfc.inc.pl'
or warn "could not include shiar proposals: ", $@ // $!;
my $vim = do 'data/digraphs-vim.inc.pl'
or warn "could not include vim extensions ", $@ // $!;
+my $vimold = do 'data/digraphs-vim-74.inc.pl'
+ or warn "could not include vim compatibility ", $@ // $!;
my $di = { %{$vim // {}}, %{$rfc}, %{$extra // {}} };
# optionally get unicode character information
ord $di->{$_}, # original code point
map {"'$_'"}
$uninfo->{ $di->{$_} }->[1] // '', # name
- $vim->{$_}
- ? $rfc->{$_} ? 'u-di' : 'u-prop' # vim+rfc or vim only
- : $rfc->{$_} ? 'ex' : 'u-prop ex', # rfc only or neither
+ join(' ',
+ $rfc->{$_}
+ ? $vim->{$_} ? 'l4' : 'l1' # vim+rfc or rfc only
+ : $vim->{$_} ? 'l3' : 'l2', # vim only or neither
+ $vimold && $vim->{$_} && !$vimold->{$_} ? 'ex' : (), # new vim feature
+ ),
($uninfo->{ $di->{$_} }->[0] // '') =~ s/ u-di| u-prop| ex//gr, # class
$uninfo->{ $di->{$_} }->[4] // (), # string
) for sort keys %{$di};