X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/odin-cgi/blobdiff_plain/98984c9d2db5bc19f73b28aa277a40608a935b22..969db1ef94e92c88afaa35b683918b2bf33b87f0:/bin/pastebin.userv diff --git a/bin/pastebin.userv b/bin/pastebin.userv index fd263bd..c9936ed 100755 --- a/bin/pastebin.userv +++ b/bin/pastebin.userv @@ -32,11 +32,21 @@ Commands available: del TAG ... get TAG help + langs list new [-l LANG] [-t TITLE] rekey TAG update [-c] [-l LANG] [-t TITLE] TAG EOF +} elsif ($op eq "langs") { + @ARGV == 0 or Odin::fail "usage: list"; + my $db = Odin::open_db; + for my $r (@{$db->selectall_arrayref + ("SELECT lang, descr FROM odin_pastebin_lang + ORDER BY lang", undef)}) { + my ($lang, $descr) = @$r; + Odin::print_columns $lang => 16, $descr => 0; + } } elsif ($op eq "list") { @ARGV == 0 or Odin::fail "usage: list"; my $db = Odin::open_db; @@ -60,13 +70,6 @@ EOF $op->bad if @ARGV; $op->ok or Odin::fail "usage: new [-l LANG] [-t TITLE]"; $p{content} = read_content; - my $db = Odin::open_db; - my $c = ""; - while (read STDIN, my $buf, 8192) { $c .= $buf; } - $p{content} = read_content; - @{$db->selectall_arrayref - ("SELECT lang FROM odin_pastebin_lang WHERE lang = ?", undef, $p{lang})} - or Odin::fail "unknown language `$p{lang}'"; my ($tag, $edit) = Odin::new_pastebin %p; print "$Odin::PASTEBIN/$tag $edit\n"; } elsif ($op eq "get") {