1 |
#! perl |
2 |
|
3 |
=head1 NAME |
4 |
|
5 |
keysym-list - implement the "list" keysym expansion. |
6 |
|
7 |
=head1 SYNOPSIS |
8 |
|
9 |
urxvt -pe keysym-list |
10 |
|
11 |
=head1 DESCRIPTION |
12 |
|
13 |
The "list" keysym expansion was formerly part of the rxvt-unicode core, |
14 |
and has been moved into this extension for backwards compatibility. You |
15 |
shouldn't use this extension except for compatibility with old |
16 |
configurations. |
17 |
|
18 |
=cut |
19 |
|
20 |
|
21 |
sub on_register_command { |
22 |
my ($self, $keysym, $state, $str) = @_; |
23 |
|
24 |
if ($str =~ /^list(.)/) { |
25 |
my @list = split /\Q$1/, $str; |
26 |
if (@list == 3 or @list == 4) { |
27 |
$self->register_command ($keysym++, $state, "$list[1]$_$list[3]") |
28 |
for split //, $list[2]; |
29 |
|
30 |
return 1; |
31 |
} |
32 |
|
33 |
warn "unable to parse keysym '$str' as list, processing as normal keysym\n"; |
34 |
} |
35 |
|
36 |
() |
37 |
} |