intent 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7aa47eda8ba94140f01f95ff3dca1cf148394bde
4
- data.tar.gz: d05d77aec45c8ba90856594540b347dbf99bb084
3
+ metadata.gz: 1ab588e840da94d3f3f88a796b5ff86ce5590a49
4
+ data.tar.gz: df9b035c8e36e79d7730e2ef5a24c98e210883eb
5
5
  SHA512:
6
- metadata.gz: 597d8d706a9b0930c5e6f7236abbb42cf851297598756a4d772bea21212d1d1f4693ac76b90a1daba3119bba505a2feef0699239b573e3cdd9e33c4355372c47
7
- data.tar.gz: e9d0b803bf28eeb38f01f1a5c1e4900b4fdaebc70989732f2ad910bc670518c15859c82b27b0a2d8222895c2d366a646a689b2866c38969a7724130df5311532
6
+ metadata.gz: c23a68677863b39c89aad04a75cc95ac9fc91d15fa3f907b688fb05a5718af0106caf7af32cd3895d0a29c28eaee458741a1db320567ab498920508b416781be
7
+ data.tar.gz: 7d27d8616b96259f23098d708b9b8838d61fda587e05bafcfaea3d9e6c15a3ac6260c53eb6487741388aa8de3ffcd70742b5255e45911d0aa25011cb3c5d2028
data/bin/todo ADDED
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ path = __FILE__
4
+ while File.symlink?(path)
5
+ path = File.expand_path(File.readlink(path), File.dirname(path))
6
+ end
7
+ $:.unshift(File.join(File.dirname(File.expand_path(path)), '..', 'lib'))
8
+
9
+ require 'intent/todo'
10
+
11
+ Intent::Todo::Manager.run(ARGV.dup)
data/intent.gemspec CHANGED
@@ -14,10 +14,12 @@ Gem::Specification.new do |spec|
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
- spec.bindir = "exe"
18
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
17
+ spec.bindir = "bin"
18
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ["lib"]
20
20
 
21
+ spec.add_runtime_dependency "todo-txt", "~> 0.5"
22
+
21
23
  spec.add_development_dependency "bundler", "~> 1.10"
22
24
  spec.add_development_dependency "rake", "~> 10.0"
23
25
  spec.add_development_dependency "rspec"
@@ -0,0 +1,49 @@
1
+ module Intent
2
+ module Todo
3
+ class Manager
4
+ def self.run(args)
5
+ if args.empty?
6
+ print_help
7
+ else
8
+ list = ::Todo::List.new(ENV['TODO_TXT'])
9
+ case args.first.to_sym
10
+ when :list
11
+ list.each do |task|
12
+ puts task
13
+ end
14
+ when :focus
15
+ focused_list = list
16
+
17
+ unless args[1].nil?
18
+ case args[1][0]
19
+ when '@'
20
+ focused_list = list.by_context(args[1])
21
+ when '+'
22
+ focused_list = list.by_project(args[1])
23
+ end
24
+ end
25
+
26
+ prioritised_list = focused_list.by_priority('A')
27
+ if prioritised_list.any?
28
+ puts prioritised_list.by_not_done.sample
29
+ else
30
+ if focused_list.any?
31
+ puts focused_list.by_not_done.sample
32
+ else
33
+ puts "No tasks found."
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+
40
+ def self.print_help
41
+ puts "usage: todo"
42
+ puts
43
+ puts "A set of tasks for managing a plain text todo list."
44
+ puts
45
+ puts "todo list - list all items in the list"
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,2 @@
1
+ require 'todo-txt'
2
+ require 'intent/todo/manager'
@@ -1,3 +1,3 @@
1
1
  module Intent
2
- VERSION = "0.0.1"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: intent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Rickerby
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-26 00:00:00.000000000 Z
11
+ date: 2016-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: todo-txt
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.5'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.5'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: bundler
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -55,7 +69,8 @@ dependencies:
55
69
  description:
56
70
  email:
57
71
  - me@maetl.net
58
- executables: []
72
+ executables:
73
+ - todo
59
74
  extensions: []
60
75
  extra_rdoc_files: []
61
76
  files:
@@ -66,8 +81,11 @@ files:
66
81
  - LICENSE.txt
67
82
  - README.md
68
83
  - Rakefile
84
+ - bin/todo
69
85
  - intent.gemspec
70
86
  - lib/intent.rb
87
+ - lib/intent/todo.rb
88
+ - lib/intent/todo/manager.rb
71
89
  - lib/intent/version.rb
72
90
  homepage: http://maetl.net
73
91
  licenses: