documented and improved remote-pastebin.
authorelmex <elmex>
Tue, 17 Jan 2006 13:19:45 +0000 (13:19 +0000)
committerelmex <elmex>
Tue, 17 Jan 2006 13:19:45 +0000 (13:19 +0000)
src/perl/selection
src/urxvt.pm

index c090e7e..a87c6d6 100644 (file)
@@ -21,27 +21,32 @@ sub upload_paste {
    my ($self) = @_;
 
    my $txt = $self->selection;
-   my $h = md5_hex ($txt);
+   my $filename = md5_hex ($txt) . ".txt";
 
-   my $fn = "/tmp/$h.txt";
+   my $tmpfile = "/tmp/$filename";
 
-   my $msg = "uploaded $h.txt";
+   my $msg = "uploaded $filename";
 
-   if (open my $o, ">" . $fn) {
+   if (open my $o, ">" . $tmpfile) {
       print $o $txt;
       close $o;
    } else {
-      $msg = "couldn't write $fn: $!";
+      $msg = "couldn't write $tmpfile: $!";
    }
 
    my $cmd = $pastebin_cmd;
-   $cmd =~ s/%/$fn/;
-   unless (system ($cmd) == 0) {
+   $cmd =~ s/%/$tmpfile/;
+
+   if (system ($cmd) == 0) {
+
+      my $url = $pastebin_url;
+      $url =~ s/%/$filename/;
+
+      $self->selection ($url);
+   } else {
       $msg = "couldn't upload, '$cmd' failed";
    }
 
-   $self->selection ($pastebin_url . "$h.txt");
-
    my $ov = $timers->{ov} = $self->overlay (-1, 0, length ($msg), 1, urxvt::OVERLAY_RSTYLE, 0);
    $ov->set (0, 0, $msg);
 
index 8d9c98e..368a3da 100644 (file)
@@ -68,7 +68,7 @@ between two vertical bars:
 You can look at the source of the selection extension to see more
 interesting uses, such as parsing a line from beginning to end.
 
-This extension also offers the following bindable keyboard command:
+This extension also offers following bindable keyboard commands:
 
 =over 4
 
@@ -78,6 +78,23 @@ Rot-13 the selection when activated. Used via keyboard trigger:
 
    URxvt.keysym.C-M-r: perl:selection:rot13
 
+=item remote-pastebin
+
+Upload the selection as textfile to a remote site.
+
+   URxvt.keysym.C-M-e: perl:selection:remote-pastebin
+
+To set the command to upload the file set this resource:
+
+   URxvt.selection-pastebin-cmd: rsync -apP % ruth:/var/www/www.ta-sa.org/files/txt/.
+
+The % is the placeholder for the textfile. The name of the textfile is the hex encoded 
+md5 sum of the selection.
+After an successful upload the selection will be replaced by the following url 
+(the % is the placeholder for the filename):
+
+   URxvt.selection-pastebin-url: http://www.ta-sa.org/files/txt/%
+
 =back
 
 =item option-popup (enabled by default)