Sha256: 2103cb298b9cc7ccaef5acec1e9a972650d5fdecac435b5b77b4f6d14a4855ef

Contents?: true

Size: 1.78 KB

Versions: 6

Compression:

Stored size: 1.78 KB

Contents

desc "List things, such as tasks or contexts"
long_desc %(
  List a whole lot of things that you might be keeping track of 
  in your overall todo list.

  This is your go-to place or finding all of the things that you
  might have 
  stored in 
  your todo databases.
)

command [:list] do |c|
  c.default_command :tasks

  c.desc "Show long form"
  c.switch [:l,:long]

  c.flag :required_flag, :required => true
  c.flag :required_flag2, :required => true

  c.desc "List tasks"
  c.long_desc %(
    Lists all of your tasks that you have, in varying orders, and
    all that stuff.  Yes, this is long, but I need a long description.
  )

  c.arg :task, [:optional, :multiple]
  c.command :tasks do |tasks|
    tasks.desc "blah blah crud x whatever"
    tasks.flag [:x], :must_match => Array

    tasks.flag :flag

    tasks.action do |global,options,args|
      puts options[:x].inspect
      puts "list tasks: #{args.join(',')}"
    end

    tasks.desc 'list open tasks'
    tasks.command :open do |open|
      open.desc "blah blah crud x whatever"
      open.flag [:x], :must_match => Array

      open.flag :flag

      open.example "todo list tasks open --flag=blah", desc: "example number 1"
      open.example "todo list tasks open -x foo"

      open.action do |global,options,args|
        puts "tasks open"
      end
    end

    tasks.default_desc 'list all tasks'
  end

  c.desc "List contexts"
  c.long_desc %(
    Lists all of your contexts, which are places you might be 
    where you can do stuff and all that.
  )
  c.command :contexts do |contexts|

    contexts.desc "Foobar"
    contexts.switch [:f,'foobar']

    contexts.desc "Blah"
    contexts.switch [:b]

    contexts.flag :otherflag

    contexts.action do |global,options,args|
      puts "list contexts: #{args.join(',')}"
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
gli-2.17.2 test/apps/todo/lib/todo/commands/list.rb
gli-2.17.1 test/apps/todo/lib/todo/commands/list.rb
gli-2.17.0 test/apps/todo/lib/todo/commands/list.rb
gli-2.16.1 test/apps/todo/lib/todo/commands/list.rb
gli-2.16.0 test/apps/todo/lib/todo/commands/list.rb
gli-2.15.0 test/apps/todo/lib/todo/commands/list.rb