i3 ipc with libanyevent From https://faq.i3wm.org/question/1456/i3-ipc-with-libanyevent/
#!/usr/bin/perl
use strict;
use warnings;
use AnyEvent::I3 qw(:all);
use EV;
use Data::Dumper;
my $i3 = i3("~/.i3/ipc.sock");
$i3->connect->recv or die "Error connecting";
my %handler = (
workspace => sub {
my ($msg) = @_;
if (($msg->{'change'} eq 'focus')) {
print Dumper($msg);
}
}
);
$i3->subscribe(\%handler)->recv;
EV::loop;