--- History.txt | 5 +++++ bin/sup | 15 ++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/History.txt b/History.txt index 27ff788..a59ee50 100644 --- a/History.txt +++ b/History.txt @@ -1,5 +1,10 @@ == +* add email command line argument to sup. sup mail.address@isp.tld + is now equal to sup --compose mail.address@isp.tld + +== + * You can now unsubscribe from mailinglists using an url, if you have a goto-hook setup (Timon Vonk). diff --git a/bin/sup b/bin/sup index 6757312..fba3ea6 100755 --- a/bin/sup +++ b/bin/sup @@ -34,7 +34,11 @@ $opts = Trollop::options do Sup is a curses-based email client. Usage: - sup [options] + sup [options] [to-address] + +Arguments: + to-address: Compose message to this recipient upon startup + --compose overrides an address passed as argument Options are: EOS @@ -46,8 +50,17 @@ EOS opt :subject, "When composing, use this subject", :type => String, :short => "j" end +## Trollop does no command argument parsing, only option parsing. +# After Trollop parsing, ARGV contains only the +rest+ of the command line, +# thus the arguments to our program +## compose message if we have an email address as first command line argument +# I do not use RMail to check the validity of the address, as RMail tends to throw +# exceptions I'm too lazy to handle. Ruthard Baudach +$opts[:compose] = ARGV[0] if ARGV[0] =~ /.+@.+\..{2,}/ and not $opts[:compose] + Trollop::die :subject, "requires --compose" if $opts[:subject] && !$opts[:compose] + Redwood::HookManager.register "startup", <