intent 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: