summaryrefslogtreecommitdiff
path: root/.urxvt/extensions/wgetpaste
blob: 1f81f54d64eea50112abe63d1fea3f9aa9b37c7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#! perl -w

# Adds an entry to the selection popup allowing to move the current selection
# to a pastebin via wgetpaste.

use IPC::Open2;

sub on_start {
    my ($self) = @_;

    push @{ $self->{term}{selection_popup_hook} }, sub {
            `which wgetpaste 2> /dev/null`
                ? ("Pastebin" => \&wgetpaste)
                : ()
        };

    return ()
}

sub wgetpaste {
    my ($pout, $pin);

    my $pid = open2($pout, $pin, 'wgetpaste');
    print $pin $_;
    close $pin;

    # selection-popup expects the final text in $_
    ($_ = <$pout>) =~ s/^.*?://;
}