pomo 0.0.4 → 0.0.5

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.
data/History.md CHANGED
@@ -1,4 +1,11 @@
1
1
 
2
+ 0.0.5 / 2009-10-16
3
+ ==================
4
+
5
+ * Added `pomo break`
6
+ * Added `pomo clear` alias of `pomo remove all`
7
+ * Default `pomo` to `pomo list`
8
+
2
9
  0.0.4 / 2009-10-15
3
10
  ==================
4
11
 
data/Readme.md CHANGED
@@ -9,7 +9,26 @@ With Pomo you can add, remove, list, view, and start timing tasks all via the
9
9
  command-line with a simple, slick interface. You are reminded of the remaining
10
10
  time on a task via Growl. These notifications appear half-way, at the 5 minute point,
11
11
  and when the task duration has expired.
12
+
13
+ ## Task Selection API
14
+
15
+ Taken from `pomo help`:
16
+
17
+ Most of the subcommands work directly with tasks,
18
+ and because of this pomo provides a unified task selection api
19
+ shown below which can be used with most of the commands
20
+ (those with [task ...] in their synopsis).
12
21
 
22
+ n : selects a single task by index : Ex: pomo remove 1
23
+ [n ]+ : selects several tasks by index : Ex: pomo remove 2 8 1
24
+ n..n : selects a range of tasks : Ex: pomo remove 5..9
25
+ n..-n : selects a range of tasks : Ex: pomo remove 2..-1
26
+ first : selects the first task : Ex: pomo remove first
27
+ last : selects the last task : Ex: pomo remove last
28
+ complete : selects complete tasks : Ex: pomo remove complete
29
+ incomplete : selects incomplete tasks : Ex: pomo remove incomplete
30
+ all : selects all tasks : Ex: pomo remove all
31
+
13
32
  ## Examples
14
33
 
15
34
  View global or command specific help:
@@ -23,7 +42,7 @@ Get started by adding a task:
23
42
  And another:
24
43
  $ pomo add "Destroy IE" --description "because IE is terrible"
25
44
 
26
- List your tasks:
45
+ List your tasks (or use `pomo` which defaults to `pomo list`):
27
46
  $ pomo list
28
47
  0. Fix IE stying issues : 25 minutes
29
48
  1. Destroy IE : 25 minutes
@@ -38,6 +57,11 @@ Once you have completed the task, list again:
38
57
  √ 0. Fix IE stying issues : 25 minutes
39
58
  1. Destroy IE : 25 minutes
40
59
 
60
+ Or take a break:
61
+ $ pomo break
62
+ $ pomo break 10
63
+ $ pomo break --length 10
64
+
41
65
  List only remaining tasks:
42
66
  $ pomo list --incomplete
43
67
  1. Destroy IE : 25 minutes
@@ -83,25 +107,6 @@ Remove all tasks:
83
107
  $ pomo remove all
84
108
  $ pomo rm all
85
109
 
86
- ## Task Selection API
87
-
88
- Taken from `pomo help`:
89
-
90
- Most of the subcommands work directly with tasks,
91
- and because of this pomo provides a unified task selection api
92
- shown below which can be used with most of the commands
93
- (those with [task ...] in their synopsis).
94
-
95
- n : selects a single task by index : Ex: pomo remove 1
96
- [n ]+ : selects several tasks by index : Ex: pomo remove 2 8 1
97
- n..n : selects a range of tasks : Ex: pomo remove 5..9
98
- n..-n : selects a range of tasks : Ex: pomo remove 2..-1
99
- first : selects the first task : Ex: pomo remove first
100
- last : selects the last task : Ex: pomo remove last
101
- complete : selects complete tasks : Ex: pomo remove complete
102
- incomplete : selects incomplete tasks : Ex: pomo remove incomplete
103
- all : selects all tasks : Ex: pomo remove all
104
-
105
110
  ## License
106
111
 
107
112
  (The MIT License)
data/bin/pomo CHANGED
@@ -29,6 +29,8 @@ program :int_message, "\nTerminated pomo" \
29
29
 
30
30
  list = Pomo::List.new '~/.pomo'
31
31
 
32
+ default_command :list
33
+
32
34
  command :start do |c|
33
35
  c.syntax = 'pomo start [task] [options]'
34
36
  c.summary = 'Start a task'
@@ -57,10 +59,25 @@ command :add do |c|
57
59
  c.option '-d', '--description string', 'Add verbose task description'
58
60
  c.option '-l', '--length minutes', Integer, 'Change the default length in minutes'
59
61
  c.action do |args, options|
60
- task = Pomo::Task.new(args.shift, options.__hash__)
61
- list << task
62
- list.save
63
- say "Task #{task} added"
62
+ task = Pomo::Task.new(args.shift, options.__hash__)
63
+ list << task
64
+ list.save
65
+ say "Task #{task} added"
66
+ end
67
+ end
68
+
69
+ command :break do |c|
70
+ c.syntax = 'pomo break [length] [options]'
71
+ c.summary = 'Take a break'
72
+ c.description = 'Take a break, defaults to 5 minutes or [length] or --length'
73
+ c.example 'Take a five minute break', 'pomo break'
74
+ c.example 'Take a 30 minute break', 'pomo break 30'
75
+ c.example 'Take a 30 minute break', 'pomo break --length 30'
76
+ c.option '-l', '--length minutes', Integer, 'Change the default length in minutes'
77
+ c.action do |args, options|
78
+ options.default :length => args.first ? args.first.to_i : 5
79
+ task = Pomo::Task.new('Break time', options.__hash__)
80
+ task.start
64
81
  end
65
82
  end
66
83
 
@@ -84,6 +101,7 @@ command :remove do |c|
84
101
  end
85
102
  end
86
103
  alias_command :rm, :remove
104
+ alias_command :clear, :remove, 'all'
87
105
 
88
106
  command :view do |c|
89
107
  c.syntax = 'pomo view [task ...] [options]'
@@ -12,7 +12,6 @@ module Pomo
12
12
  # Task name.
13
13
 
14
14
  attr_reader :name
15
- alias :to_s :name
16
15
 
17
16
  ##
18
17
  # Length in minutes.
@@ -39,6 +38,13 @@ module Pomo
39
38
  @complete = false
40
39
  end
41
40
 
41
+ ##
42
+ # Quoted task name.
43
+
44
+ def to_s
45
+ name.inspect
46
+ end
47
+
42
48
  ##
43
49
  # Check if the task has been completed.
44
50
 
@@ -50,7 +56,7 @@ module Pomo
50
56
  # Start timing the task.
51
57
 
52
58
  def start
53
- complete_message = "time is up, complete #{self} yet?"
59
+ complete_message = "time is up! hope you are finished #{self}"
54
60
  progress (0..length).to_a.reverse, :format => "(:progress_bar) :remaining minutes remaining", :complete_message => complete_message do |remaining|
55
61
  if remaining == length / 2
56
62
  notify_info "#{remaining} minutes remaining, half way there!"
@@ -1,4 +1,4 @@
1
1
 
2
2
  module Pomo
3
- VERSION = '0.0.4'
3
+ VERSION = '0.0.5'
4
4
  end
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{pomo}
5
- s.version = "0.0.4"
5
+ s.version = "0.0.5"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["TJ Holowaychuk"]
9
- s.date = %q{2009-10-15}
9
+ s.date = %q{2009-10-16}
10
10
  s.default_executable = %q{pomo}
11
11
  s.description = %q{Pomodoro time management for the command-line}
12
12
  s.email = %q{tj@vision-media.ca}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pomo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - TJ Holowaychuk
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-10-15 00:00:00 -07:00
12
+ date: 2009-10-16 00:00:00 -07:00
13
13
  default_executable: pomo
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency