01 #!/usr/local/bin/perl -w 02 use strict; 03 use local::lib; 04 use Clipboard; 05 use YAML qw(DumpFile LoadFile); 06 07 my($home) = glob "~"; 08 my $clipboard = "$home/.clipboard"; 09 10 my $stack = []; 11 $stack = LoadFile( $clipboard ) if 12 -f $clipboard; 13 14 my( $command ) = @ARGV; 15 16 die "usage: $0 [push|pop]" if 17 !defined $command; 18 19 { 20 no strict 'refs'; 21 &$command( $stack ); 22 } 23 24 DumpFile( $clipboard, $stack ); 25 26 ########################################### 27 sub push { 28 ########################################### 29 my($stack) = @_; 30 31 push @$stack, Clipboard->paste; 32 } 33 34 ########################################### 35 sub pop { 36 ########################################### 37 my($stack) = @_; 38 39 Clipboard->copy( pop @$stack ); 40 }