summaryrefslogtreecommitdiff
path: root/bin/feed2imap
blob: 663d661e218df37b0a2aad6901aa7b6bb76f02d9 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/ruby

$:.unshift File.join(File.dirname(__FILE__), '..', 'lib')

require 'feed2imap/feed2imap'
require 'optparse'

verbose = false
version = false
cacherebuild = false
configf = ENV['HOME'] + '/.feed2imaprc'
progname = File::basename($PROGRAM_NAME)
opts = OptionParser::new do |opts|
  opts.program_name = progname
  opts.banner = "Usage: #{progname} [options]"
  opts.separator ""
  opts.separator "Options:"

  opts.on("-v", "--verbose", "Verbose mode") do |v|
    verbose = true
  end

  opts.on("-d", "--debug", "Debug mode") do |v|
    verbose = :debug
  end

  opts.on("-V", "--version", "Display Feed2Imap version") do |v|
    version = true
  end
  opts.on("-c", "--rebuild-cache", "Cache rebuilding run : will fetch everything and add to cache, without uploading to the IMAP server. Useful if your cache file was lost, and you don't want to re-read all the items.") do |c|
    cacherebuild = true
  end
  opts.on("-f", "--config <file>", "Select alternate config file") do |f|
    configf = f
  end
end
begin
  opts.parse!(ARGV)
rescue OptionParser::ParseError => pe
  opts.warn pe
  puts opts
  exit 1
end

if version
  puts "Feed2Imap v.#{F2I_VERSION}"
else
  Feed2Imap::new(verbose, cacherebuild, configf)
end